2009-08-12 23:43:34 +00:00
|
|
|
VoiceCallManager hierarchy
|
|
|
|
==========================
|
|
|
|
|
|
|
|
Service org.ofono
|
|
|
|
Interface org.ofono.VoiceCallManager
|
|
|
|
Object path [variable prefix]/{modem0,modem1,...}
|
|
|
|
|
2010-11-24 14:56:11 +00:00
|
|
|
Methods dict GetProperties()
|
|
|
|
|
|
|
|
Returns properties for the VoiceCallManager Interface.
|
|
|
|
See the properties section for available properties.
|
|
|
|
|
|
|
|
array{object,dict} GetCalls()
|
2009-08-12 23:43:34 +00:00
|
|
|
|
2010-08-11 18:26:14 +00:00
|
|
|
Get an array of call object paths and properties
|
|
|
|
that represents the currently present calls.
|
2009-08-12 23:43:34 +00:00
|
|
|
|
2010-08-11 18:26:14 +00:00
|
|
|
This method call should only be used once when an
|
|
|
|
application starts up. Further call additions and
|
2010-09-08 19:39:20 +00:00
|
|
|
removal shall be monitored via CallAdded and
|
2010-08-11 18:26:14 +00:00
|
|
|
CallRemoved signals.
|
2009-08-12 23:43:34 +00:00
|
|
|
|
|
|
|
object Dial(string number, string hide_callerid)
|
|
|
|
|
|
|
|
Initiates a new outgoing call. Returns the object path
|
2010-11-18 15:11:45 +00:00
|
|
|
to the newly created call. The hide_callerid variable
|
|
|
|
holds the CLIR override for this call.
|
2009-08-12 23:43:34 +00:00
|
|
|
The defines values are:
|
2010-11-18 15:11:45 +00:00
|
|
|
"" or "default" - Default (Network) CLIR mode
|
2009-08-12 23:43:34 +00:00
|
|
|
is used
|
|
|
|
"enabled" - Hides callerid, CLIR Invocation
|
|
|
|
is used
|
|
|
|
"disabled" - Shows callerid, CLIR Suppression
|
|
|
|
is used
|
|
|
|
|
2012-07-25 14:16:59 +00:00
|
|
|
The number must be a string in the following format:
|
|
|
|
[+][0-9*#]{1,80}
|
|
|
|
In other words, it must be a non-empty string
|
|
|
|
optionally prefixed with a '+' followed by 1 to 80
|
|
|
|
characters. The character set can contain numbers,
|
|
|
|
'*' and '#'. Besides this sanity checking no further
|
|
|
|
number validation is performed. It is assumed the
|
|
|
|
network will perform further validation. The optional
|
|
|
|
'+' denotes an international number format. For
|
|
|
|
example:
|
|
|
|
+15551234567 - International format
|
|
|
|
5551234567 - National / Uknown format
|
|
|
|
|
|
|
|
This method is usually implemented using the ATD AT
|
|
|
|
command.
|
2009-08-12 23:43:34 +00:00
|
|
|
|
2011-10-13 17:42:33 +00:00
|
|
|
NOTE: If an active call (single or multiparty) exists,
|
|
|
|
then it is automatically put on hold if the dial
|
|
|
|
procedure is successful.
|
|
|
|
|
2011-02-11 11:34:31 +00:00
|
|
|
Possible Errors: [service].Error.InProgress
|
|
|
|
[service].Error.InvalidArguments
|
|
|
|
[service].Error.InvalidFormat
|
|
|
|
[service].Error.NotImplemented
|
|
|
|
[service].Error.Failed
|
|
|
|
|
2017-10-31 08:39:35 +00:00
|
|
|
object DialLast()
|
|
|
|
|
|
|
|
Initiates a new outgoing call to the last dialled number.
|
|
|
|
|
|
|
|
Possible Errors: [service].Error.InProgress
|
|
|
|
[service].Error.InvalidArguments
|
|
|
|
[service].Error.InvalidFormat
|
|
|
|
[service].Error.NotImplemented
|
|
|
|
[service].Error.Failed
|
|
|
|
|
2018-02-12 18:37:18 +00:00
|
|
|
object DialMemory(string memory position, string hide_callerid)
|
|
|
|
|
|
|
|
Initiates a new outgoing call to the number in the given memory
|
|
|
|
position/favourite. For callerid see the Dial method.
|
|
|
|
|
|
|
|
Possible Errors: [service].Error.InProgress
|
|
|
|
[service].Error.InvalidArguments
|
|
|
|
[service].Error.InvalidFormat
|
|
|
|
[service].Error.NotImplemented
|
|
|
|
[service].Error.Failed
|
|
|
|
|
2009-08-12 23:43:34 +00:00
|
|
|
void Transfer()
|
|
|
|
|
|
|
|
Joins the currently Active (or Outgoing, depending
|
|
|
|
on network support) and Held calls together and
|
2010-09-14 03:06:00 +00:00
|
|
|
disconnects both calls. In effect transferring
|
2009-08-12 23:43:34 +00:00
|
|
|
one party to the other. This procedure requires
|
|
|
|
an Active and Held call and the Explicit Call Transfer
|
|
|
|
(ECT) supplementary service to be active.
|
|
|
|
|
|
|
|
This functionality is generally implemented by using
|
|
|
|
the +CHLD=4 AT command.
|
|
|
|
|
2011-02-11 11:34:31 +00:00
|
|
|
Possible Errors: [service].Error.InProgress
|
|
|
|
[service].Error.NotImplemented
|
|
|
|
[service].Error.Failed
|
|
|
|
|
2009-08-12 23:43:34 +00:00
|
|
|
void SwapCalls()
|
|
|
|
|
|
|
|
Swaps Active and Held calls. The effect of this
|
2010-08-05 16:21:25 +00:00
|
|
|
is that all calls (0 or more including calls in a
|
2009-08-12 23:43:34 +00:00
|
|
|
multi-party conversation) that were Active are now Held,
|
|
|
|
and all calls (0 or more) that were Held are now Active.
|
|
|
|
|
2010-08-05 16:21:25 +00:00
|
|
|
GSM specification does not allow calls to be swapped
|
2009-08-12 23:43:34 +00:00
|
|
|
in the case where Held, Active and Waiting calls exist.
|
2010-08-05 16:21:25 +00:00
|
|
|
Some modems implement this anyway, thus it is
|
|
|
|
manufacturer specific whether this method will succeed
|
|
|
|
in the case of Held, Active and Waiting calls.
|
2009-08-12 23:43:34 +00:00
|
|
|
|
|
|
|
This functionality is generally implemented by using
|
|
|
|
the +CHLD=2 AT command.
|
|
|
|
|
2011-02-11 11:34:31 +00:00
|
|
|
Possible Errors: [service].Error.InProgress
|
|
|
|
[service].Error.NotImplemented
|
|
|
|
[service].Error.Failed
|
|
|
|
|
2009-08-12 23:43:34 +00:00
|
|
|
void ReleaseAndAnswer()
|
|
|
|
|
2011-01-25 21:58:55 +00:00
|
|
|
Releases currently active call (0 or more) and
|
|
|
|
answers the currently waiting call. Please note that
|
|
|
|
if the current call is a multiparty call, then all
|
|
|
|
parties in the multi-party call will be released.
|
2012-08-06 04:29:54 +00:00
|
|
|
|
|
|
|
Possible Errors: [service].Error.InProgress
|
|
|
|
[service].Error.NotImplemented
|
|
|
|
[service].Error.Failed
|
|
|
|
|
|
|
|
void ReleaseAndSwap()
|
|
|
|
|
|
|
|
Releases currently active call (0 or more) and
|
|
|
|
activates any currently held calls. Please note that
|
|
|
|
if the current call is a multiparty call, then all
|
|
|
|
parties in the multi-party call will be released.
|
2009-08-12 23:43:34 +00:00
|
|
|
|
2011-02-11 11:34:31 +00:00
|
|
|
Possible Errors: [service].Error.InProgress
|
|
|
|
[service].Error.NotImplemented
|
|
|
|
[service].Error.Failed
|
|
|
|
|
2009-08-12 23:43:34 +00:00
|
|
|
void HoldAndAnswer()
|
|
|
|
|
2010-08-05 16:21:25 +00:00
|
|
|
Puts the current call (including multi-party calls) on
|
2009-08-12 23:43:34 +00:00
|
|
|
hold and answers the currently waiting call. Calling
|
|
|
|
this function when a user already has a both Active and
|
|
|
|
Held calls is invalid, since in GSM a user can have
|
|
|
|
only a single Held call at a time.
|
|
|
|
|
2012-08-13 08:06:26 +00:00
|
|
|
Possible Errors: [service].Error.InProgress
|
2011-02-11 11:34:31 +00:00
|
|
|
[service].Error.NotImplemented
|
|
|
|
[service].Error.Failed
|
|
|
|
|
2009-10-16 09:47:48 +00:00
|
|
|
void HangupAll()
|
2009-08-12 23:43:34 +00:00
|
|
|
|
2011-10-13 17:42:33 +00:00
|
|
|
Releases all calls except waiting calls. This includes
|
|
|
|
multiparty calls.
|
2009-08-12 23:43:34 +00:00
|
|
|
|
2012-08-13 08:06:26 +00:00
|
|
|
Possible Errors: [service].Error.InProgress
|
2011-02-11 11:34:31 +00:00
|
|
|
[service].Error.NotImplemented
|
|
|
|
[service].Error.Failed
|
|
|
|
|
2009-08-12 23:43:34 +00:00
|
|
|
array{object} PrivateChat(object call)
|
|
|
|
|
|
|
|
Places the multi-party call on hold and makes desired
|
|
|
|
call active. This is used to accomplish private chat
|
|
|
|
functionality. Note that if there are only two calls
|
|
|
|
(three parties) in the multi-party call the result will
|
|
|
|
be two regular calls, one held and one active. The
|
|
|
|
Multiparty call will need to be setup again by using the
|
|
|
|
CreateMultiparty method. Returns the new list of calls
|
|
|
|
participating in the multiparty call.
|
|
|
|
|
|
|
|
This is usually implemented using the +CHLD=2X command.
|
|
|
|
|
2012-08-13 08:06:26 +00:00
|
|
|
Possible Errors: [service].Error.InProgress
|
2011-02-11 11:34:31 +00:00
|
|
|
[service].Error.InvalidArguments
|
|
|
|
[service].Error.InvalidFormat
|
|
|
|
[service].Error.NotFound
|
|
|
|
[service].Error.NotImplemented
|
|
|
|
[service].Error.Failed
|
|
|
|
|
2009-08-12 23:43:34 +00:00
|
|
|
array{object} CreateMultiparty()
|
|
|
|
|
|
|
|
Joins active and held calls together into a multi-party
|
|
|
|
call. If one of the calls is already a multi-party
|
|
|
|
call, then the other call is added to the multiparty
|
|
|
|
conversation. Returns the new list of calls
|
|
|
|
participating in the multiparty call.
|
|
|
|
|
|
|
|
There can only be one subscriber controlled multi-party
|
2010-08-05 16:21:25 +00:00
|
|
|
call according to the GSM specification.
|
2009-08-12 23:43:34 +00:00
|
|
|
|
|
|
|
This is usually implemented using the +CHLD=3 AT
|
|
|
|
command.
|
|
|
|
|
2012-08-13 08:06:26 +00:00
|
|
|
Possible Errors: [service].Error.InProgress
|
2011-02-11 11:34:31 +00:00
|
|
|
[service].Error.NotImplemented
|
|
|
|
[service].Error.Failed
|
|
|
|
|
2009-08-12 23:43:34 +00:00
|
|
|
void HangupMultiparty()
|
|
|
|
|
|
|
|
Hangs up the multi-party call. All participating
|
|
|
|
calls are released.
|
|
|
|
|
2012-08-13 08:06:26 +00:00
|
|
|
Possible Errors: [service].Error.InProgress
|
2011-02-11 11:34:31 +00:00
|
|
|
[service].Error.NotImplemented
|
|
|
|
[service].Error.Failed
|
|
|
|
|
2009-08-12 23:43:34 +00:00
|
|
|
void SendTones(string tones)
|
|
|
|
|
2010-07-06 17:17:52 +00:00
|
|
|
Sends the DTMF tones to the network. The tones have
|
|
|
|
a fixed duration. Tones can be one of: '0' - '9',
|
|
|
|
'*', '#', 'A', 'B', 'C', 'D'. The last four are
|
|
|
|
typically not used in normal circumstances.
|
2009-08-12 23:43:34 +00:00
|
|
|
|
2012-08-13 08:06:26 +00:00
|
|
|
Possible Errors: [service].Error.InProgress
|
2011-02-11 11:34:31 +00:00
|
|
|
[service].Error.NotImplemented
|
|
|
|
[service].Error.InvalidArguments
|
|
|
|
[service].Error.InvalidFormat
|
|
|
|
[service].Error.Failed
|
|
|
|
|
2010-08-11 18:26:14 +00:00
|
|
|
Signals CallAdded(object path, dict properties)
|
2009-08-12 23:43:34 +00:00
|
|
|
|
2010-08-11 18:26:14 +00:00
|
|
|
Signal that is sent when a new call is added. It
|
|
|
|
contains the object path of the new voice call and
|
|
|
|
also its properties.
|
2009-08-12 23:43:34 +00:00
|
|
|
|
2010-08-11 18:26:14 +00:00
|
|
|
Applications get the whole properties via this
|
|
|
|
signal and don't need to call GetProperties on
|
|
|
|
the voice call object.
|
2009-08-12 23:43:34 +00:00
|
|
|
|
2010-08-11 18:26:14 +00:00
|
|
|
CallRemoved(object path)
|
2009-08-12 23:43:34 +00:00
|
|
|
|
2010-08-11 18:26:14 +00:00
|
|
|
Signal that is sent when a voice call has been
|
|
|
|
released. The object path is no longer accessible
|
|
|
|
after this signal and only emitted for reference.
|
2010-08-12 18:22:50 +00:00
|
|
|
|
2012-04-19 13:58:20 +00:00
|
|
|
NOTE: If the VoiceCallManager interface becomes
|
|
|
|
unavailable, this signal is not guaranteed to be
|
|
|
|
emitted for remaining calls. The applications are
|
|
|
|
expected to monitor changes in Modem.Interfaces
|
|
|
|
property.
|
|
|
|
|
2010-11-24 21:43:31 +00:00
|
|
|
PropertyChanged(string property, variant value)
|
|
|
|
|
|
|
|
Signal is emitted whenever a property has changed.
|
|
|
|
The new value is passed as the signal argument.
|
|
|
|
|
2011-02-07 19:38:32 +00:00
|
|
|
BarringActive(string type) [experimental]
|
2011-02-07 17:09:32 +00:00
|
|
|
|
|
|
|
Signal emitted when an outgoing voice call is made and
|
|
|
|
the call has been barred by the network due to the
|
|
|
|
remote party's "Call Barring" Supplementary Services
|
|
|
|
settings for incoming calls. In this case the type
|
|
|
|
parameter in the signal set to "remote".
|
|
|
|
The signal is also emitted when an outgoing voice call
|
|
|
|
is made and the call has been barred by the network due
|
|
|
|
to the local "Call Barring" Supplementary Services
|
|
|
|
settings for outgoing calls. In this case the type
|
|
|
|
parameter in the signal is set to "local".
|
|
|
|
|
2011-08-05 11:53:58 +00:00
|
|
|
Forwarded(string type) [experimental]
|
2011-02-07 17:09:32 +00:00
|
|
|
|
|
|
|
Signal emitted when an outgoing voice call is made and
|
|
|
|
the call has been redirected to another number due to
|
|
|
|
the remote party's "Call Forwarding" Supplementary
|
|
|
|
Services settings. In this case the type parameter in
|
|
|
|
the signal is set to "outgoing".
|
|
|
|
The signal is also emitted when the incoming voice call
|
|
|
|
is a redirected call due to a call forwarding operation.
|
|
|
|
In this case the type parameter in the signal is set to
|
|
|
|
"incoming".
|
|
|
|
|
2010-12-01 22:25:17 +00:00
|
|
|
Properties array{string} EmergencyNumbers [readonly]
|
2010-08-12 18:22:50 +00:00
|
|
|
|
|
|
|
Contains the list of emergency numbers recognized
|
|
|
|
by oFono. This list is based on the default set
|
|
|
|
of numbers provided by the specification and any
|
|
|
|
extra numbers provisioned by the carrier on the
|
|
|
|
SIM.
|