我正在使用pjsua创建简单的SIP UA。我需要在传出的INVITE请求中插入自定义正文(SDP)。据我所知,pjsua不支持自定义SDP,我需要使用更多的底层API来实现。但现在我必须找到任何粗鲁的技巧/hack/hotfix来在pjsua生成的INVITE中插入自定义SDP。
所以这就是问题所在:我该怎么做?
发布于 2012-08-11 09:52:19
看似简单的解决方案是修改pjsua源代码。关键是在传入和传出呼叫的代码路径上使用您的自定义SDP创建pjmedia_session。你想调查一下pjsua_call_make_call(),pjsua_call_answer()和pjsua_call_get_media_session()。如果我没记错,在应答呼叫之前不会处理SDP。
您仍然需要学习核心pjsip库。毕竟,pjsua使用它。这个解决方案并不完全简单,但符合黑客的一般定义。:)
发布于 2012-08-13 02:18:38
修改请求的SDP body有不同的方式:
pjsip_multipart_part (特别是在body字段中),并将其添加到pjsup_msg_data对象内的multipart_parts字段中。
希望这能有所帮助。
发布于 2018-10-25 15:05:44
如果使用PJSUA2,可以使用onCallSdpCreated()和on_call_sdp_created()设置自定义sdp。
https://stackoverflow.com/questions/11880030
复制相似问题