aboutsummaryrefslogtreecommitdiff
path: root/src/mm-base-call.h
AgeCommit message (Collapse)Author
2020-09-19core: add autoptr cleanup methods to all internal typesAleksander Morgado
2019-10-17base-call: catch terminated errors before ATD repliesAleksander Morgado
If we get one of the in-call termination errors before ATD replies OK, we need to cancel the start() operation right away and return an error to the caller. Otherwise, the Call will be reported as "terminated" right away, but the caller would not get an error back until 90s later: $ sudo mmcli --call 0 --start error: couldn't start the call: 'GDBus.Error:org.freedesktop.ModemManager1.Error.Serial.ResponseTimeout: Serial command timed out'
2019-07-12voice,call,cinterion: add Purism as copyright holderAleksander Morgado
The GSM supplementary services related changes, as well as the rework done to manage calls per call id, is copyrighted by Purism SPC.
2019-07-11api,call: new Multiparty boolean propertyAleksander Morgado
It will be set to TRUE if this call is part of a multiparty call.
2019-07-11base-call: remove in-call event and audio settings logicAleksander Morgado
The in-call unsolicited events and the in-call audio settings are managed exclusively at modem level, and no longer at call object level. This is because these two things are applicable to all calls that may be active at the same time.
2019-07-11base-call: allow updating audio settings from out of the call objectAleksander Morgado
E.g. if we want the modem-level in-call state management to provide what audio settings are expected in all ongoing calls.
2019-07-11api,call: new Deflect() methodAleksander Morgado
This method allows deflecting an incoming or waiting call to a different number.
2019-07-11broadband-modem: if +CLCC is supported, call supports detailed eventsAleksander Morgado
2019-07-11base-call: allow skipping the timeout in incoming callsAleksander Morgado
E.g. if the modem supports reporting incoming call updates explicitly.
2019-07-11base-call: allow keeping ongoing call index for easy call matchingAleksander Morgado
2019-07-11base-call: add simple getters for the MmGdbusCall propertiesAleksander Morgado
2018-10-16base-call: implement generic audio channel setup/cleanup handlersAleksander Morgado
Modems that require specific commands to setup or cleanup the audio channel as soon as a call is ongoing can subclass these two new methods. The setup() method is considered part of the call start/accept process, and so if it fails, the whole operation will fail. The failures in the cleanup() method will be reported in the log, but otherwise ignored, as this operation may be executed without any user intervention (e.g. if the remote party hangs up).
2018-10-16api/libmm-glib/cli: add AudioPort and AudioFormat properties to the Call objectDan Williams
2018-10-16mm-iface-mode: provide direction and number when creating callsAleksander Morgado
Calls created from property bundles are always outgoing, while calls created as input events from URCs during runtime are always incoming. This change makes it mandatory to provide at least direction of the call when the object is created, leaving the number as an optional property that may or may not be known in advance (e.g. it would be optional only for incoming calls).
2018-10-16iface-modem-voice: always create plugin-specified call objectsAleksander Morgado
The Voice interface logic must always use the create_call() object from its own interface to create call objects, as that is the method that plugins can subclass to provide plugin-specific call objects. This applies to both incoming and outgoing calls.
2018-10-16base-call: automatically terminate unanswered incoming callsAleksander Morgado
Try to automatically detect when the caller finishes the attempt to establish the call.
2018-10-16base-call: ACTIVE after start() if detailed transitions unavailableAleksander Morgado
The most detailed call state transition flow for a new outgoing call would be: UNKNOWN -> DIALING -> RINGING -> ACTIVE But, if the modem doesn't support reporting intermediate states (e.g. DIALING or RINGING) then a successful start() should imply getting into ACTIVE state right away. For now, only the Huawei plugin implements the detailed transition support, so make them configurable via call object properties.
2018-10-16base-call: setup/cleanup custom events when transitioning to/from in-callAleksander Morgado
2018-10-16base-call: no need to delete call info from the deviceAleksander Morgado
Call information only lives in the ModemManager logic, there is no associated date stored within the device itself. Therefore, simplify everything by assuming there is nothing to remove. Looks like this logic was implemented because it was originally based on the SMS management logic, but for SMS we do have to remove them (the stored PDU parts) from the device.
2018-06-11call-list: coding style fixesAleksander Morgado
2018-01-25*: Spelling fixesVille Skyttä
2015-08-02core,libmm-glib,cli,voice: Replaced 'SendTone' method and 'ToneReceived' ↵Marco Bascetta
signal with 'SendDtmf' and 'DtmfReceived'
2015-08-02core,voice: minor coding style fixesAleksander Morgado
2015-08-02base-call,iface-modem-voice:: handle DTMFMarco Bascetta
2015-08-02base-call: created an unique function to switch call's state and reasonRiccardo Vangelisti
2015-08-02core: implemented new MMBaseCall objectRiccardo Vangelisti