diff options
author | Dan Williams <dan@ioncontrol.co> | 2025-04-25 07:24:38 -0500 |
---|---|---|
committer | Dan Williams <dan@ioncontrol.co> | 2025-05-30 08:02:48 -0500 |
commit | ae3d37030a451eda2680af02cc63ba7bfbeeacbf (patch) | |
tree | 1e01e91941dd881d1ab4783d4f3dc0bedf259b22 /src/mm-call-at.c | |
parent | 56fe8e7d314c637d6df45f693e2377b18685a405 (diff) |
base-call: handle multiple DTMF characters
Send each character through the state machine one at a time. Some
modems (various Quectel ones for example) can process multiple at
the same time, and while that should be easily implemented using
the new changes to send_dtmf() it's not done in any plugin yet.
Signed-off-by: Dan Williams <dan@ioncontrol.co>
Diffstat (limited to 'src/mm-call-at.c')
-rw-r--r-- | src/mm-call-at.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/mm-call-at.c b/src/mm-call-at.c index 0a81b929..3a1c3263 100644 --- a/src/mm-call-at.c +++ b/src/mm-call-at.c @@ -312,12 +312,12 @@ call_hangup (MMBaseCall *_self, /*****************************************************************************/ /* Send DTMF tone to call */ -static gboolean +static gssize call_send_dtmf_finish (MMBaseCall *self, GAsyncResult *res, GError **error) { - return g_task_propagate_boolean (G_TASK (res), error); + return g_task_propagate_int (G_TASK (res), error); } static void @@ -338,7 +338,8 @@ call_send_dtmf_ready (MMBaseModem *modem, return; } - g_task_return_boolean (task, TRUE); + /* We sent one character */ + g_task_return_int (task, 1); g_object_unref (task); } |