diff --git a/src/calls-call-display.c b/src/calls-call-display.c index bf98958..c8b1bc4 100644 --- a/src/calls-call-display.c +++ b/src/calls-call-display.c @@ -34,6 +34,8 @@ #include +#include + struct _CallsCallDisplay { GtkOverlay parent_instance; @@ -103,11 +105,17 @@ mute_toggled_cb (GtkToggleButton *togglebutton, g_autoptr (GError) error = NULL; want_mute = gtk_toggle_button_get_active (togglebutton); - ret = call_audio_mute_mic (want_mute, &error); - if (!ret && error) - g_warning ("Failed to %smute microphone: %s", - want_mute ? "" : "un", - error->message); + + gchar* command = g_strdup_printf("/usr/bin/mmcli -m 0 --command=AT+CMUT=%d",want_mute?1:0); + + int exit_code; + + ret = g_spawn_command_line_sync(command, NULL,NULL,&exit_code, &error); + + if(!ret || error || exit_code != 0){ + g_warning ("Failed to %smute microphone (mmcli exit code: %d)", + want_mute ? "" : "un", exit_code); + } }