CallManagement:2 Service
For UPnP Version 1.0
Status: Standardized DCP (SDCP)
Date: December 10, 2012
Document Version: 1.0
Service Template Version: 2.00
This Standardized DCP has been adopted as a Standardized DCP by the Steering Committee
of the UPnP Forum, pursuant to Section 2.1(c)(ii) of the UPnP Forum Membership Agreement.
UPnP Forum Members have rights and licenses defined by Section 3 of the UPnP Forum
Membership Agreement to use and reproduce the Standardized DCP in UPnP Compliant
Devices. All such use is subject to all of the provisions of the UPnP Forum Membership
Agreement.
THE UPNP FORUM TAKES NO POSITION AS TO WHETHER ANY INTELLECTUAL
PROPERTY RIGHTS EXIST IN THE STANDARDIZED DCPS. THE STANDARDIZED DCPS
ARE PROVIDED "AS IS" AND "WITH ALL FAULTS". THE UPNP FORUM MAKES NO
WARRANTIES, EXPRESS, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
THE STANDARDIZED DCPS, INCLUDING BUT NOT LIMITED TO ALL IMPLIED
WARRANTIES OF MERCHANTABILITY, NON-INFRINGEMENT AND FITNESS FOR A
PARTICULAR PURPOSE, OF REASONABLE CARE OR WORKMANLIKE EFFORT, OR
RESULTS OR OF LACK OF NEGLIGENCE.
© 2012 UPnP Forum. All Rights Reserved.
Authors
a
Company
Yoshiki Nishikawa (Editor)
NTT
Hiroshi Jinzenji
NTT
Yuji Morinishi
NTT
Hisashi Matsukawa
NTT
Enrico Grosso
Telecom Italia
Massimo Messore
Telecom Italia
Mahfuzur Rahman (Chair)
Samsung Electronics
Mayuresh Patil
Samsung Electronics
Jeyoung Maeng
Samsung Electronics
Jooyeol Lee
Samsung Electronics
Yu Zhu
Huawei
Andreas Kraft
Deutsche Telekom
Vivien Helmut
Deutsche Telekom
Fabrice Fontaine
France Telecom
JangW oong Park
LGE
a
Note: The UPnP Forum in no way guarantees the accuracy or completeness of this author list and in no way
implies any rights for or support from those members listed. This list is not the specifications’ contributor list
that is kept on the UPnP Forum’s website.
CallManagement:2 — 2 —
Copyright UPnP Forum © 2012. All rights reserved.
CONTENTS
1 Scope ...................................................................................................................... 7
2 Normative References ............................................................................................... 8
3 Terms, definitions, symbols and abbreviated terms ...................................................... 8
4 Notations and conventions ....................................................................................... 12
4.1 Text conventions ........................................................................................... 12
4.2 Data Types .................................................................................................... 12
4.3 Vendor-defined Extensions ............................................................................. 12
5 Service Modeling Definitions .................................................................................... 12
5.1 Service Type ................................................................................................. 12
5.2 CallManagement Service Architecture .............................................................. 12
5.2.1 Managing Call With Multiple Telephony Clients ...................................... 13
5.2.2 User Concept and Multi-User Control .................................................... 17
5.2.3 Call Monopolization ............................................................................. 18
5.2.4 Selective Information Delivery .............................................................. 23
5.2.5 Handling of Media Streams .................................................................. 23
5.2.6 Content Sharing .................................................................................. 24
5.3 State Variables .............................................................................................. 25
5.3.1 State Variable Overview ....................................................................... 25
5.3.2 CallInfo .............................................................................................. 26
5.3.3 TelCPNameList ................................................................................... 30
5.3.4 CallBackAvailability ............................................................................. 30
5.3.5 PushInfo............................................................................................. 30
5.3.6 VoiceMailInfo ...................................................................................... 31
5.3.7 ParallelCallInfo ................................................................................... 32
5.3.8 A_ARG_TYPE_TelephonyServerIdentity ................................................ 33
5.3.9 A_ARG_TYPE_TelCPName ................................................................. 33
5.3.10 A_ARG_TYPE_TelCPNameList ............................................................ 33
5.3.11 A_ARG_TYPE_Expires ........................................................................ 33
5.3.12 A_ARG_TYPE_MediaCapabilityInfo ...................................................... 33
5.3.13 A_ARG_TYPE_CalleeID ...................................................................... 35
5.3.14 A_ARG_TYPE_CallPriority ................................................................... 35
5.3.15 A_ARG_TYPE_CallMode ..................................................................... 36
5.3.16 A_ARG_TYPE_CallID .......................................................................... 36
5.3.17 A_ARG_TYPE_SecretKey .................................................................... 36
5.3.18 A_ARG_TYPE_RejectReason ............................................................... 36
5.3.19 A_ARG_TYPE_TCList ......................................................................... 36
5.3.20 A_ARG_TYPE_CallInfoList ................................................................... 37
5.3.21 A_ARG_TYPE_CallLogs ...................................................................... 38
5.3.22 A_ARG_TYPE_CallBackID ................................................................... 39
5.3.23 A_ARG_TYPE_CallBackInfoList............................................................ 39
5.3.24 A_ARG_TYPE_PushInfoList ................................................................. 40
5.3.25 A_ARG_TYPE_VoiceMailInfoList .......................................................... 41
5.3.26 A_ARG_TYPE_VoiceMailID .................................................................. 41
5.3.27 A_ARG_TYPE_CallType ...................................................................... 41
CallManagement:2 — 3 —
Copyright UPnP Forum © 2012. All rights reserved.
5.3.28 A_ARG_TYPE_CallerID ....................................................................... 42
5.3.29 A_ARG_TYPE_MaxWaitingTime ........................................................... 43
5.4 Eventing and Moderation ................................................................................ 43
5.4.1 Eventing of CallInfo ............................................................................. 43
5.4.2 Eventing of TelCPNameList .................................................................. 44
5.4.3 Eventing of CallBackAvailability ............................................................ 44
5.4.4 Eventing of PushInfo ........................................................................... 44
5.4.5 Eventing of VoiceMailInfo ..................................................................... 44
5.4.6 Eventing of ParallelCallInfo .................................................................. 44
5.5 Actions .......................................................................................................... 44
5.5.1 GetTelephonyIdentity() ........................................................................ 45
5.5.2 RegisterTelCPName() .......................................................................... 46
5.5.3 UnregisterTelCPName() ....................................................................... 48
5.5.4 ChangeTelCPName() ........................................................................... 48
5.5.5 GetTelCPNameList() ........................................................................... 49
5.5.6 GetMediaCapabilities() ........................................................................ 50
5.5.7 StartCall()........................................................................................... 51
5.5.8 StopCall() ........................................................................................... 53
5.5.9 AcceptCall() ........................................................................................ 55
5.5.10 RejectCall() ........................................................................................ 57
5.5.11 ModifyCall() ........................................................................................ 59
5.5.12 AcceptModifyCall() .............................................................................. 61
5.5.13 StartMediaTransfer() ........................................................................... 63
5.5.14 ChangeMonopolizer() .......................................................................... 64
5.5.15 InitiateCall() ........................................................................................ 66
5.5.16 GetCallInfo() ....................................................................................... 66
5.5.17 GetCallLogs() ..................................................................................... 68
5.5.18 ClearCallLogs() ................................................................................... 68
5.5.19 RegisterCallBack() .............................................................................. 69
5.5.20 ClearCallBack() ................................................................................... 70
5.5.21 GetCallBackInfo() ................................................................................ 70
5.5.22 ChangeCallMode() .............................................................................. 71
5.5.23 GetPushInfo() ..................................................................................... 72
5.5.24 IgnoreCall() ........................................................................................ 73
5.5.25 GetVoiceMail() .................................................................................... 74
5.5.26 DeleteVoiceMail() ................................................................................ 75
5.5.27 EnhancedInitiateCall() ......................................................................... 76
5.5.28 WaitingForCall() .................................................................................. 77
5.5.29 InitiateParallelCall() ............................................................................. 78
5.5.30 AcceptParallelCall() ............................................................................. 79
5.5.31 Relationships Between Actions ............................................................. 80
5.5.32 Error Code Summary ........................................................................... 80
5.6 Service Behavioral Model ................................................................................ 80
5.6.1 State Diagram ..................................................................................... 80
6 XML Service Description ......................................................................................... 84
Annex A (normative) XML complex type peerType ........................................................ 100
Annex B (normative) XML Schema .............................................................................. 104
CallManagement:2 — 4 —
Copyright UPnP Forum © 2012. All rights reserved.
Annex C (informative) Theory of Operation ................................................................... 109
Annex D (informative) Sequence Examples .................................................................. 132
Annex E (informative) How to send DTMF .................................................................... 302
Annex F (informative) Bibliography .............................................................................. 303
Figure 1 — Relationship among Media Stream, Media Session and Media Session ID ......... 10
Figure 2 — Architecture of the CallManagement Service .................................................. 13
Figure 3 — Managing a Telephony Call with Multiple Telephony Clients ............................. 14
Figure 4 — Starting a Call with Multiple Telephony Clients Using Media Mixing
Capability .................................................................................................................... 15
Figure 5 — Modifying a Call with Multiple Telephony Clients Using Media Mixing
Capability .................................................................................................................... 15
Figure 6 — Starting a Call With Multiple Telephony Clients Using Media Sharing
Capability .................................................................................................................... 16
Figure 7 — Modifying a Call With Multiple Telephony Clients Using Media Sharing
Capability .................................................................................................................... 17
Figure 8 — Example for Multi-User Control Concept ......................................................... 18
Figure 9 — PHONE-based Call Monopolization................................................................ 20
Figure 10 — Incoming Call Handling ............................................................................... 22
Figure 11 — Call State Diagram for a Caller .................................................................... 81
Figure 12 — Call State Diagram for a Callee ................................................................... 82
Figure 13 — Call State Diagram to request the modification of a Call ................................. 83
Figure 14 — Call State Diagram to accept the modification of a Call .................................. 84
Figure C.1 — Flow basics for creating an outgoing Call (TC-Based Media Handling) ......... 110
Figure C.2 — Flow basics for accepting an incoming Call (TC-Based Media Handling) ...... 112
Figure C.3 — Flow basics for modifying an ongoing Call (TC-Based Media Handling) ........ 114
Figure C.4 — Flow basics for creating an outgoing Call (TS-Based Media Handling) ......... 116
Figure C.5 — Flow basics for accepting an incoming Call (TS-Based Media Handling) ....... 118
Figure C.6 — Flow basics for modifying an ongoing Call (TS-Based Media Handling) ........ 120
Figure C.7 — Flow basics for changing CallMode from Non-Monopolize to Monopolize ...... 121
Figure C.8 — Flow basics for changing CallMode from Monopolize to Non-Monopolize ...... 122
Figure C.9 — Flow basics for Early Media ..................................................................... 123
Figure C.10 — Example flow of TS-Based Content Sharing by initiating a Call .................. 125
Figure C.11 — Example flow of TS-Based Content Sharing in an existing Call .................. 126
Figure C.12 — Example flow of TC-Based Content Sharing by Updating a Call ................. 127
Figure C.13 — Example flow of TC-Based Content Sharing without Updating a Call .......... 128
Figure C.14 — Example flow of TC-Based Content Sharing by initiating a Call .................. 129
Figure C.15 — Architecture for Parallel Call .................................................................. 130
Figure C.16 — Flow basics for Establishing a Parallel Call .............................................. 131
Figure D.1 — Register TelCPName .............................................................................. 132
Figure D.2 — Register TelCPName (But the specified TelCPName is already in use.) ....... 133
Figure D.3 — Keep using the same TelCPName ............................................................ 134
CallManagement:2 — 5 —
Copyright UPnP Forum © 2012. All rights reserved.
Figure D.4 — Keep using the same TelCPName (But the specified Secret Key is
invalid.) ..................................................................................................................... 135
Figure D.5 — Change TelCPName ............................................................................... 136
Figure D.6 — Change TelCPName (But the specified Secret Key is invalid.) ..................... 137
Figure D.7 — Change TelCPName (But the specified TelCPName is already in use.) ........ 138
Figure D.8 — Unregister TelCPName ........................................................................... 139
Figure D.9 — Unregister TelCPName (But the specified TelCPName does not exist.) ........ 140
Figure D.10 — Get existing TelCPNames ...................................................................... 141
Figure D.11 — Get existing TelCPNames (But no TelCP exists) ...................................... 142
Figure D.12 — Create a Call ........................................................................................ 144
Figure D.13 — Terminate a Call ................................................................................... 160
Figure D.14 — Reject an incoming Call ......................................................................... 165
Figure D.15 — Cancel an outgoing Call ........................................................................ 168
Figure D.16 — Cancel an outgoing Call (But the specified CallID does not exist.).............. 171
Figure D.17 — Cancel an outgoing Call (But the StopCall() action is invoked at invalid
timing.) ...................................................................................................................... 172
Figure D.18 — Get MediaSessionInfo and CallInfo during the Call ................................... 173
Figure D.19 — Create an outgoing Call using multiple TCs (Case 1) ................................ 176
Figure D.20 — Create an outgoing Call using multiple TCs (Case 2) ................................ 190
Figure D.21 — Accept an incoming Call using multiple TCs (Case 1) ............................... 195
Figure D.22 — Accept an incoming Call using multiple TCs (Case 2) ............................... 208
Figure D.23 — Add TC during a Call (Create a modification request) ............................... 212
Figure D.24 — Add TC during a Call (Accept a modification request) ............................... 222
Figure D.25 — Remove TC during a Call (Create a modification request) ......................... 231
Figure D.26 — Remove TC during a Call (Accept a modification request) ......................... 237
Figure D.27 — Change TC during a Call ....................................................................... 244
Figure D.28 — Modify Media Session during a Call ........................................................ 253
Figure D.29 — Initiate a Call ........................................................................................ 261
Figure D.30 — Create an outgoing Call (Monopolization Mode Call(PHONE-TelCP)) ......... 264
Figure D.31 — Terminate a Call (But the specified TelCP is not authorized.) .................... 279
Figure D.32 — Cancel an outgoing Call (But the specified TelCP is not authorized.) .......... 280
Figure D.33 — Change TelCP which Monopolize the Call ............................................... 281
Figure D.34 — Create a Call with TC-Based and TS-Based Media Handlings ................... 284
Table 1 — State Variables ............................................................................................. 25
Table 2 — Allowed values for type ................................................................................. 27
Table 3 — Alllowed values for callStatus ......................................................................... 27
Table 4 — Allowed values for reason and the corresponding values of the Call Status ......... 28
Table 5 — Allowed values for priority .............................................................................. 29
Table 6 — Allowed values for format .............................................................................. 29
Table 7 — Alllowed values for priority ............................................................................. 31
Table 8 — Alllowed values for informationType ................................................................ 33