ofono/doc/voicecallmanager-api.txt

154 lines
4.9 KiB
Plaintext

VoiceCallManager hierarchy
==========================
Service org.ofono
Interface org.ofono.VoiceCallManager
Object path [variable prefix]/{modem0,modem1,...}
Methods dict GetProperties()
Returns properties for the VoiceCallManager Interface.
See the properties section for available properties.
Possible Errors: [service].Error.InvalidArguments
array{object,dict} GetCalls()
Get an array of call object paths and properties
that represents the currently present calls.
This method call should only be used once when an
application starts up. Further call additions and
removal shall be monitored via CallAdded and
CallRemoved signals.
object Dial(string number, string hide_callerid)
Initiates a new outgoing call. Returns the object path
to the newly created call. The hide_callerid variable
holds the CLIR override for this call.
The defines values are:
"" or "default" - Default (Network) CLIR mode
is used
"enabled" - Hides callerid, CLIR Invocation
is used
"disabled" - Shows callerid, CLIR Suppression
is used
This is usually implemented using the ATD AT command.
void Transfer()
Joins the currently Active (or Outgoing, depending
on network support) and Held calls together and
disconnects both calls. In effect transferring
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.
void SwapCalls()
Swaps Active and Held calls. The effect of this
is that all calls (0 or more including calls in a
multi-party conversation) that were Active are now Held,
and all calls (0 or more) that were Held are now Active.
GSM specification does not allow calls to be swapped
in the case where Held, Active and Waiting calls exist.
Some modems implement this anyway, thus it is
manufacturer specific whether this method will succeed
in the case of Held, Active and Waiting calls.
This functionality is generally implemented by using
the +CHLD=2 AT command.
void ReleaseAndAnswer()
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.
void HoldAndAnswer()
Puts the current call (including multi-party calls) on
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.
void HangupAll()
Releases all calls.
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.
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
call according to the GSM specification.
This is usually implemented using the +CHLD=3 AT
command.
void HangupMultiparty()
Hangs up the multi-party call. All participating
calls are released.
void SendTones(string tones)
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.
Signals CallAdded(object path, dict properties)
Signal that is sent when a new call is added. It
contains the object path of the new voice call and
also its properties.
Applications get the whole properties via this
signal and don't need to call GetProperties on
the voice call object.
CallRemoved(object path)
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.
PropertyChanged(string property, variant value)
Signal is emitted whenever a property has changed.
The new value is passed as the signal argument.
Properties array{string} EmergencyNumbers [readonly]
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.