Group PJSIP_URI_GENERIC

group PJSIP_URI_GENERIC

Generic representation for all types of URI.

Defines

PJSIP_URI_SCHEME_IS_SIP(url)

This macro checks that the URL is a “sip:” URL.

Return

non-zero if TRUE.

Parameters
  • url: The URL (pointer to)

PJSIP_URI_SCHEME_IS_SIPS(url)

This macro checks that the URL is a “sips:” URL (not SIP).

Return

non-zero if TRUE.

Parameters
  • url: The URL (pointer to)

PJSIP_URI_SCHEME_IS_TEL(url)

This macro checks that the URL is a “tel:” URL.

Return

non-zero if TRUE.

Parameters
  • url: The URL (pointer to)

Enums

enum pjsip_uri_context_e

URI context.

Values:

PJSIP_URI_IN_REQ_URI

The URI is in Request URI.

PJSIP_URI_IN_FROMTO_HDR

The URI is in From/To header.

PJSIP_URI_IN_CONTACT_HDR

The URI is in Contact header.

PJSIP_URI_IN_ROUTING_HDR

The URI is in Route/Record-Route header.

PJSIP_URI_IN_OTHER

Other context (web page, business card, etc.)

Functions

const pj_str_t *pjsip_uri_get_scheme(const void *uri)

Generic function to get the URI scheme.

Return

the URI scheme.

Parameters
  • uri: the URI object.

void *pjsip_uri_get_uri(const void *uri)

Generic function to get the URI object contained by this URI, or the URI itself if it doesn’t contain another URI.

Return

the URI.

Parameters
  • uri: the URI.

pj_status_t pjsip_uri_cmp(pjsip_uri_context_e context, const void *uri1, const void *uri2)

Generic function to compare two URIs.

Return

PJ_SUCCESS if equal, or otherwise the error status which should point to the mismatch part.

Parameters
  • context: Comparison context.

  • uri1: The first URI.

  • uri2: The second URI.

int pjsip_uri_print(pjsip_uri_context_e context, const void *uri, char *buf, pj_size_t size)

Generic function to print an URI object.

Return

Length printed if successful, negative value if failed.

Parameters
  • context: Print context.

  • uri: The URI to print.

  • buf: The buffer.

  • size: Size of the buffer.

void *pjsip_uri_clone(pj_pool_t *pool, const void *uri)

Generic function to clone an URI object.

Return

New URI.

Parameters
  • pool: Pool.

  • uri: URI to clone.

struct pjsip_uri_vptr
#include <sip_uri.h>

URI ‘virtual’ function table. All types of URI in this library (such as sip:, sips:, tel:, and name-addr) will have pointer to this table as their first struct member. This table provides polimorphic behaviour to the URI.

struct pjsip_uri
#include <sip_uri.h>

The declaration of ‘base class’ for all URI scheme.

Forward declaration for URI (sip_uri.h).