Delivery Verification Of Instant Messages With Pjsip
Hi,
when sending IMs from endpoint to endpoint with the MessageSend() application, I can check the MESSAGE_SEND_STATUS and send another message to the sender of the message to notify them that their message was not sent when the status indicates it.
This works fine with chan_sip. With chan_pjsip, this works differently in that MESSAGE_SEND_STATUS is “SUCCESS” after sending the message, and only later asterisk figures out that it is “Unable to retrieve contact for endpoint
How can I check if the endpoint has contacts — or preferably — if the message was actually delivered to an endpoint? It would be sufficient to get it to work with endpoints that are not supposed to have more than one contact.
—
2 thoughts on - Delivery Verification Of Instant Messages With Pjsip
Making MESSAGE_SEND_STATUS reflect whether the message was sent or not for PJSIP was merged in 2 days ago[1]. It will be in a future release. If you don’t want to wait you could use device state to know if the device is reachable (and thus a MESSAGE has a chance of being sent) using the DEVICE_STATE dialplan function[2].
[1] https://gerrit.asterisk.org/c/asterisk/+/13674
[2]
https://wiki.asterisk.org/wiki/display/AST/Asterisk+17+Function_DEVICE_STATE
Perfect answer, thanks! 🙂
I think I’ll just update from the git repo then and see if it works.
—