[Home]

Summary:ASTERISK-24725: WebSockets uses first loaded SIP module(chan_sip, pjsip) as SIP provider for WebRTC
Reporter:Aleksei Kulakov (Each)Labels:
Date Opened:2015-01-27 02:26:14.000-0600Date Closed:2015-01-27 05:38:58.000-0600
Priority:MajorRegression?
Status:Closed/CompleteComponents:Resources/res_http_websocket Resources/res_pjsip_transport_websocket
Versions:12.4.0 13.1.0 Frequency of
Occurrence
Constant
Related
Issues:
duplicatesASTERISK-24106 WebSockets Automatically decides what driver it will use
Environment:Ubuntu 14.04, Asterisk 13.1.0, pjproject(github.com/asterisk/pjproject 21/jan/2015)Attachments:
Description:When using both chan_sip(for everything except for WebRTC) and PjSIP(for WebRTC only) there is no way to customize which one would be used as SIP provider for WebRTC.

In my case chan_sip is alway selected by default, which is clearly not what i want. In this case module res_pjsip_transport_websocket displayed as {{'Not running'}} in {{'module show'}} output.

Modifying modules.conf preload section is only way to workaround this behavior that i've found.

There it is:
{code:title=modules.conf|borderStyle=solid}
[modules]
autoload=yes
preload => res_sorcery_astdb.so
preload => res_sorcery_memory.so
preload => res_sorcery_config.so

preload => res_http_websocket.so

preload => res_pjsip.so
preload => res_pjsip_outbound_publish.so
preload => res_pjsip_pubsub.so
preload => res_pjsip_session.so
preload => res_pjsip_transport_websocket.so

;... remaining contents of default modules.conf
{code}

With this hack res_pjsip_transport_websocket registers itself earlier than chan_sip and thus making pjsip stack responsible for handling WebRTC connecitons.

*We need some other way configure this without messing with modules.conf * Some config option for both chan_sip & pjsip that disables registration in res_http_websocket or WS/WSS url customisation option would be ok

This bug is sibling of [ASTERISK-24106]

Comments: