Commits on Source (28)
-
Aleksander Morgado authored
Don't return FALSE when call is successfully accepted, otherwise the caller will get very confused: ModemManager[19952]: <debug> [1528968478.344338] (ttyACM2): --> 'ATA<CR>' ModemManager[19952]: <debug> [1528968478.361986] (ttyACM2): <-- '<CR><LF>OK<CR><LF>' (ModemManager:19952): GLib-GIO-CRITICAL **: 11:27:58.387: g_dbus_method_invocation_take_error: assertion 'error != NULL' failed And also, make sure the async task is always finished, even when mm_base_modem_at_command_finish() returns an error which is not MM_SERIAL_ERROR_RESPONSE_TIMEOUT.
-
Aleksander Morgado authored
Make sure the async task is always finished, even when mm_base_modem_at_command_finish() returns an error which is not MM_SERIAL_ERROR_RESPONSE_TIMEOUT.
-
Aleksander Morgado authored
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.
-
Aleksander Morgado authored
-
Aleksander Morgado authored
Don't do any call state update on the generic implementation of the commands, do it in the common interface logic exclusively. We were doing the state updates in both places.
-
Aleksander Morgado authored
The mm_gdbus_call_set_() methods update the properties in the same way as via g_object_set(), no need to do it twice.
-
Aleksander Morgado authored
-
Aleksander Morgado authored
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.
-
Aleksander Morgado authored
Try to automatically detect when the caller finishes the attempt to establish the call.
-
Aleksander Morgado authored
In order to detect state changes while we're in-call, we have to monitor the standard connection errors we're used to, but have them processed as URCs instead of as responses to ATD requests.
-
Aleksander Morgado authored
-
Aleksander Morgado authored
Totally equivalent to the default one in the MMBaseCall object.
-
Aleksander Morgado authored
-
Aleksander Morgado authored
These are not used for anything, so just simplify code.
-
Aleksander Morgado authored
Instead of handling the URCs in the modem object and using the MMIfaceModem as a bridge to report the status read from the URC to a call obtained from the MMCallList... just handle the URCs in the call object itself.
-
Aleksander Morgado authored
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.
-
Aleksander Morgado authored
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).
-
Aleksander Morgado authored
So that we setup in-call events as soon as we get the incoming call ringing in. This allows us to have plugin-specific implementations e.g. reporting call termination when the remote caller hangs up.
-
Aleksander Morgado authored
Allow creating a new incoming call object also when we receive +CLIP, so that we can have the remote caller number as soon as the object is created.
-
Aleksander Morgado authored
-
Aleksander Morgado authored
Among other things, we now support: * Dialing to Ringing Out transition. * Ringing Out to Active transition.
-
Dan Williams authored
-
Aleksander Morgado authored
-
Aleksander Morgado authored
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).
-
Dan Williams authored
-
Aleksander Morgado authored
USB sticks only support voice if ^CVOICE returns 0. And to enable audio streaming on the "Application" port (whatever is returned by AT^DDSETEX=?) we need to send AT^DDSETEX=<port> after starting the call. After that the serial port will send and accept signed 16-bit 8000hz PCM audio, or whatever format is returned by ^CVOICE?. This patch is a rework of the original implementation by: Dan Williams <dcbw@redhat.com>
-
Ben Chan authored
-
This patch fixes the following compiler warning: mm-modem-helpers-qmi.c:568:5: error: implicitly declaring library function 'memset' with type 'void *(void *, int, unsigned int)' [-Werror,-Wimplicit-function-declaration] memset (extended_qmi_lte_bands, 0, extended_qmi_lte_bands_size * sizeof (guint64)); ^
Showing
- cli/mmcli-call.c 23 additions, 0 deletionscli/mmcli-call.c
- docs/reference/libmm-glib/libmm-glib-sections.txt 32 additions, 0 deletionsdocs/reference/libmm-glib/libmm-glib-sections.txt
- include/ModemManager-enums.h 4 additions, 2 deletionsinclude/ModemManager-enums.h
- introspection/org.freedesktop.ModemManager1.Call.xml 39 additions, 0 deletionsintrospection/org.freedesktop.ModemManager1.Call.xml
- libmm-glib/Makefile.am 3 additions, 0 deletionslibmm-glib/Makefile.am
- libmm-glib/mm-call-audio-format.c 276 additions, 0 deletionslibmm-glib/mm-call-audio-format.c
- libmm-glib/mm-call-audio-format.h 88 additions, 0 deletionslibmm-glib/mm-call-audio-format.h
- libmm-glib/mm-call.c 188 additions, 0 deletionslibmm-glib/mm-call.c
- libmm-glib/mm-call.h 8 additions, 2 deletionslibmm-glib/mm-call.h
- plugins/Makefile.am 2 additions, 0 deletionsplugins/Makefile.am
- plugins/huawei/mm-broadband-modem-huawei.c 93 additions, 266 deletionsplugins/huawei/mm-broadband-modem-huawei.c
- plugins/huawei/mm-broadband-modem-huawei.h 1 addition, 0 deletionsplugins/huawei/mm-broadband-modem-huawei.h
- plugins/huawei/mm-call-huawei.c 365 additions, 61 deletionsplugins/huawei/mm-call-huawei.c
- plugins/huawei/mm-call-huawei.h 10 additions, 1 deletionplugins/huawei/mm-call-huawei.h
- plugins/huawei/mm-modem-helpers-huawei.c 63 additions, 0 deletionsplugins/huawei/mm-modem-helpers-huawei.c
- plugins/huawei/mm-modem-helpers-huawei.h 8 additions, 0 deletionsplugins/huawei/mm-modem-helpers-huawei.h
- plugins/ublox/mm-broadband-modem-ublox.c 150 additions, 2 deletionsplugins/ublox/mm-broadband-modem-ublox.c
- plugins/ublox/mm-call-ublox.c 194 additions, 0 deletionsplugins/ublox/mm-call-ublox.c
- plugins/ublox/mm-call-ublox.h 50 additions, 0 deletionsplugins/ublox/mm-call-ublox.h
- src/mm-base-call.c 417 additions, 265 deletionssrc/mm-base-call.c
libmm-glib/mm-call-audio-format.c
0 → 100644
libmm-glib/mm-call-audio-format.h
0 → 100644
plugins/ublox/mm-call-ublox.c
0 → 100644
plugins/ublox/mm-call-ublox.h
0 → 100644
This diff is collapsed.