Unable to get ANYTHING to register to pjsip

So I thought it was about time I upgraded my Asterisk server from Ubuntu 16.04 to 22.04 and Asterisk 18 built from source.

In the process, I also though, I might aswell migrate from “chan_sip” which works perfectly with the 2 devices I have in my office (and my ATA to my copper landline) to the newer “chan_pjsip”

The upgrade has all worked well, everything is installed, but it doesn’t matter what I try I simply cannot get either my cisco desk phone (Cisco 7940) or my PC Softphone (Microsip Latest Version) to find the end points configured for them. (I haven’t even tried the ATA yet)

My set up is as follows:

Network is 192.168.0.0/17 
Asterisk Server is at 192.168.19.17
Cisco Desk phone is at 192.168.17.51
PC with softphone is at 192.168.17.100

Versions are as follows

telephony*CLI> core show version
Asterisk 18.13.0 built by shawty @ telephony on a x86_64 running Linux on 2022-07-28 16:44:23 UTC
telephony*CLI> pjsip show version
PJPROJECT version currently running against: 2.12

my asterisk was built a few months ago and i’ve not pulled the latest sources yet, but it’s working fine for everything else inc chan_sip when configured for the exact 2 same devices. I also have a second asterisk box, my prod server running using the same build under chan_sip without any problems, so I’m pretty confident the build is a good build.

I’ve followed a ton of videos, read all the pjsip material I can find in the asterisk docs, read dozens of tutorials, and read practically every thread in the forum that mentions pjsip and not finding endpoints, I honestly cannot see anything that I’m doing wrong.

Iv’e even added the “force_rport=no” directive on the cisco, and (at least on the softphone) included an “identity” object, and nothing I do seems to make any difference.

I’ve even taken my working “chan_sip” configuration and used the python conversion script, and still no dice, so final request for help I’m asking here.

My asterisk console is just full of these messages:

[Mar  2 23:03:11] NOTICE[18192]: res_pjsip/pjsip_distributor.c:676 log_failed_request: Request 'REGISTER' from '<sip:101@192.168.19.17>' failed for '192.168.17.51:50631' (callid: 000ab8cd-75ee0003-77e5091e-6a84e35c@192.168.17.51) - No matching endpoint found
[Mar  2 23:03:11] WARNING[18192]: res_pjsip.c:165 ast_sip_requires_authentication: No SIP authenticator registered. Assuming authentication is not required
telephony*CLI>
[Mar  2 23:04:11] NOTICE[18198]: res_pjsip/pjsip_distributor.c:676 log_failed_request: Request 'REGISTER' from '<sip:101@192.168.19.17>' failed for '192.168.17.51:50631' (callid: 000ab8cd-75ee0003-77e5091e-6a84e35c@192.168.17.51) - No matching endpoint found
[Mar  2 23:04:11] WARNING[18198]: res_pjsip.c:165 ast_sip_requires_authentication: No SIP authenticator registered. Assuming authentication is not required
[Mar  2 23:05:11] NOTICE[18203]: res_pjsip/pjsip_distributor.c:676 log_failed_request: Request 'REGISTER' from '<sip:101@192.168.19.17>' failed for '192.168.17.51:50631' (callid: 000ab8cd-75ee0003-77e5091e-6a84e35c@192.168.17.51) - No matching endpoint found
[Mar  2 23:05:11] WARNING[18203]: res_pjsip.c:165 ast_sip_requires_authentication: No SIP authenticator registered. Assuming authentication is not required
[Mar  2 23:06:11] NOTICE[18208]: res_pjsip/pjsip_distributor.c:676 log_failed_request: Request 'REGISTER' from '<sip:101@192.168.19.17>' failed for '192.168.17.51:50631' (callid: 000ab8cd-75ee0003-77e5091e-6a84e35c@192.168.17.51) - No matching endpoint found
[Mar  2 23:06:11] WARNING[18208]: res_pjsip.c:165 ast_sip_requires_authentication: No SIP authenticator registered. Assuming authentication is not required
[Mar  2 23:07:11] NOTICE[18213]: res_pjsip/pjsip_distributor.c:676 log_failed_request: Request 'REGISTER' from '<sip:101@192.168.19.17>' failed for '192.168.17.51:50631' (callid: 000ab8cd-75ee0003-77e5091e-6a84e35c@192.168.17.51) - No matching endpoint found
[Mar  2 23:07:11] WARNING[18213]: res_pjsip.c:165 ast_sip_requires_authentication: No SIP authenticator registered. Assuming authentication is not required
[Mar  2 23:08:12] NOTICE[18218]: res_pjsip/pjsip_distributor.c:676 log_failed_request: Request 'REGISTER' from '<sip:101@192.168.19.17>' failed for '192.168.17.51:50631' (callid: 000ab8cd-75ee0003-77e5091e-6a84e35c@192.168.17.51) - No matching endpoint found
[Mar  2 23:08:12] WARNING[18218]: res_pjsip.c:165 ast_sip_requires_authentication: No SIP authenticator registered. Assuming authentication is not required
[Mar  2 23:09:12] NOTICE[18223]: res_pjsip/pjsip_distributor.c:676 log_failed_request: Request 'REGISTER' from '<sip:101@192.168.19.17>' failed for '192.168.17.51:50631' (callid: 000ab8cd-75ee0003-77e5091e-6a84e35c@192.168.17.51) - No matching endpoint found
[Mar  2 23:09:12] WARNING[18223]: res_pjsip.c:165 ast_sip_requires_authentication: No SIP authenticator registered. Assuming authentication is not required
[Mar  2 23:10:12] NOTICE[18232]: res_pjsip/pjsip_distributor.c:676 log_failed_request: Request 'REGISTER' from '<sip:101@192.168.19.17>' failed for '192.168.17.51:50631' (callid: 000ab8cd-75ee0003-77e5091e-6a84e35c@192.168.17.51) - No matching endpoint found
[Mar  2 23:10:12] WARNING[18232]: res_pjsip.c:165 ast_sip_requires_authentication: No SIP authenticator registered. Assuming authentication is not required

[Mar  2 23:30:34] NOTICE[18289]: res_pjsip/pjsip_distributor.c:676 log_failed_request: Request 'REGISTER' from '"103" <sip:103@192.168.19.17>' failed for '192.168.17.100:65297' (callid: 84e6cb9d4cd542fdadae24e39a060b16) - No matching endpoint found
[Mar  2 23:30:34] WARNING[18289]: res_pjsip.c:165 ast_sip_requires_authentication: No SIP authenticator registered. Assuming authentication is not required
[Mar  2 23:31:14] NOTICE[18289]: res_pjsip/pjsip_distributor.c:676 log_failed_request: Request 'REGISTER' from '<sip:101@192.168.19.17>' failed for '192.168.17.51:50631' (callid: 000ab8cd-75ee0003-77e5091e-6a84e35c@192.168.17.51) - No matching endpoint found
[Mar  2 23:31:14] WARNING[18289]: res_pjsip.c:165 ast_sip_requires_authentication: No SIP authenticator registered. Assuming authentication is not required
[Mar  2 23:31:40] NOTICE[18289]: res_pjsip/pjsip_distributor.c:676 log_failed_request: Request 'REGISTER' from '"103" <sip:103@192.168.19.17>' failed for '192.168.17.100:65297' (callid: 283dff1090024e3fb637651370e386c1) - No matching endpoint found
[Mar  2 23:31:40] WARNING[18289]: res_pjsip.c:165 ast_sip_requires_authentication: No SIP authenticator registered. Assuming authentication is not required
[Mar  2 23:32:14] NOTICE[18289]: res_pjsip/pjsip_distributor.c:676 log_failed_request: Request 'REGISTER' from '<sip:101@192.168.19.17>' failed for '192.168.17.51:50631' (callid: 000ab8cd-75ee0003-77e5091e-6a84e35c@192.168.17.51) - No matching endpoint found
[Mar  2 23:32:14] WARNING[18289]: res_pjsip.c:165 ast_sip_requires_authentication: No SIP authenticator registered. Assuming authentication is not required
[Mar  2 23:32:47] NOTICE[18289]: res_pjsip/pjsip_distributor.c:676 log_failed_request: Request 'REGISTER' from '"103" <sip:103@192.168.19.17>' failed for '192.168.17.100:65297' (callid: c8eb77264a254f1388c3f4a6ce8ac52a) - No matching endpoint found
[Mar  2 23:32:47] WARNING[18289]: res_pjsip.c:165 ast_sip_requires_authentication: No SIP authenticator registered. Assuming authentication is not required
[Mar  2 23:33:14] NOTICE[18289]: res_pjsip/pjsip_distributor.c:676 log_failed_request: Request 'REGISTER' from '<sip:101@192.168.19.17>' failed for '192.168.17.51:50631' (callid: 000ab8cd-75ee0003-77e5091e-6a84e35c@192.168.17.51) - No matching endpoint found
[Mar  2 23:33:14] WARNING[18289]: res_pjsip.c:165 ast_sip_requires_authentication: No SIP authenticator registered. Assuming authentication is not required
telephony*CLI>

Device 101 is the Cisco 7640 desk phone and device 103 is the PC Softphone application.

The master pjsip.conf file in my asterisk directory is as follows:

#include "pjsipdevices/*.conf"

[global]
type = global
user_agent = Asterisk PBX (new)
debug = no

[lantransport]
type = transport
protocol = udp
bind = 0.0.0.0:5060
local_net = 192.168.0.0/255.255.128.0
;external_media_address = 88.97.38.99
;external_signaling_address = 88.97.38.99

and in the folder “pjsipdevices” I have one conf file for each device

101 - Cisco Desktop phone

[101]
type = aor
max_contacts = 1

[101]
type = auth
username = 101
password = PASSWORD

[101]
type = endpoint
context = internal
dtmf_mode = rfc4733
rtp_timeout = 120
callerid = "Office (Line 2)"
trust_id_inbound = yes
send_rpid = yes
language = en
auth = 101
outbound_auth = 101
aors = 101
force_rport = no

103 - PC Softphone application

[103]
type = aor
max_contacts = 1

[103]
type = auth
username = 103
password = PASSWORD

[103]
type = endpoint
context = internal
dtmf_mode = rfc4733
rtp_timeout = 120
callerid = "Peters PC"
trust_id_inbound = yes
send_rpid = yes
language = en
mailboxes = 1000@default
auth = 103
outbound_auth = 103
aors = 103

[103]
type=identify
endpoint = 103
match = 192.168.17.100

For completeness, here’s a screen shot of the softphone settings:

Those settings for the softphone work perfectly fine for the chan_sip implementation.

I can’t snapshot the settings for the cisco, as that’s going to take about 10 mobile phone photos, and a console grab of about 100 lines :slight_smile: The settings for the cisco device however also work with the equivalent chan_sip settings.

and the pjsip endpoints output from the asterisk console:

telephony*CLI> pjsip show endpoints

 Endpoint:  <Endpoint/CID.....................................>  <State.....>  <Channels.>
    I/OAuth:  <AuthId/UserName...........................................................>
        Aor:  <Aor............................................>  <MaxContact>
      Contact:  <Aor/ContactUri..........................> <Hash....> <Status> <RTT(ms)..>
  Transport:  <TransportId........>  <Type>  <cos>  <tos>  <BindAddress..................>
==========================================================================================

 Endpoint:  101                                                  Invalid       0 of inf
    OutAuth:  101/101
     InAuth:  101/101
        Aor:  101                                                1

 Endpoint:  103                                                  Invalid       0 of inf
    OutAuth:  103/103
     InAuth:  103/103
        Aor:  103                                                1


Objects found: 2

telephony*CLI> pjsip show aors

      Aor:  <Aor..............................................>  <MaxContact>
    Contact:  <Aor/ContactUri............................> <Hash....> <Status> <RTT(ms)..>
==========================================================================================

      Aor:  101                                                  1

      Aor:  103                                                  1


Objects found: 2

telephony*CLI> pjsip show auths

  I/OAuth:  <AuthId/UserName.............................................................>
==========================================================================================

     Auth:  101/101
     Auth:  103/103

Objects found: 2

telephony*CLI> pjsip show transports

Transport:  <TransportId........>  <Type>  <cos>  <tos>  <BindAddress....................>
==========================================================================================

Transport:  lantransport              udp      0      0  0.0.0.0:5060

Objects found: 1

Sleep time here in the UK now, but if anyone can see where I’m going wrong any pointers would be appreciated, I’m at a dead end now, and if I can’t resolve this, then I’m going back to the far simpler and working “chan_sip” setup.

Cheers
Shawty

What do you get when you issue a “pjsip reload” on the command line?

At first glance I didn’t see an error, but your aors are already not good. There should be some valid contact information. I expect that there is a subtle typo somewhere. Either in the config files, you haven’t posted, or I’ve overlooked somethine.

This is unlikely to ever be used.

This is weird, as the reason for using REGISTER is that you don’t know the address.

Although there are reasons to think it might work, this is not compatible with the documented format for this parameter.

However, I can’t see what is breaking it.

I actually get an error saying “No Such Command”

Connected to Asterisk 18.13.0 currently running on telephony (pid = 18094)
[Mar  3 08:48:48] NOTICE[22386]: res_pjsip/pjsip_distributor.c:676 log_failed_request: Request 'REGISTER' from '"103" <sip:103@192.168.19.17>' failed for '192.168.17.100:65297' (callid: 8ae2c6b2408449b18f5d7f1f435429fc) - No matching endpoint found
[Mar  3 08:48:48] WARNING[22386]: res_pjsip.c:165 ast_sip_requires_authentication: No SIP authenticator registered. Assuming authentication is not required
telephony*CLI> pjsip reload
No such command 'pjsip reload' (type 'core show help pjsip reload' for other possible commands)
[Mar  3 08:49:02] NOTICE[22386]: res_pjsip/pjsip_distributor.c:676 log_failed_request: Request 'REGISTER' from '<sip:101@192.168.19.17>' failed for '192.168.17.51:50631' (callid: 000ab8cd-75ee0003-77e5091e-6a84e35c@192.168.17.51) - No matching endpoint found
[Mar  3 08:49:02] WARNING[22386]: res_pjsip.c:165 ast_sip_requires_authentication: No SIP authenticator registered. Assuming authentication is not required
telephony*CLI>
telephony*CLI>
telephony*CLI>
telephony*CLI>
telephony*CLI>
telephony*CLI>
telephony*CLI>
telephony*CLI>
telephony*CLI>
telephony*CLI>
telephony*CLI>
telephony*CLI>
telephony*CLI>
telephony*CLI>
telephony*CLI>
telephony*CLI>
telephony*CLI>
telephony*CLI>
telephony*CLI>
telephony*CLI> pjsip reload
No such command 'pjsip reload' (type 'core show help pjsip reload' for other possible commands)
telephony*CLI>

Which I have to admit is wierd!

modules.conf - in case I’m missing anything

root@telephony:/etc/asterisk# cat modules.conf
[modules]
autoload = no

; This is a minimal module load. We are loading only the modules
; required for the Asterisk features used in the "Super Awesome
; Company" configuration.

; Applications

load = app_authenticate.so
load = app_bridgewait.so
load = app_dial.so
load = app_morsecode
load = app_playback.so
load = app_playtones.so
load = app_read
load = app_record
load = app_senddtmf
load = app_sms.so
load = app_stack.so
load = app_verbose.so
load = app_voicemail.so
load = app_directory.so
load = app_confbridge.so
load = app_queue.so
load = app_userevent.so

; Bridging

load = bridge_builtin_features.so
load = bridge_builtin_interval_features.so
load = bridge_holding.so
load = bridge_native_rtp.so
load = bridge_simple.so
load = bridge_softmix.so

; Call Detail Records

load = cdr_custom.so

; Channel Drivers

noload = chan_sip.so ; Remove the 'no' to enable (only one at a time)
load = chan_pjsip.so ; Remove the 'no' to enable (only one at a time)
load = chan_bridge_media.so

; Codecs

load = codec_gsm.so
load = codec_resample.so
load = codec_ulaw.so
load = codec_g722.so

; Formats

load = format_gsm.so
load = format_pcm.so
load = format_wav_gsm.so
load = format_wav.so

; Functions

load = func_callerid.so
load = func_cdr.so
load = func_pjsip_endpoint.so
load = func_sorcery.so
load = func_devstate.so
load = func_strings.so
load = func_vmfolders.so

; Core/PBX

load = pbx_config.so

; Resources

load = res_agi.so
load = res_ari.so
load = res_ari_applications.so
load = res_ari_asterisk.so
load = res_ari_bridges.so
load = res_ari_channels.so
load = res_ari_device_states.so
load = res_ari_endpoints.so
load = res_ari_events.so
noload = res_ari_mailboxes.so ; requires deps that need comedian mail to be unloaded
load = res_ari_model.so
load = res_ari_playbacks.so
load = res_ari_recordings.so
load = res_ari_sounds.so

load = res_http_websocket.so
load = res_musiconhold.so
noload = res_mwi_external ; cannot be loaded with commedian main standard VPS (Needed by ari mailbox)

load = res_pjproject.so

; All pjsip disabled for now until sip config is migrated
load = res_pjsip_acl.so
load = res_pjsip_authenticator_digest.so
load = res_pjsip_caller_id.so
load = res_pjsip_dialog_info_body_generator.so
load = res_pjsip_diversion.so
load = res_pjsip_dtmf_info.so
load = res_pjsip_endpoint_identifier_anonymous.so
load = res_pjsip_endpoint_identifier_ip.so
load = res_pjsip_endpoint_identifier_user.so
load = res_pjsip_exten_state.so
load = res_pjsip_header_funcs.so
load = res_pjsip_logger.so
load = res_pjsip_messaging.so
load = res_pjsip_mwi_body_generator.so
load = res_pjsip_mwi.so
load = res_pjsip_nat.so
load = res_pjsip_notify.so
load = res_pjsip_one_touch_record_info.so
load = res_pjsip_outbound_authenticator_digest.so
load = res_pjsip_outbound_publish.so
load = res_pjsip_outbound_registration.so
load = res_pjsip_path.so
load = res_pjsip_pidf_body_generator.so
load = res_pjsip_pidf_digium_body_supplement.so
load = res_pjsip_pidf_eyebeam_body_supplement.so
load = res_pjsip_publish_asterisk.so
load = res_pjsip_pubsub.so
load = res_pjsip_refer.so
load = res_pjsip_registrar.so
load = res_pjsip_rfc3326.so
load = res_pjsip_sdp_rtp.so
load = res_pjsip_send_to_voicemail.so
load = res_pjsip_session.so
load = res_pjsip.so
load = res_pjsip_t38.so
load = res_pjsip_transport_websocket.so
load = res_pjsip_xpidf_body_generator.so

load = res_rtp_asterisk.so
load = res_sorcery_astdb.so
load = res_sorcery_config.so
load = res_sorcery_memory.so
load = res_sorcery_realtime.so
load = res_speech.so
load = res_stasis.so
load = res_stasis_answer.so
load = res_stasis_device_state.so
noload = res_stasis_mailbox.so ; This requires deps which need comedian mail unloading
load = res_stasis_playback.so
load = res_stasis_recording.so
load = res_stasis_snoop.so

load = res_timing_timerfd.so

; Do not load res_hep and kin unless you are using HEP monitoring
; <http://sipcapture.org> in your network.

noload = res_hep.so
noload = res_hep_pjsip.so
noload = res_hep_rtcp.so

The outbound auth I added while fiddling around trying to get things working, to be fair I did wonder about that one myself, however problem existed before that.

The identify block I added because I thought based on what I read that the “match” to the IP address was what I needed so that pjsip would know the incoming IP was mapped to 103

The “caller id” was added by the python conversion script as I have those lines in my original chan_sip config, so I left it thinking it was “ok” etc.

It’s normal that “pjsip reload” doesn’t work. This command expects another argument. Check “core show help pjsip reload”. I suggest to not worry about that. To make sure that changes in your config take effect, you can also do a “core restart” for now.

As already said, remove the identity section. Usualy you only need it with your SIP provider, not with devices registering to you.

Also I would add “auth_type = userpass” to your auth sections, just to be sure.

The thing with the callerid should not be the problem, still I would correct it to

callerid = “Peters PC” <103>

The outbound auth should be removed. You only need it when you authenticate to someone else (a SIP Provider for example)

It’s possible that you have missed out a load for the PJSIP modules that would handle the authentication. I would start with autoload, and only consider pruning when it is working. The comment before the res_pjsip loads is clearly out of date.

Yes, you are right. I just played around a bit with my asterisk 18, trying to reproduce the error and I can’t. So there must be some auth related module missing.

Thanks folks, will try the above suggestions and feed back later today.

The comments not matching the list are just me being a lazy &()(^(_))^&(^(* :slight_smile:

and not updating them as I fiddled with the modules being loaded.

Question: “Does asterisk keep it’s modules anywhere else other than /lib/asterisk/modules on ubuntu?”

I ask, beacuse there seems to be a LOT of “res_pjsip*” entries in my modules.conf, but when I look in the asterisk modules folder all i see is:

root@telephony:/lib/asterisk/modules# ls res_*.*
res_ael_share.so           res_clioriginate.so         res_http_websocket.so         res_sorcery_astdb.so
res_agi.so                 res_config_curl.so          res_limit.so                  res_sorcery_config.so
res_ari.so                 res_config_ldap.so          res_manager_devicestate.so    res_sorcery_memory.so
res_ari_applications.so    res_config_pgsql.so         res_manager_presencestate.so  res_speech.so
res_ari_asterisk.so        res_config_sqlite3.so       res_musiconhold.so            res_speech_aeap.so
res_ari_bridges.so         res_convert.so              res_mutestream.so             res_srtp.so
res_ari_channels.so        res_crypto.so               res_mwi_devstate.so           res_stasis.so
res_ari_device_states.so   res_curl.so                 res_mwi_external.so           res_stasis_answer.so
res_ari_endpoints.so       res_fax.so                  res_mwi_external_ami.so       res_stasis_device_state.so
res_ari_events.so          res_fax_spandsp.so          res_parking.so                res_stasis_mailbox.so
res_ari_mailboxes.so       res_format_attr_celt.so     res_phoneprov.so              res_stasis_playback.so
res_ari_model.so           res_format_attr_g729.so     res_pjproject.so              res_stasis_recording.so
res_ari_playbacks.so       res_format_attr_h263.so     res_pjsip.so                  res_stasis_snoop.so
res_ari_recordings.so      res_format_attr_h264.so     res_pjsip_session.so          res_statsd.so
res_ari_sounds.so          res_format_attr_ilbc.so     res_prometheus.so             res_stir_shaken.so
res_audiosocket.so         res_format_attr_opus.so     res_realtime.so               res_stun_monitor.so
res_calendar.so            res_format_attr_silk.so     res_resolver_unbound.so       res_timing_pthread.so
res_calendar_caldav.so     res_format_attr_siren14.so  res_rtp_asterisk.so           res_timing_timerfd.so
res_calendar_ews.so        res_format_attr_siren7.so   res_rtp_multicast.so          res_tonedetect.so
res_calendar_exchange.so   res_format_attr_vp8.so      res_security_log.so           res_xmpp.so
res_calendar_icalendar.so  res_http_media_cache.so     res_smdi.so
res_clialiases.so          res_http_post.so            res_snmp.so

and

root@telephony:/lib/asterisk/modules# ls *pjsip*.*
res_pjsip.so  res_pjsip_session.so

I suspect I may be actually physically missing some module files, problem is I’m at a miss to find the Asterisk log file to check it, all I seem to have in /var/log/asterisk are CDR files.

I FINALLY managed to get a debug log file, and it would appear that I may now have an answer to my question :slight_smile:

root@telephony:/var/log/asterisk# cat debug_log
[Mar  3 13:41:38] Asterisk 18.13.0 built by shawty @ telephony on a x86_64 running Linux on 2022-07-28 16:44:23 UTC
[Mar  3 13:41:38] NOTICE[28977] loader.c: 124 modules will be loaded.
[Mar  3 13:41:38] WARNING[28977] ccss.c: Could not find valid ccss.conf file. Using cc_max_requests default
[Mar  3 13:41:38] WARNING[28977] ccss.c: Could not find valid ccss.conf file. Using cc_[state]_devstate defaults
[Mar  3 13:41:38] NOTICE[28977] cdr.c: CDR simple logging enabled.
[Mar  3 13:41:38] ERROR[28977] config_options.c: Unable to load config file 'cel.conf'
[Mar  3 13:41:38] NOTICE[28977] cel.c: Failed to process CEL configuration; using defaults
[Mar  3 13:41:38] ERROR[28977] config_options.c: Unable to load config file 'features.conf'
[Mar  3 13:41:38] NOTICE[28977] features_config.c: Could not load features config; using defaults
[Mar  3 13:41:38] ERROR[28977] config_options.c: Unable to load config file 'acl.conf'
[Mar  3 13:41:38] ERROR[28977] config_options.c: Unable to load config file 'udptl.conf'
[Mar  3 13:41:38] NOTICE[28977] udptl.c: Could not load udptl config; using defaults
[Mar  3 13:41:38] ERROR[28977] res_sorcery_config.c: Unable to load config file 'pjproject.conf'
[Mar  3 13:41:38] NOTICE[28977] confbridge/conf_config_parser.c: Adding default_bridge profile to app_confbridge
[Mar  3 13:41:38] NOTICE[28977] confbridge/conf_config_parser.c: Adding default_user profile to app_confbridge
[Mar  3 13:41:38] NOTICE[28977] confbridge/conf_config_parser.c: Adding default_menu menu to app_confbridge
[Mar  3 13:41:38] WARNING[28977] xmldoc.c: Couldn't find manager VoicemailFolders in XML documentation
[Mar  3 13:41:38] WARNING[28977] xmldoc.c: Couldn't find manager VoicemailFolders in XML documentation
[Mar  3 13:41:38] WARNING[28977] xmldoc.c: Couldn't find manager VoicemailFiles in XML documentation
[Mar  3 13:41:38] WARNING[28977] xmldoc.c: Couldn't find manager VoicemailFiles in XML documentation
[Mar  3 13:41:38] WARNING[28977] xmldoc.c: Couldn't find manager VoicemailGetMessageInfo in XML documentation
[Mar  3 13:41:38] WARNING[28977] xmldoc.c: Couldn't find manager VoicemailGetMessageInfo in XML documentation
[Mar  3 13:41:38] NOTICE[28977] app_queue.c: No queuerules.conf file found, queues will not follow penalty rules
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'chan_pjsip.so': /usr/lib/asterisk/modules/chan_pjsip.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'func_pjsip_endpoint.so': /usr/lib/asterisk/modules/func_pjsip_endpoint.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_acl.so': /usr/lib/asterisk/modules/res_pjsip_acl.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_authenticator_digest.so': /usr/lib/asterisk/modules/res_pjsip_authenticator_digest.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_caller_id.so': /usr/lib/asterisk/modules/res_pjsip_caller_id.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_dialog_info_body_generator.so': /usr/lib/asterisk/modules/res_pjsip_dialog_info_body_generator.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_diversion.so': /usr/lib/asterisk/modules/res_pjsip_diversion.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_dtmf_info.so': /usr/lib/asterisk/modules/res_pjsip_dtmf_info.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_endpoint_identifier_anonymous.so': /usr/lib/asterisk/modules/res_pjsip_endpoint_identifier_anonymous.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_endpoint_identifier_ip.so': /usr/lib/asterisk/modules/res_pjsip_endpoint_identifier_ip.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_endpoint_identifier_user.so': /usr/lib/asterisk/modules/res_pjsip_endpoint_identifier_user.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_exten_state.so': /usr/lib/asterisk/modules/res_pjsip_exten_state.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_header_funcs.so': /usr/lib/asterisk/modules/res_pjsip_header_funcs.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_logger.so': /usr/lib/asterisk/modules/res_pjsip_logger.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_messaging.so': /usr/lib/asterisk/modules/res_pjsip_messaging.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_mwi_body_generator.so': /usr/lib/asterisk/modules/res_pjsip_mwi_body_generator.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_mwi.so': /usr/lib/asterisk/modules/res_pjsip_mwi.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_nat.so': /usr/lib/asterisk/modules/res_pjsip_nat.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_notify.so': /usr/lib/asterisk/modules/res_pjsip_notify.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_one_touch_record_info.so': /usr/lib/asterisk/modules/res_pjsip_one_touch_record_info.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_outbound_authenticator_digest.so': /usr/lib/asterisk/modules/res_pjsip_outbound_authenticator_digest.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_outbound_publish.so': /usr/lib/asterisk/modules/res_pjsip_outbound_publish.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_outbound_registration.so': /usr/lib/asterisk/modules/res_pjsip_outbound_registration.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_path.so': /usr/lib/asterisk/modules/res_pjsip_path.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_pidf_body_generator.so': /usr/lib/asterisk/modules/res_pjsip_pidf_body_generator.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_pidf_digium_body_supplement.so': /usr/lib/asterisk/modules/res_pjsip_pidf_digium_body_supplement.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_pidf_eyebeam_body_supplement.so': /usr/lib/asterisk/modules/res_pjsip_pidf_eyebeam_body_supplement.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_publish_asterisk.so': /usr/lib/asterisk/modules/res_pjsip_publish_asterisk.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_pubsub.so': /usr/lib/asterisk/modules/res_pjsip_pubsub.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_refer.so': /usr/lib/asterisk/modules/res_pjsip_refer.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_registrar.so': /usr/lib/asterisk/modules/res_pjsip_registrar.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_rfc3326.so': /usr/lib/asterisk/modules/res_pjsip_rfc3326.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_sdp_rtp.so': /usr/lib/asterisk/modules/res_pjsip_sdp_rtp.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_send_to_voicemail.so': /usr/lib/asterisk/modules/res_pjsip_send_to_voicemail.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_t38.so': /usr/lib/asterisk/modules/res_pjsip_t38.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_transport_websocket.so': /usr/lib/asterisk/modules/res_pjsip_transport_websocket.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_pjsip_xpidf_body_generator.so': /usr/lib/asterisk/modules/res_pjsip_xpidf_body_generator.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] ERROR[28977] loader.c: Error loading module 'res_sorcery_realtime.so': /usr/lib/asterisk/modules/res_sorcery_realtime.so: cannot open shared object file: No such file or directory
[Mar  3 13:41:39] VERBOSE[28977] asterisk.c: Asterisk Ready.
[Mar  3 13:42:27] NOTICE[29006] res_pjsip/pjsip_distributor.c: Request 'REGISTER' from '<sip:101@192.168.19.17>' failed for '192.168.17.51:50631' (callid: 000ab8cd-75ee0003-77e5091e-6a84e35c@192.168.17.51) - No matching endpoint found
[Mar  3 13:42:27] WARNING[29006] res_pjsip.c: No SIP authenticator registered. Assuming authentication is not required

It looks like NONE of the pjsip modules where loaded or loadable, not entirely sure why because with some of them, the modules reported as not being loaded are definitely present, but I guess until I resolve all those ERROR lines in the log file, I’m probably chasing a red herring.

Because I could see “pjsip” commands in the asterisk CLI, and I didn’t have any “log files” being generated, I was (Foolishly) making the assumption that pjsip and it’s modules where loading ok.

Something must be loading somewhere, because the config files are being read, and the basic commands to show aors, transports, auths etc do work.

I’ll report back once I untangle this lot…

“I’m at a miss to find the Asterisk log file to check it, all I seem to have in
/var/log/asterisk are CDR files.”

What do you have in the [directories] section of /etc/asterisk/asterisk.conf,
and what uncommented lines do you have in /etc/asterisk/logger.conf?

Antony.

Asking Asterisk how it is configured is preferred to asking how you think you configured it :slight_smile:

core show settings

and

logger show channels

may yield clues.

The actual .so files for needed chan_pjsip modules don’t appeared to be installed. Asterisk is trying to load them but can’t because they don’t exist. It sounds like the install/upgrade wasn’t done correctly.

I’m not sure what more clues you need of Asterisk can’t load .so files, asks you to check if they exist. You check, they don’t exist. So when Asterisk 18 was built from source, how was it built? What was actually done in the process? What does the makeopts, etc show?

Right, so it turns out that for some reason my installation had gotten a bit borked.

No idea how or even why, but after I did a ‘make install’ everything got re-installed.

root@telephony:/var/log/asterisk# cat debug_log
[Mar  3 15:10:51] Asterisk 18.13.0 built by shawty @ telephony on a x86_64 running Linux on 2022-07-28 16:44:23 UTC
[Mar  3 15:10:51] NOTICE[47018] loader.c: 124 modules will be loaded.
[Mar  3 15:10:51] WARNING[47018] ccss.c: Could not find valid ccss.conf file. Using cc_max_requests default
[Mar  3 15:10:51] WARNING[47018] ccss.c: Could not find valid ccss.conf file. Using cc_[state]_devstate defaults
[Mar  3 15:10:51] NOTICE[47018] cdr.c: CDR simple logging enabled.
[Mar  3 15:10:51] ERROR[47018] config_options.c: Unable to load config file 'cel.conf'
[Mar  3 15:10:51] NOTICE[47018] cel.c: Failed to process CEL configuration; using defaults
[Mar  3 15:10:51] ERROR[47018] config_options.c: Unable to load config file 'features.conf'
[Mar  3 15:10:51] NOTICE[47018] features_config.c: Could not load features config; using defaults
[Mar  3 15:10:51] ERROR[47018] config_options.c: Unable to load config file 'acl.conf'
[Mar  3 15:10:51] ERROR[47018] config_options.c: Unable to load config file 'udptl.conf'
[Mar  3 15:10:51] NOTICE[47018] udptl.c: Could not load udptl config; using defaults
[Mar  3 15:10:51] ERROR[47018] res_sorcery_config.c: Unable to load config file 'pjproject.conf'
[Mar  3 15:10:51] NOTICE[47018] confbridge/conf_config_parser.c: Adding default_bridge profile to app_confbridge
[Mar  3 15:10:51] NOTICE[47018] confbridge/conf_config_parser.c: Adding default_user profile to app_confbridge
[Mar  3 15:10:51] NOTICE[47018] confbridge/conf_config_parser.c: Adding default_menu menu to app_confbridge
[Mar  3 15:10:51] WARNING[47018] xmldoc.c: Couldn't find manager VoicemailFolders in XML documentation
[Mar  3 15:10:51] WARNING[47018] xmldoc.c: Couldn't find manager VoicemailFolders in XML documentation
[Mar  3 15:10:51] WARNING[47018] xmldoc.c: Couldn't find manager VoicemailFiles in XML documentation
[Mar  3 15:10:51] WARNING[47018] xmldoc.c: Couldn't find manager VoicemailFiles in XML documentation
[Mar  3 15:10:51] WARNING[47018] xmldoc.c: Couldn't find manager VoicemailGetMessageInfo in XML documentation
[Mar  3 15:10:51] WARNING[47018] xmldoc.c: Couldn't find manager VoicemailGetMessageInfo in XML documentation
[Mar  3 15:10:51] NOTICE[47018] app_queue.c: No queuerules.conf file found, queues will not follow penalty rules
[Mar  3 15:10:51] ERROR[47018] loader.c: Error loading module 'res_pjsip_exten_state.so': /usr/lib/asterisk/modules/res_pjsip_exten_state.so: cannot open shared object file: No such file or directory
[Mar  3 15:10:51] ERROR[47018] loader.c: Error loading module 'res_sorcery_realtime.so': /usr/lib/asterisk/modules/res_sorcery_realtime.so: cannot open shared object file: No such file or directory
[Mar  3 15:10:51] VERBOSE[47018] asterisk.c: Asterisk Ready.

My debugging log file is certainly a lot lesser in size now, so now lets see what happens with the registrations.


And on the back of that…

The softphone is now registering, and I suspect when the desk phone wakes up and tries to re-register it will.

@david551 / @TheNextDay many thanks for the assist, it was ultimately you folks nudging me in the direction of checking my modules and what was/was not being loaded that resolved this.

I think maybe a was a little hasty with the celebrations :slight_smile:

I’ve solved my registration problems, now I have to work out why every number I dial results in “488 Not Acceptable Here”.

DANG IT!

You’d want to configure the endpoints with codecs, such as:

allow=!all,g722,ulaw

As allowing all codecs, which it may be doing by default, doesn’t work in the version of Asterisk you are using.

Thanks, I’ll give that a try.

From what I was reading, I had a feeling it was codec related, just wasn’t sure what to put and where.

@jcolp That worked ish :slight_smile: The cisco deskphone now has full functionality, but the softphone on the PC at 103, dials, hits the dial plan and as far as I can tell has a working mic, but any audio coming back from asterisk is non existant.

I have an extension for testing that plays “hello-world” and hangs up, and I have only the gsm & wav sound sets installed, the extension when dialing that number tries to request “hello-world.slin” to play back

Running as user 'asterisk'
Running under group 'asterisk'
Connected to Asterisk 18.13.0 currently running on telephony (pid = 48515)
    -- Executing [5000@internal:1] NoOp("PJSIP/103-00000001", "'Starting TEST extension'") in new stack
    -- Executing [5000@internal:2] Answer("PJSIP/103-00000001", "") in new stack
       > 0x7f494403be00 -- Strict RTP learning after remote address set to: 172.28.224.1:4002
    -- Executing [5000@internal:3] Playback("PJSIP/103-00000001", "hello-world") in new stack
    -- <PJSIP/103-00000001> Playing 'hello-world.slin' (language 'en')
       > 0x7f494403be00 -- Strict RTP learning after remote address set to: 172.28.224.1:4002
       > 0x7f494403be00 -- Strict RTP qualifying stream type: audio
       > 0x7f494403be00 -- Strict RTP switching source address to 192.168.17.100:4002
    -- Executing [5000@internal:4] Hangup("PJSIP/103-00000001", "") in new stack
  == Spawn extension (internal, 5000, 4) exited non-zero on 'PJSIP/103-00000001'
telephony*CLI>

If I dial through to the deskphone, I can answer on the deskphone, and I can hear anything in the mic on the softphone, but nothing from the deskphone is heard on the softphone speaker in the PC.

The speaker on the softphone is working fine however as I get the DTMF’s from the dialing.