Liblinphone 3.9.1中文--Modules--SIP address parser API
来源:互联网 发布:软件专利侵权案例 编辑:程序博客网 时间:2024/06/16 05:18
SIP address parser API SIP地址解析器API
自定义
typedef enum _LinphoneTransportType LinphoneTransportType
typedef struct SalAddress LinphoneAddress
枚举类型
enum _LinphoneTransportType{
LinphoneTransportUdp,
LinphoneTransportTcp,
LinphoneTransportTls,
LinphoneTransportDtls
}
函数类型
LinphoneAddress * linphone_address_new (const char *addr) LinphoneAddress * linphone_address_clone (const LinphoneAddress *addr) LinphoneAddress * linphone_address_ref (LinphoneAddress *addr) void linphone_address_unref (LinphoneAddress *addr) const char * linphone_address_get_scheme (const LinphoneAddress*u) const char * linphone_address_get_display_name (constLinphoneAddress *u) const char * linphone_address_get_username (const LinphoneAddress*u) const char * linphone_address_get_domain (const LinphoneAddress*u) int linphone_address_set_display_name (LinphoneAddress*u, const char *display_name) int linphone_address_set_username (LinphoneAddress *uri, const char *username) int linphone_address_set_domain (LinphoneAddress *uri, const char *host) int linphone_address_set_port (LinphoneAddress *uri, int port) int linphone_address_set_transport (LinphoneAddress*uri, LinphoneTransportType tp) LinphoneTransportType linphone_address_get_transport (constLinphoneAddress *uri) void linphone_address_set_method_param (LinphoneAddress*addr, const char *method) const char * linphone_address_get_method_param (constLinphoneAddress *addr) void linphone_address_clean (LinphoneAddress *uri) char * linphone_address_as_string (const LinphoneAddress *u) char * linphone_address_as_string_uri_only (constLinphoneAddress *u) bool_t linphone_address_is_secure (const LinphoneAddress*uri) bool_t linphone_address_get_secure (const LinphoneAddress*uri) void linphone_address_set_secure (LinphoneAddress *addr, bool_t enabled) bool_t linphone_address_is_sip (const LinphoneAddress *uri) bool_t linphone_address_weak_equal (const LinphoneAddress*a1, const LinphoneAddress *a2) bool_t linphone_address_equal (const LinphoneAddress *a1, const LinphoneAddress *a2) void linphone_address_destroy (LinphoneAddress *u) int linphone_address_get_port (const LinphoneAddress *u) void linphone_address_set_password (LinphoneAddress*addr, const char *passwd) const char * linphone_address_get_password (const LinphoneAddress*addr) void linphone_address_set_header (LinphoneAddress *addr, const char *header_name, const char *header_value) LinphoneAddress * linphone_core_create_address (LinphoneCore *lc, const char *address)
详细描述
这个api用于操作SIP地址(‘from'或者‘to’)
自定义文档
typedef struct SalAddress LinphoneAddress
代表一个SIP地址
LinphoneAddress是一个不透明的对象,用来表示一个SIP地址,即SIP的‘from’和‘to'消息头的内容.一个SIP地址由显示名字,用户名,域名,端口,和不同的uri头(如tags)组成.它类似‘Alice<sip:alice@example.net>’.LinphoneAddress有提取和操作地址的所有部分.当地址部分为空时(例如username为空).访问器方法饭NULL.
typedef enum _LinphoneTransportType LinphoneTransportType
传输类型
枚举类型文档
enum _LinphoneTransportType
枚举 描述传输类型
函数文档
char* linphone_address_as_string(const LinphoneAddress* u)
返回地址的字符串形式.返回的char*必须有应用程序释放.用ms_free().
char* linphone_address_as_string_uri_only(const LinphoneAddress* u)
只返回SIP URI的字符串,显示名字被移除.返回的char*必须由应用程序释放.用ms_free().
void linphone_address_clean(LinphoneAddress* uri)
移除地址的 tags和uri头以便可以显示给用户
LinphoneAddress* linphone_address_clone(const LinphoneAddress* addr)
克隆一个LinphoneAddress对象
void linphone_address_destroy(LinphoneAddress* u)
销毁一个LinphoneAddress对象(实际上是调用了linphone_address_unref())
已弃用:
用linphone_address_unref()代替
bool_t linphone_address_equal(const LinphoneAddress* a1, const LinphoneAddress* a2)
比较两个LinphoneAddress考虑tags和headers在内
参数
[in] a1 LinphoneAddress对象
[in] a2 LinphoneAddress对象
返回
如果两个LinphoneAddress对象相等返回TRUE.
另参见
linphone_address_weak_equal()
const char* linphone_address_get_dispkay_name(const LinphoneAddress* u)
返回显示名字
const char* linphone_address_get_domain(const LinphoneAddress* u)
返回域名
const char* linphone_address_get_method_param(const LinphoneAddress* addr)
获取方法参数的值
const char* linphone_address_get_password(const LinphoneAddress* addr)
获取地址编码的密码.它同于基本身份验证(不推荐)
参数
addr LinphoneAddress对象
返回
如果有返回密码,否则返回NULL
int linphone_address_get_port(const LinphoneAddress* u)
获取端口.如果没有就返回0
const char* linphone_address_get_scheme(const LinphoneAddress* u)
返回地址方案,通常为“sip”
bool_t linphone_address_get_secure(const LinphoneAddress* uri)
如果地址指向一个安全的选址(sips)返回true.
LinphoneTransportType linphone_address_get_transport(const LinphoneAddress* uri)
获取传输类型
const char* linphone_address_get_username(const LinphoneAddress* u)
返回username
bool_t linphone_address_is_secure(const LinphoneAddress* uri)
已弃用:
用linphone_address_get_secure()代替
bool_t linphone_address_is_sip(const LinphoneAddress* uri)
如果地址是一个可路由的sip地址返回true.
LinphoneAddress* linphone_address_new(const char* addr)
通过解析用户提供的地址来构造一个LinphoneAddress对象,该地址以字符串表示.
LinphoneAddress* linphone_address_ref(LinphoneAddress* addr)
增加LinphoneAddress对象的引用计数
int linphone_address_set_display_name(LinphoneAddress* u, const char* display_name)
设置显示名字
int linphone_address_set_domain(LinphoneAddress* uri, const char* host)
设置域名
void linphone_address_set_header(LinphoneAddress* addr, const char* header_name, const char* header_value)
设置一个header到地址.header用“?”与地址隔离,例如<sip:test#linphone.org?SomeHeader=SomeValue>.
参数
addr LinphoneAddress对象
header_name 头的名字
header_value 头的值
void linphone_address_set_method_param(LinphoneAddress* addr, const char* method)
设置方法参数的值
void linphone_address_set_password(LinphoneAddress* addr, const char* passwd)
设置地址编码的密码.它用于基本身份验证(不推荐)
参数
addr LinphoneAddress对象
passwd 设置的密码
int linphone_address_set_port(LinphoneAddress* uri, int port)
设置端口
void linphone_address_set_secure(LinphoneAddress* addr, bool_t enabled)
使地址指向一个安全的地址(sips方案)
参数
[in] addr LinphoneAddress对象
[in] enabled 如果请求的地址是安全的返回TRUE
int linphone_address_set_transport(LinphoneAddress* uri, LinphoneTransportType tp)
设置用户名
void linphone_address_unref(LinphoneAddress* addr)
减少LinphoneAddress对象的引用计数.当降到0时,释放对象内存
bool_t linphone_address_weak_equal(const LinphoneAddress* a1, const LinphoneAddress* a2)
比较两个LinphoneAddress忽略tags和headers,基本上只是域名、用户名和端口
参数
[in] a1 LinphoneAddress对象
[in] a2 LinphoneAddress对象
返回
如果LinphoneAddress对象相等返回TRUE
参见
linphone_address_equal()
LinphoneAddress* linphone_core_create_address(LinphoneCore* lc, const char* address)
创建一个LinphoneAddress对象,通过解析用户提供的地址字符串
参数
[in] lc LinphoneCore对象
[in] address 地址字符串
返回
新建的LinphoneAddress对象
- Liblinphone 3.9.1中文--Modules--SIP address parser API
- Liblinphone 3.9.1中文--Modules--Initializing liblinphone
- Liblinphone 3.9.1中文--Modules
- Liblinphone 3.9.1中文--Modules--Managing proxies
- Liblinphone 3.9.1中文--Modules--Tutorials:
- Liblinphone 3.9.1中文--Modules--Placing and receiving calls
- Liblinphone 3.9.1中文--Modules--Controlling media parameters
- Liblinphone 3.9.1中文--Modules--Controlling network parameters (ports, mtu...)
- Liblinphone 3.9.1中文--Modules--Managing authentication: userid and passwords
- Liblinphone 3.9.1中文--Modules--Chat room and Messaging
- Liblinphone 3.9.1中文--Modules--Managing call logs
- Liblinphone 3.9.1中文--Modules--Making an audio conference.
- Liblinphone 3.9.1中文--Modules--Managing generic subscriptions and publishes
- Liblinphone 3.9.1中文--Modules--Obtaining information about a running call: sound volumes, quality in
- Liblinphone 3.9.1中文--Modules--Managing Buddies and buddy list and presence
- Liblinphone 3.9.1中文--Modules--Miscenalleous: logs, version strings, config storage
- Liblinphone 3.9.1中文--Main Page
- Liblinphone 3.9.1中文--Related Pages
- LeetCode 392 Is Subsequence
- 【mysql】初识mysql
- 内核定时器和延时
- GSM模块_GSM设备和网络错误代码
- Android中的Audio播放:控制Audio输出通道切换
- Liblinphone 3.9.1中文--Modules--SIP address parser API
- 初步集成百度地图
- 浅谈实例ajax
- 使用DES数据加密与解密的java代码
- ELK 时间问题
- 第十一章上机3
- java练习--奖客富翁系统
- jsp回显数据时,select标签默认被选中和格式化显示日期的问题
- Java静态域、静态常量和静态方法