It doesn't look like the "pua_dialoginfo" module has support for the "display" attribute in the identity tag. This tag is used by some phones to update the phone display with caller/callee information for the respective key. I'm wondering how difficult it would be to add this feature. Thanks in advance for anyone who reads this!
Kamailio includes display attribute in identity tags in generated publish messages.
<dialog-info xmlns="urn:ietf:params:xml:ns:dialog-info" version="1" state="full"> <dialog id="as7d900as8" call-id="a84b4c76e66710" local-tag="1928301774" remote-tag="456887766" direction="initiator"> <state>early</state> <local> <identity display="Alice">sip:alice@example.com</identity> <target uri="sip:alice@phone11.example.com"/> </local> <remote> <identity display="Bob">sip:bob@example.org</identity> <target uri="sip:bobster@phone21.example.org"/> </remote> </dialog> </dialog-info>
Kamailio generates a publish request for dialog events similar to the one below. The display attribute is not included in the "identity" tags. This means that when a notify message is sent to a watcher for this publish, the name is not rendered on the phone display.
<dialog-info xmlns="urn:ietf:params:xml:ns:dialog-info" version="1" state="full"> <dialog id="as7d900as8" call-id="a84b4c76e66710" local-tag="1928301774" remote-tag="456887766" direction="initiator"> <state>early</state> <local> <identity>sip:alice@example.com</identity> <target uri="sip:alice@phone11.example.com"/> </local> <remote> <identity>sip:bob@example.org</identity> <target uri="sip:bobster@phone21.example.org"/> </remote> </dialog> </dialog-info>
I added a small modification to the module as a POC and it works as expected. With the following modification, the phone display is updated with the string in the “display” attribute. I added line 191-193 below, between lines 190 & 191 on the current master branch. The example below shows the “remote” tag, I also did the same thing for the local tag a few more lines down.
184 tag_node = xmlNewChild(remote_node, NULL, BAD_CAST "identity", 185 BAD_CAST buf) ; 186 if( tag_node ==NULL) 187 { 188 LM_ERR("while adding childn"); 189 goto error; 190 } 191 /* Testing - adding display attribute to the identity tag */ 192 xmlNewProp(tag_node, BAD_CAST "display", BAD_CAST "RemoteCallerName"); 193 /* */ 195 196 tag_node = xmlNewChild(remote_node, NULL, BAD_CAST "target", NULL); 197 if( tag_node ==NULL)
Here is a link to the file in the module I’m referring to:
https://github.com/kamailio/kamailio/blob/master/src/modules/pua_dialoginfo/dialog_publish.c
I don’t really have any professional experience writing C code, and I was unable to identify a way to grab this string from the “From” header. Unfortunately, because I would have really loved to give this feature back to the community!
Thank you so much for this amazing software. I absolutely adore Kamailio! If someone is interested in this, please let me know if there is anything I can do to help.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.