Search code examples
sippjsipsdp

pjsua custom sdp


I'm using pjsua to create simple SIP UA. I need to insert custom body (SDP) in outgoing INVITE requests. As far as I know, pjsua does not support custom SDP, and I need to use more low-level API to do it. But for now I have to find any rude trick/hack/hotfix to insert custom SDP in pjsua-generated INVITE.

So that's the question: how could I do it?


Solution

  • The seemingly simple solution is to modify the pjsua source. The key is to create a pjmedia_session out of your custom SDP on code paths of both incoming and outgoing calls. You wanna look into pjsua_call_make_call(), pjsua_call_answer() and pjsua_call_get_media_session(). If my memory serves me right, SDP is not processed until a call is answered.

    You will still have to learn the core pjsip library. After all, pjsua uses it. This solution is not exactly simple but fits the general definition of a hack. :)