Hello World example doesn't work on PJSIP

I have followed the first time tutorial, but I can’t get the Hello World example to work. I opted for PJSIP as the SIP channel, but I can’t dial extension 100, I think because PJSIP can’t find an endpoint for it. I have some experience with chan_sip and PJSIP as a client, but I’m a complete newbie at Asterisk’s PJSIP channel, and I don’t know exactly how to configure a virtual (?) endpoint or whatever is required by PJSIP to just forward the call to the dial plan

My pjsip.conf:

[details=pjsip.conf][transport-tcp] type=transport protocol=tcp bind= `` [6001] type=endpoint transport=transport-tcp context=from-internal allow=all auth=6001 aors=6001 media_encryption=sdes direct_media=no force_rport=yes rewrite_contact=yes `` [6001] type=auth auth_type=userpass password=6001 username=6001 `` [6001] type=aor max_contacts=1[/details]

My extensions.conf:

[details=extensions.conf][from-internal] exten => 100,1,Answer() same => n,Wait(1) same => n,Playback(hello-world) same => n,Hangup()[/details]

I’m using ipjsua on iPhone as a client, using the following commands to register and make a call:

+a sip:6001@;transport=TCP sip:;transport=TCP * 6001 6001 call new sip:100@;transport=TCP

I think this line from the Asterisk log is relevant:

[Feb 6 14:32:52] DEBUG[7315]: res_pjsip_endpoint_identifier_ip.c:128 ip_identify: No identify sections to match against

An identify section is only required if you are doing IP based matching. In your case it should be the user portion of the From header that determines what endpoint is used. What is the complete output for “pjsip set logger on” and console?

I’ve pasted it here

Your problem is endpoint configuration specific. Try removing “media_encryption=sdes” from it. The offer from PJSUA does not include SDES.

Oooh of course. Shame on me, I completely forgot about it. Thank you! It works now!