Radvision Sip Stack 学习笔记
文章平均质量分 84
技术人生LJF
空杯心态
展开
-
RvSIP接收注册应答流程
//在StackConstructTransportModule模块构造时,根据本地UDP列表生成了一个SOCKET对//象,同时放入FD对象中,并加入到了select引擎中,其中处理回调函数为// TransportUdpEventCallback,之后select引擎由应用层一特定线程调用,当收到网络侧数//据包,select引擎触发,最终调用TransportUdpEventCa原创 2013-09-22 00:42:56 · 1510 阅读 · 0 评论 -
Rv内存池分配图
http://www.balupu.com/u/2138851744http://www.balupu.com/u/2138852484http://www.balupu.com/u/2138851988http://www.balupu.com/u/2138851524http://www.balupu.com/u/2138852724http://www.balupu.co原创 2013-09-22 00:50:12 · 1083 阅读 · 0 评论 -
RvSIP初始化流程
ssmu_init_sip_stack p_rv = &ssmu_mcb.rv_ctrl; //中间层配置初始化 ssmu_rv_cfg_mid (p_rv); p_rv->mid_cfg.maxUserFd = 1; //为上层使用中间层的FD分配一块内存池成员原创 2013-09-22 00:23:52 · 2655 阅读 · 0 评论 -
RvSIP发送注册包及重传流程
//发送注册包AppSimpleRegister //创建一个注册客户端对象 RvSipRegClientMgrCreateRegClient(g_hRegClientMgr,NULL,&hRegClient); //分配一个注册客户端对象 RLIST_InsertTail(pRegClientMgr->hRegClientListPool, pRegClientMgr->原创 2013-09-22 00:41:10 · 2030 阅读 · 0 评论 -
RV日志流程分析
一、VTP日志配置ssmu_rv_cfg_log RvInt32 iFilters = RVSIP_LOG_INFO_FILTER | RVSIP_LOG_ERROR_FILTER | RVSIP_LOG_EXCEP_FILTER | RVSI原创 2013-09-22 00:43:55 · 1665 阅读 · 0 评论 -
StackConstructModules流程
StackConstructModules(&internalCfgStruct, pStackMgr); //遍历所有扩展支持表,根据结果设置是否支持100rel、sec-agree for(;iextensionListSize;i++) if (strcmp(pStackMgr->supportedExtensionList[i],"100rel")==0) b100r原创 2013-09-22 00:39:44 · 1811 阅读 · 0 评论 -
RvSIP 网络接口监控功能分析
备注:在Ver 6.5.0.14版本上含有此功能,在Ver 5.0.0.29版本上没有此功能,其它版本未知。初始化//初始配全局配置结构RvSipStackInitCfg(sizeof(RvSipStackCfg), p_stack_cfg); //标记使用网络接口变更功能 internalStackCfg.bHandleNetworkInterfaceChange = RV_TRUE原创 2014-07-18 16:50:16 · 1418 阅读 · 0 评论 -
Rv Refer订阅相关处理
一、 发送Refer请求//创建订阅对象RvSipSubsMgrCreateSubscription(g_hSubsMgr,hCallLeg,NULL,&hSubs) //如果当前订阅对象是关联对话框的,则需要校验此对话框必须是一个早期对话框,或 //者是已完成的对话框,即有to-tag标记 if(hCallLeg != NULL) rv = RvSipCallLegGe原创 2014-03-07 23:39:51 · 1368 阅读 · 0 评论 -
RvSIP 会话刷新分析
一、对话框创建RvSipCallLegMgrCreateCallLeg CallLegMgrCreateCallLeg CallLegInitialize //对话框管理对象的eSessiontimeStatus状态,在进行协议栈配置初始化时, //如果supportedExtensionList列表含有“timer”字符,则设置为 // RVSIP_CALL_LEG_S原创 2013-12-31 09:45:28 · 1629 阅读 · 0 评论 -
RvSIP 可靠性临时响应的分析
一、各模块初始化//对话框管理对象初始化SipCallLegMgrConstruct //当前上层配置manualPrack为FALSE,由rv stack自己管理PRACK pMgr->manualPrack = pCfg->manualPrack;//事务管理对象初始化TransactionMgrInitialize //当前上层配置manualPrack为FALSE,由rv原创 2013-12-31 09:48:36 · 1299 阅读 · 0 评论 -
RvSIP Outband域名地址解析分析
以注册报文分析outbound域名地址解析流程一、设置域名到注册客户端所属的事务客户端对象中//注册客户端对象设置outbound域名RvSipRegClientSetOutboundHostName //事件客户端对象设置outbound域名SipTranscClientSetOutboundHostName(&pRegClient->transcClient,strOutboundH原创 2013-12-10 17:16:48 · 2363 阅读 · 0 评论 -
Rv定时器实现
一、模块初始化1、//中间层管理对象构造RvSipMidConstruct(sizeof(midCfg), &midCfg, &g_hMidMgr); //中间层管理对象资源分配 MidMgrAllocateResources(pMidMgr,&internalCfg); //构造用户定时器列表 pMidMgr->userTimerPool = RLIST_PoolLi原创 2013-09-22 00:45:07 · 1583 阅读 · 3 评论