[pjsip] Using more than one ETH device

jorge.amador at withus.pt jorge.amador at withus.pt
Tue Nov 13 09:22:55 EST 2007


Hi Benny,

Thanks for the hint. I'll will try to use the lower level APIs. Best regards,

Jorge Amador

Quoting Benny Prijono <bennylp at pjsip.org>:

> Ouch, you're right, it's not implemented yet. Sorry! But anyway this
> function does not solve your requirement, so I don't think it
> matters too much.
>
> In summary, currently we can't assign specific RTP transports to a
> specific account with pjsua-lib. Supporting this will require quite
> major modifications in the API, for example to move media transport
> config (and perhaps STUN settings) to account config. Maybe I will
> consider doing this in the next major release, but for sure this
> will break existing applications, so I'd rather not do this unless
> there are really important reasons to do it.
>
> So if you can't accept this limitation, my only suggestion for now
> is to go with using the lower level APIs (pjsip and pjmedia).
>
> cheers,
>   -benny
>
> jorge.amador at withus.pt wrote:
>> Hi Benny,
>>
>> I've followed your suggestion but after trying to compile the project I
>> get this error message:
>>
>> output/pjsua-i686-pc-linux-gnu/pjsua_app.o: In function `app_init':
>> output/pjsua-i686-pc-linux-gnu/pjsua_app.o(.text+0x6303): undefined
>> reference to `pjsua_media_transports_attach'
>>
>> I've checked the code and I only found the declaration of the function
>> pjsua_media_transports_attach() in the file pjsua.h. It seems to me that
>> this function is declared but not implemented in the code. Am I missing
>> something? Thanks,
>>
>> Jorge Amador
>>
>>
>> Quoting Benny Prijono <bennylp at pjsip.org>:
>>
>>> jorge.amador at withus.pt wrote:
>>>> Hi Benny,
>>>>
>>>> I've changed to 0.8.0 version. Now I can bind an account to a specific
>>>> transport (in this case 2 different ethernet devices) but after checking
>>>> with ethereal I noticed that rtp transport is binded to only one off the
>>>> ethernet devices. I tried to create 2 rtp transports, one for each
>>>> ethernet device but failed with this error:
>>>>
>>>>  20:11:07.341  pjsua_media.c Unable to create RTP/RTCP socket: Cannot
>>>> assign requested address [status=120099]
>>>>
>>>> Is it possible to create 2 rtp transports with the same application?
>>>> Thanks and best regards
>>>
>>> It is possible to use multiple RTP transports of course, since
>>> pjsua-lib supports multiple calls. Binding RTP transports to one
>>> specific interface is also supported.
>>>
>>> Binding different RTP transports to different IP interface can also
>>> be done, but this requires application to pre-create the RTP
>>> transports itself, and give it to pjsua-lib by calling
>>> pjsua_media_transports_attach()
>>>
>>> But what is not supported is, assigning specific RTP transport to
>>> specific accounts. Currently each RTP transport will be assigned to
>>> each call instance in the call array during pjsua-lib
>>> initialization, and there's no association between RTP transport and
>>> the account (since RTP transport can be used by any accounts).
>>>
>>> So it's not possible to create specific RTP transport for specific
>>> account.
>>>
>>>   -benny
>
>
> _______________________________________________
> Visit our blog: http://blog.pjsip.org
>
> pjsip mailing list
> pjsip at lists.pjsip.org
> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
>






More information about the pjsip mailing list