fb8f09925625fc9dba5a92dd8ae93cfcec1daa2c
[profile/ivi/ofono.git] / doc / voicecall-api.txt
1 VoiceCall hierarchy
2 ===================
3
4 Service         org.ofono
5 Interface       org.ofono.VoiceCall
6 Object path     [variable prefix]/{modem0,modem1,...}/{voicecall01,voicecall02,...}
7
8 Methods         dict GetProperties()
9
10                         Returns all properties for this object. See the
11                         properties section for available properties.
12
13                 void Deflect(string number)
14
15                         Deflects the incoming or waiting call to number given
16                         in the argument.  This method is only valid if the
17                         call is in "incoming" or "waiting" state and the
18                         Call Deflection supplementary service is subscribed to.
19
20                         This functionality is generally implemented by using
21                         the +CHLD=4 * NUMBER command.
22
23                         This method should not be confused with the Transfer()
24                         method.
25
26                         Possible Errors: [service].Error.InProgress
27                                          [service].Error.NotImplemented
28                                          [service].Error.InvalidArguments
29                                          [service].Error.InvalidFormat
30                                          [service].Error.Failed
31
32                 void Hangup()
33
34                         Hangs up the voice call.
35
36                         For an incoming call, the call is hung up using ATH or
37                         equivalent.  For a waiting call, the remote party is
38                         notified by using the User Determined User Busy (UDUB)
39                         condition.  This is generally implemented using CHLD=0.
40
41                         Please note that the GSM specification does not allow
42                         the release of a held call when a waiting call exists,
43                         or the release of a particular party in a held
44                         multiparty call.
45
46                         Note that releasing a held call or a particular party
47                         of a held multiparty call might not be possible on some
48                         implementations.
49
50                         NOTE: Releasing active calls does not produce
51                         side-effects.  That is the state of held or waiting
52                         calls is not affected.
53
54                         Possible Errors: [service].Error.InProgress
55                                          [service].Error.Failed
56                                          [service].Error.NotImplemented
57
58                 void Answer()
59
60                         Answers the incoming call.  Only valid if the state
61                         of the call is "incoming."
62
63                         This functionality is generally implemented by ATA
64                         AT command.
65
66                         Possible Errors: [service].Error.InProgress
67                                          [service].Error.Failed
68                                          [service].Error.NotImplemented
69                                          [service].Error.Failed
70
71 Signals         PropertyChanged(string property, variant value)
72
73                         Signal is emitted whenever a property has changed.
74                         The new value is passed as the signal argument.
75
76                 DisconnectReason(string reason)
77
78                         This signal is emitted when the modem manager can
79                         provide extra information about why this call was
80                         released. The possible reason values are:
81                                 "local" - The call was release due to local
82                                                 user action
83                                 "remote" - Remote party released the call
84                                 "network" - Network released the call, most
85                                                 likely due to low signal or
86                                                 other network failure
87
88                         Not all implementations are able to provide this
89                         information, so applications should treat the emission
90                         of this signal as optional. This signal will be
91                         emitted before the PropertyChanged signal.
92
93 Properties      string LineIdentification [readonly]
94
95                         Contains the Line Identification information returned
96                         by the network, if present. For incoming calls this is
97                         effectively the CLIP. For outgoing calls this attribute
98                         will hold the dialed number, or the COLP if received by
99                         the underlying implementation.
100
101                         Please note that COLP may be different from the
102                         dialed number. A special "withheld" value means the
103                         remote party refused to provide caller ID and the
104                         "override category" option was not provisioned for
105                         the current subscriber.
106
107                 string IncomingLine [readonly, optional]
108
109                         Contains the Called Line Identification information
110                         returned by the network. This is only available for
111                         incoming calls and indicates the local subscriber
112                         number which was dialed by the remote party. This is
113                         useful for subscribers which have a multiple line
114                         service with their network provider and would like
115                         to know what line the call is coming in on.
116
117                 string Name [readonly]
118
119                         Contains the Name Identification information returned
120                         by the network, if present.
121
122                 boolean Multiparty [readonly]
123
124                         Contains the indication if the voice call is part
125                         of a multiparty call or not.
126
127                         Notifications if a call becomes part or leaves a
128                         multipart call are sent.
129
130                 string State [readonly]
131
132                         Contains the state of the current call.  The state
133                         can be one of:
134                                 - "active" - The call is active
135                                 - "held" - The call is on hold
136                                 - "dialing" - The call is being dialed
137                                 - "alerting" - The remote party is being alerted
138                                 - "incoming" - Incoming call in progress
139                                 - "waiting" - Call is waiting
140                                 - "disconnected" - No further use of this object
141                                         is allowed, it will be destroyed shortly
142
143                 string StartTime [readonly, optional]
144
145                         Contains the starting time of the call.  The time is
146                         stamped when the call enters the "active" state.
147                         Client applications can use this to infer somewhat
148                         reliable call duration information.
149
150                 string Information [readonly, optional]
151
152                         Contains information related to the call for the
153                         user.  Currently this property is set for calls
154                         initiated by SIM Toolkit applications.
155
156                 byte Icon [readonly, optional]
157
158                         Icon identifier to be used instead of or together
159                         with the text information.
160
161                 boolean Emergency [readonly]
162
163                         Contains the indication if the voice call is an
164                         emergency call or not.
165
166                 boolean RemoteHeld [experimental]
167
168                         Contains the indication whether the voice call is put
169                         on hold by the remote party or not.
170
171                 boolean RemoteMultiparty [experimental]
172
173                         Contains the indication whether the voice call is
174                         joined in a multiparty call by the remote party or not.