Asterisk 17/PJSIP/BLF not working: SUBSCRIBE not OKed

Hello,
My aim is to replace an old Asterisk 1.4 with a new Asterisk 17.
In my lab, I’m specifically looking at BLF feature.

I can see:
CLI> core show hints

-= Registered Asterisk Dial Plan Hints =-

9134@subs : PSJIP/9134 State:Unavailable Presence:not_set Watchers 2
9133@subs : PSJIP/9133 State:Unavailable Presence:not_set Watchers 1

When 9133 is dialing 9134, then I can see:
– Executing [9134@basic1-in:14] Dial(“PJSIP/9133-00000002”, “PJSIP/9134,KTkt”) in new stack

but still:
CLI> core show hints

-= Registered Asterisk Dial Plan Hints =-

9134@subs : PSJIP/9134 State:Unavailable Presence:not_set Watchers 2
9133@subs : PSJIP/9133 State:Unavailable Presence:not_set Watchers 2

I can’t find any NOTIFY message leaving Asterisk at this time.
It seems Asterisk is not associating the ringing Endpoint/AOR/Whatever PJSIP/9134 with so-called 9134@subs.
This is the very first time I’m trying to BLF with PJSIP.

When subscribing, phones send:
SUBSCRIBE sip:9133@ipbx2.foobar.lan:5060 SIP/2.0
Via: SIP/2.0/UDP 192.168.64.236:5060;branch=z9hG4bK3622826989
From: “John Doe” sip:9134@ipbx2.foobar.lan:5060;tag=204672226
To: sip:9133@ipbx2.foobar.lan:5060
Call-ID: 0_1527207908@192.168.64.236
CSeq: 2 SUBSCRIBE
Contact: sip:9134@192.168.64.236:5060
Authorization: Digest username=“9134”, realm=“asterisk”, nonce=“1585242441/6e73787c96c6872e38d1ccdce7db0ded”, uri=“sip:9133@ipbx2.foobar.lan:5060”, response=“b980b2543992797adaf48fd10c19e72b”, algorithm=MD5, cnonce=“0a4f113b”, opaque=“3518761857db1979”, qop=auth, nc=00000001
Allow: INVITE, INFO, PRACK, ACK, BYE, CANCEL, OPTIONS, NOTIFY, REGISTER, SUBSCRIBE, REFER, PUBLISH, UPDATE, MESSAGE
Accept: application/dialog-info+xml
Max-Forwards: 70
User-Agent: Yealink SIP-T27G 69.84.0.125
Expires: 1800
Event: dialog
Content-Length: 0

but I can’t see any 200 OK matching this SUBSCRIBE though core show hint’s Watcher counter seems incremented.

Any hint ?

Best regards

We’d need a full SIP trace as well as further information. For example, are you using realtime? There is another thread experiencing an issue with endpoints not having the correct state, when using realtime.

Hi Josh,

I re-installed a brand new Asterisk 17.3.0 instance with “make basic-pbx” during its installation.
I added an “include = Hints” in Long-distance context and BLF worked with the very IP phones that failed on my other Asterisk instance.

Basically, on the “failing Asterisk instance”, I’m still seeing BLF watchers but State:Unavailable.

I’ll dig deeper on this, tomorrow and keep this thread updated.

Hi,

I feel a bit ashamed of this but I’ve found the root cause of the BLF issue: I simply mis-typed “exten = _X.,hint,PSJIP/{EXTEN}" instead of "exten = _X.,hint,PSJIP/{EXTEN}” (letters J and S inter-changed in PJSIP).

The strange thing is I didn’t notice any ERROR/WARNING message in /var/log/asterisk/messages.

I’m really sorry for bothering people with a so stupid error.

Best regards

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.