Table of Contents
List of Examples
Table of Contents
The pua_mi offers the possibility to publish presence information and subscribe to presence information via MI transports.
Using this module you can create independent applications/scripts to publish not sip-related information (e.g., system resources like CPU-usage, memory, number of active subscribers ...). Also, this module allows non-SIP speaking applications to subscribe presence information kept in a SIP presence server.
Command parameters:
presentity_uri - e.g. sip:system@kamailio.org
expires - Relative expires time in seconds (e.g. 3600).
event package - Event package that is target of published information (e.g. presence).
content type - Content type of published information (e.g. application/pidf+xml) or . if no information is enclosed.
id - id for a series of related PUBLISHes to the same presentity-uri or . to always use the same series. For example dialog-info must reuse the same id for the same call otherwise status will be lost when multiple parallel calls to/from the same user take place. The dialog-id from the dialog-info body qualifies as a suitable id here.
ETag - ETag that publish should match or . if no ETag is given.
extra_headers - Extra headers added to PUBLISH request or . if no extra headers.
body - The body of the publish request containing published information or missing if no published information. It has to be a single line for FIFO transport.
Example 1.1. pua_publish
FIFO example
... :pua_publish:fifo_test_reply sip:system@kamailio.org 3600 presence application/pidf+xml . . . <?xml version='1.0'?><presence xmlns='urn:ietf:params:xml:ns:pidf' xmlns:dm='urn:ietf:params:xml:ns:pidf:data-model' xmlns:rpid='urn:ietf:params:xml:ns:pidf:rpid' xmlns:c='urn:ietf:params:xml:ns:pidf:cipid' entity='system@kamailio.org'><tuple id='0x81475a0'><status><basic>open</basic></status></tuple><dm:person id='pdd748945'><rpid:activities><rpid:away/>away</rpid:activities><dm:note>CPU:16 MEM:476</dm:note></dm:person></presence>