org.freedesktop.ModemManager1.Modem.Voice

org.freedesktop.ModemManager1.Modem.Voice — The ModemManager Voice interface.

Methods

ListCalls        (OUT ao    result);
DeleteCall       (IN  o     path);
CreateCall       (IN  a{sv} properties,
                  OUT o     path);
HoldAndAccept    ();
HangupAndAccept  ();
HangupAll        ();
Transfer         ();
CallWaitingSetup (IN  b     enable);
CallWaitingQuery (OUT b     status);

Signals

CallAdded   (o path);
CallDeleted (o path);

Properties

Calls          readable   ao
EmergencyOnly  readable   b

Description

The Voice interface handles Calls.

This interface will only be available once the modem is ready to be registered in the cellular network. 3GPP devices will require a valid unlocked SIM card before any of the features in the interface can be used.

Method Details

The ListCalls() method

ListCalls (OUT ao result);

Retrieve all Calls.

This method should only be used once and subsequent information retrieved either by listening for the org.freedesktop.ModemManager1.Modem.Voice::Added signal, or by querying the specific Call object of interest.

OUT ao result:

The list of call object paths.


The DeleteCall() method

DeleteCall (IN  o path);

Delete a Call from the list of calls.

The call will be hangup if it is still active.

IN o path:

The object path of the Call to delete.


The CreateCall() method

CreateCall (IN  a{sv} properties,
            OUT o     path);

Creates a new call object for a new outgoing call.

The 'Number' is the only expected property to set by the user.

IN a{sv} properties:

Call properties from the Call D-Bus interface.

OUT o path:

The object path of the new call object.


The HoldAndAccept() method

HoldAndAccept ();

Place all active calls on hold, if any, and accept the next call.

Waiting calls have preference over held calls, so the next call being active will be any waiting call, or otherwise, any held call.

The user should monitor the state of all available ongoing calls to be reported of which one becomes active.

No error is returned if there are no waiting or held calls.


The HangupAndAccept() method

HangupAndAccept ();

Hangup all active calls, if any, and accept the next call.

Waiting calls have preference over held calls, so the next call being active will be any waiting call, or otherwise, any held call.

The user should monitor the state of all available ongoing calls to be reported of which one becomes active.

No error is returned if there are no waiting or held calls. In this case, this method would be equivalent to calling Hangup() on the active call.


The HangupAll() method

HangupAll ();

Hangup all active calls.

Depending on how the device implements the action, calls on hold or in waiting state may also be terminated.

No error is returned if there are no ongoing calls.


The Transfer() method

Transfer ();

Join the currently active and held calls together into a single multiparty call, but disconnects from them.

The affected calls will be considered terminated from the point of view of the subscriber.


The CallWaitingSetup() method

CallWaitingSetup (IN  b enable);

Activates or deactivates the call waiting network service, as per 3GPP TS 22.083.

This operation requires communication with the network in order to complete, so the modem must be successfully registered.

IN b enable:


The CallWaitingQuery() method

CallWaitingQuery (OUT b status);

Queries the status of the call waiting network service, as per 3GPP TS 22.083.

This operation requires communication with the network in order to complete, so the modem must be successfully registered.

OUT b status:

Signal Details

The "CallAdded" signal

CallAdded (o path);

Emitted when a call has been added.

o path:

Object path of the new call.


The "CallDeleted" signal

CallDeleted (o path);

Emitted when a call has been deleted.

o path:

Object path of the now deleted Call.

Property Details

The "Calls" property

Calls  readable   ao

The list of calls object paths.


The "EmergencyOnly" property

EmergencyOnly  readable   b

A flag indicating whether emergency calls are the only allowed ones.

If this flag is set, users should only attempt voice calls to emergency numbers, as standard voice calls will likely fail.