Howto13r3:Busy lamp field (partner keys) with SIP phone
Applies To
This information applies to
- innovaphone PBX, v13r3
- SIP phones supporting "Dialog Package" according to RFC-4235
Introduction
Partner keys are primarily used to monitor the call state of an associated partner. Usually partner keys fulfill the following functions:
- monitoring partner: Indicating different call-related states: Idle, Alerting, Busy.
- speed dial: Pressing the partner key while the partner is in idle state will initiate a call to the partner.
- call pickup: Pressing the partner key while the partner is in alerting state will initiate a call pickup of the alerting call.
More Information
System Requirements
Configuration
In order make partner keys work, the PBX must notify the device about current state of ongoing calls.
To achieve that, the monitored user must share his Visibility information to the other users requesting his activity state. The option to be shared at least must be:
Calls (Call with number if you want also to share the number you are having a conversation with)
This can be configured globally by the administrator, or the user can also manually share Visibility information to single users, group/s or domain/s using the Profile app, in the Privacy settings
The NOTIFY request is used to carry an XML formatted dialog info.
Endpoints can, but need not to subscribe for the "Dialog Event Package" (RFC-4235).
Known Problems
---
Example
The watched endpoint (207) receives a call from 211.
The watcher gets a NOTIFY request with a dialog info about the call in "early" state:
NOTIFY sip:snom@172.16.16.34:1415;line=ojn9itpa SIP/2.0 Via: SIP/2.0/UDP 172.16.16.180:5060;branch=z9hG4bK-311728BD;rport From: <sip:207@172.16.16.180;user=phone>;tag=2870350033 To: <sip:snom@172.16.16.180>;tag=bl4qd8azu6 Call-ID: 0ce2cb4794c2-9b374j1ddupd@snomSoft-000413FFFFFF CSeq: 18 NOTIFY Contact: <sip:207@172.16.16.180;user=phone> Content-Length: 343 Content-Type: application/dialog-info+xml Max-Forwards: 70 Event: dialog Subscription-State: active <?xml version="1.0"?> <dialog-info xmlns="urn:ietf:params:xml:ns:dialog-info" state="full" version="9"> <dialog id="1" direction="initiator" call-id="e1b50917e909d311824d0090330200d6"> <state>early</state> <local> <identity>sip:207@172.16.16.180</identity> </local> <remote> <identity>sip:211@172.16.16.180</identity> </remote> </dialog> </dialog-info> SIP/2.0 200 Ok Via: SIP/2.0/UDP 172.16.16.180:5060;branch=z9hG4bK-311728BD;rport=5060 From: <sip:207@172.16.16.180;user=phone>;tag=2870350033 To: <sip:snom@172.16.16.180>;tag=bl4qd8azu6 Call-ID: 0ce2cb4794c2-9b374j1ddupd@snomSoft-000413FFFFFF CSeq: 18 NOTIFY Content-Length: 0
While in state "early" the watcher has the chance to pickup this "early" call.
After the call has been accepted by the watched endpoint (207), the former dialog info is cleared and a new dialog info is send to the watcher about the call in state "proceeding":
NOTIFY sip:snom@172.16.16.34:1415;line=ojn9itpa SIP/2.0 Via: SIP/2.0/UDP 172.16.16.180:5060;branch=z9hG4bK-311728BE;rport From: <sip:207@172.16.16.180;user=phone>;tag=2870350033 To: <sip:snom@172.16.16.180>;tag=bl4qd8azu6 Call-ID: 0ce2cb4794c2-9b374j1ddupd@snomSoft-000413FFFFFF CSeq: 19 NOTIFY Contact: <sip:207@172.16.16.180;user=phone> Content-Length: 349 Content-Type: application/dialog-info+xml Max-Forwards: 70 Event: dialog Subscription-State: active <?xml version="1.0"?> <dialog-info xmlns="urn:ietf:params:xml:ns:dialog-info" state="full" version="10"> <dialog id="1" direction="initiator" call-id="e1b50917e909d311824d0090330200d6"> <state>terminated</state> <local> <identity>sip:207@172.16.16.180</identity> </local> <remote> <identity>sip:211@172.16.16.180</identity> </remote> </dialog> </dialog-info> NOTIFY sip:snom@172.16.16.34:1415;line=ojn9itpa SIP/2.0 Via: SIP/2.0/UDP 172.16.16.180:5060;branch=z9hG4bK-311728BF;rport From: <sip:207@172.16.16.180;user=phone>;tag=2870350033 To: <sip:snom@172.16.16.180>;tag=bl4qd8azu6 Call-ID: 0ce2cb4794c2-9b374j1ddupd@snomSoft-000413FFFFFF CSeq: 20 NOTIFY Contact: <sip:207@172.16.16.180;user=phone> Content-Length: 349 Content-Type: application/dialog-info+xml Max-Forwards: 70 Event: dialog Subscription-State: active <?xml version="1.0"?> <dialog-info xmlns="urn:ietf:params:xml:ns:dialog-info" state="full" version="11"> <dialog id="1" direction="initiator" call-id="e1b50917e909d311824d0090330200d6"> <state>proceeding</state> <local> <identity>sip:207@172.16.16.180</identity> </local> <remote> <identity>sip:211@172.16.16.180</identity> </remote> </dialog> </dialog-info> SIP/2.0 200 Ok Via: SIP/2.0/UDP 172.16.16.180:5060;branch=z9hG4bK-311728BE;rport=5060 From: <sip:207@172.16.16.180;user=phone>;tag=2870350033 To: <sip:snom@172.16.16.180>;tag=bl4qd8azu6 Call-ID: 0ce2cb4794c2-9b374j1ddupd@snomSoft-000413FFFFFF CSeq: 19 NOTIFY Content-Length: 0 SIP/2.0 200 Ok Via: SIP/2.0/UDP 172.16.16.180:5060;branch=z9hG4bK-311728BF;rport=5060 From: <sip:207@172.16.16.180;user=phone>;tag=2870350033 To: <sip:snom@172.16.16.180>;tag=bl4qd8azu6 Call-ID: 0ce2cb4794c2-9b374j1ddupd@snomSoft-000413FFFFFF CSeq: 20 NOTIFY Content-Length: 0
After the call has been terminated, the dialog info is cleared:
NOTIFY sip:snom@172.16.16.34:1415;line=ojn9itpa SIP/2.0 Via: SIP/2.0/UDP 172.16.16.180:5060;branch=z9hG4bK-311728C1;rport From: <sip:207@172.16.16.180;user=phone>;tag=2870350033 To: <sip:snom@172.16.16.180>;tag=bl4qd8azu6 Call-ID: 0ce2cb4794c2-9b374j1ddupd@snomSoft-000413FFFFFF CSeq: 22 NOTIFY Contact: <sip:207@172.16.16.180;user=phone> Content-Length: 349 Content-Type: application/dialog-info+xml Max-Forwards: 70 Event: dialog Subscription-State: active <?xml version="1.0"?> <dialog-info xmlns="urn:ietf:params:xml:ns:dialog-info" state="full" version="12"> <dialog id="1" direction="initiator" call-id="e1b50917e909d311824d0090330200d6"> <state>terminated</state> <local> <identity>sip:207@172.16.16.180</identity> </local> <remote> <identity>sip:211@172.16.16.180</identity> </remote> </dialog> </dialog-info> SIP/2.0 200 Ok Via: SIP/2.0/UDP 172.16.16.180:5060;branch=z9hG4bK-311728C1;rport=5060 From: <sip:207@172.16.16.180;user=phone>;tag=2870350033 To: <sip:snom@172.16.16.180>;tag=bl4qd8azu6 Call-ID: 0ce2cb4794c2-9b374j1ddupd@snomSoft-000413FFFFFF CSeq: 22 NOTIFY Content-Length: 0