Hello,
On a fresh install of 18.9 Cert2 (Or the latest 19 if I recall the previous version I tried.
PJSIP fails to load properly. It seems that the new res_geolocation module fails to load. But I can't seem to figure out why. And being that it's a fairly new module (So it seems) google-fo isn't being very helpful. This is running on Debian 11 and a freshly compiled install with only "make samples" done to create the config files. Any help would be appreciated!
newasterisk*CLI> module load res_pjsip.so
Unable to load module res_pjsip.so
Command 'module load res_pjsip.so ' failed.
[Dec 5 15:26:18] ERROR[2420]: loader.c:283 module_load_error: res_pjsip loaded before dependency res_geolocation!
newasterisk*CLI> module load res_geolocation.so
Unable to load module res_geolocation.so
Command 'module load res_geolocation.so ' failed.
[Dec 5 15:26:28] WARNING[2420]: config_options.c:1102 xmldoc_update_config_type: Cannot update type 'location' in module 'res_geolocation' because it has no existing documentation!
[Dec 5 15:26:28] ERROR[2420]: res_geolocation/geoloc_config.c:672 geoloc_config_load: Failed to register geoloc location object with sorcery
This would mean that the documentation isn't in the core-en_US.xml file, normally located in the /var/lib/asterisk/documentation directory. I just built 18.9-cert3 and it is definitely there for me:
jcolp@kappa:~/development/asterisk/public [certified/18.9-cert3| …2⚑ 4]> grep "geolocation" /var/lib/asterisk/documentation/core-en_US.xml
<use type="module">res_geolocation</use>
<module language="en_US" name="res_pjsip_geolocation">
<depend>res_geolocation</depend>
<module language="en_US" name="res_geolocation">
<configInfo name="res_geolocation" language="en_US">
<configFile name="geolocation.conf">
<xi:include xpointer="xpointer(/docs/configInfo[@name='res_geolocation']/configFile[@name='geolocation.conf']/configObject[@name='location']/configOption[@name='format'])"/>
<xi:include xpointer="xpointer(/docs/configInfo[@name='res_geolocation']/configFile[@name='geolocation.conf']/configObject[@name='location']/configOption[@name='location_info'])"/>
<xi:include xpointer="xpointer(/docs/configInfo[@name='res_geolocation']/configFile[@name='geolocation.conf']/configObject[@name='location']/configOption[@name='confidence'])"/>
<xi:include xpointer="xpointer(/docs/configInfo[@name='res_geolocation']/configFile[@name='geolocation.conf']/configObject[@name='location']/configOption[@name='location_source'])"/>
<xi:include xpointer="xpointer(/docs/configInfo[@name='res_geolocation']/configFile[@name='geolocation.conf']/configObject[@name='location']/configOption[@name='method'])"/>
Get or Set a field in a geolocation profile
This geolocation profile will be applied to all calls received
This geolocation profile will be applied to all calls received
And the module loads fine:
*CLI> module show like geolocation
Module Description Use Count Status Support Level
res_geolocation.so res_geolocation Module for Asterisk 2 Running core
res_pjsip_geolocation.so res_pjsip_geolocation Module for Asteris 0 Running core
2 modules loaded
Did you build Asterisk putting things in other directory locations? Is there an old core-en_US.xml file somewhere?
--
Joshua C. Colp
Asterisk Project Lead
Sangoma Technologies