ppsip 使用文档.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ppsip 使用文档

ppsip 使用文档 ppsip 使用文档 1 1. 简介 1 2. 数据结构 1 2.1 sip注册信息的结构 1 2.2 语音编码信息的结构 2 2.3 总共支持的编码信息的结构 2 2.4 .注册时候要传给SipRegister的结构 2 3. 函数 2 3.1 Sip 相关的函数 3 3.2 音频设备相关函数 5 1. 简介 ppsip是一个构建于osip2 + exosip2 + ortp + mediastreamer2 + speex之上的高层sip库, 它高效,稳定,简单而又不缺乏灵活性,你可以使用它在几分钟之内构建出一个可以在Win2K/WinXP/Vista/WinCE平台运行的Sip User Agent. 该文档的具体用法可以参考SipAgentDemo. 2. 数据结构 2.1 sip注册信息的结构 typedef struct _user_sip_configure { char szPhoneNumber[CONF_ITEM_LEN]; // 号码 char szUserName[CONF_ITEM_LEN]; //用户名,可以和号码相同 char szPassword[CONF_ITEM_LEN];//密码 char szDomain[CONF_ITEM_LEN];//Domain,可以和Proxy相同 char szProxy[CONF_ITEM_LEN];//注册的服务器地址 char szStun[CONF_ITEM_LEN];// stun服务器地址 int iSipPort; //本地的 Sip使用的端口 int iRTPProt;//本地的 RTP 使用的端口 bool bUseStun; //是否使用stun bool bAutoRegister;// 是否自动注册,建议值设为1 }SipUserConfig; 2.2 语音编码信息的结构 typedef struct _codec_info { int iPayLoadType; // 编码的PayLoadType int iSampleRate; //采样率 char szName[32];// 名字,也就是MIME }CodecInfo; 比如g711 alaw 为{8, 8000, “Alaw”}, 2.3 总共支持的编码信息的结构 typedef struct _support_codec { int iSupportCodecNumbers; CodecInfo CodecInfos[16];// }SipSupportCodec; ppsip暂时只支持 g711 alaw, g711 ulaw, g729, ,speex和四种.,所以你传进去的结构只能少于这四种,多于则无效 2.4 .注册时候要传给SipRegister的结构 typedef struct _user_configure { SipSupportCodec SupportCodec; SipUserConfig SipConfig; }UserConfig; 3. 函数 函数总共分两部分,第一部分是建立一次sip呼叫所需要的函数,第二部分是音频设备相关的函数. 3.1 Sip 相关的函数 函数: void SipRegister(UserConfig* conf, void (CALLBACK* SipEvent)(int iLineNumber, int iEventType, WPARAM wParam, LPARAM lParam, void* pInstance), void* pAppInstance); 功能: 向sip服务器注册 参数: Conf: 注册信息,要仔细填写,否则会注册不成功 SipEvent: 回调函数,底层的信息会通过这个函数回传给上层 pAppInstance: 传给回调函数的参数 返回值: 无 函数: int SipDialCall(char* szDialNumber, int iAuidoIn, int iAudioOut) 功能: 主动发起一次呼叫 参数: szDialNumber: 被呼叫的号码 iAudioIn: 录音设备的id, 可以通过下面将要介绍的音频相关函数获得 iAudioOut:回放设备id,获得方法同上 返回值: 如果呼叫成功或是正在处理,则返回一个线路ID,这个ID值会在以后的函数中使用,必须保存, 如果出错,则返回-1. 函数: BOOL SipHangup(int iChoseLine); 功能: 根据当前的状态,可以是挂断正在进行的呼叫,拒绝接听或是放弃一次呼叫 参数: iChoseLine: 这个线路的ID值是调用SipDial得到或是调用S

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档