aboutsummaryrefslogtreecommitdiff
path: root/src/mm-iface-modem-voice.c
diff options
context:
space:
mode:
authorDan Williams <dan@ioncontrol.co>2025-05-30 18:54:05 -0500
committerDan Williams <dan@ioncontrol.co>2025-05-30 18:54:05 -0500
commit37f17d4b5859d8a37d1a9350abc9fcb15917de07 (patch)
tree7af9420327a7deea70df1bbcaa004724fed1aec7 /src/mm-iface-modem-voice.c
parent3ed7f378765b45a84ce6c0b4de6751769fefc221 (diff)
parentdad2d49b696c66ccf868bc89b35a6529f9e15777 (diff)
Merge request !1336 from 'dtmf-serialize'
Serialize DTMF requests and allow setting DTMF duration at call creation time https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1336 Closes #970
Diffstat (limited to 'src/mm-iface-modem-voice.c')
-rw-r--r--src/mm-iface-modem-voice.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/mm-iface-modem-voice.c b/src/mm-iface-modem-voice.c
index bca51c83..0bba2a34 100644
--- a/src/mm-iface-modem-voice.c
+++ b/src/mm-iface-modem-voice.c
@@ -161,7 +161,7 @@ create_incoming_call (MMIfaceModemVoice *self,
g_assert (MM_IFACE_MODEM_VOICE_GET_IFACE (self)->create_call != NULL);
- call = MM_IFACE_MODEM_VOICE_GET_IFACE (self)->create_call (self, MM_CALL_DIRECTION_INCOMING, number);
+ call = MM_IFACE_MODEM_VOICE_GET_IFACE (self)->create_call (self, MM_CALL_DIRECTION_INCOMING, number, 0);
update_audio_settings_in_call (self, call);
return call;
}
@@ -173,6 +173,7 @@ create_outgoing_call_from_properties (MMIfaceModemVoice *self,
{
MMBaseCall *call;
const gchar *number;
+ guint dtmf_tone_duration;
/* Don't create CALL from properties if either number is missing */
number = mm_call_properties_get_number (properties) ;
@@ -184,9 +185,14 @@ create_outgoing_call_from_properties (MMIfaceModemVoice *self,
return NULL;
}
+ dtmf_tone_duration = mm_call_properties_get_dtmf_tone_duration (properties) ;
+
/* Create a call object as defined by the interface */
g_assert (MM_IFACE_MODEM_VOICE_GET_IFACE (self)->create_call != NULL);
- call = MM_IFACE_MODEM_VOICE_GET_IFACE (self)->create_call (self, MM_CALL_DIRECTION_OUTGOING, number);
+ call = MM_IFACE_MODEM_VOICE_GET_IFACE (self)->create_call (self,
+ MM_CALL_DIRECTION_OUTGOING,
+ number,
+ dtmf_tone_duration);
update_audio_settings_in_call (self, call);
return call;
}
@@ -3012,7 +3018,7 @@ interface_initialization_step (GTask *task)
/* Create a new call list if not already available (this initialization
* may be called multiple times) */
if (!list) {
- list = mm_call_list_new (MM_BASE_MODEM (self));
+ list = mm_call_list_new ();
g_object_set (self,
MM_IFACE_MODEM_VOICE_CALL_LIST, list,
NULL);