res_stasis_recording.c: Save recording state when unmuted.

Fixes #322

(cherry picked from commit b952a8c38d)
This commit is contained in:
Sean Bright
2023-09-12 11:26:45 -04:00
committed by Asterisk Development Team
parent 2fb8dbc679
commit fd7a35fad8

View File

@@ -547,27 +547,27 @@ static int recording_unpause(struct stasis_app_recording *recording)
AST_CONTROL_RECORD_SUSPEND); AST_CONTROL_RECORD_SUSPEND);
} }
static int recording_mute(struct stasis_app_recording *recording) static int toggle_recording_mute(struct stasis_app_recording *recording, int desired_mute_state)
{ {
if (recording->muted) { if (recording->muted == desired_mute_state) {
/* already muted */ /* already in desired state */
return 0; return 0;
} }
recording->muted = 1; recording->muted = desired_mute_state;
return stasis_app_control_queue_control(recording->control, return stasis_app_control_queue_control(recording->control,
AST_CONTROL_RECORD_MUTE); AST_CONTROL_RECORD_MUTE);
} }
static int recording_mute(struct stasis_app_recording *recording)
{
return toggle_recording_mute(recording, 1);
}
static int recording_unmute(struct stasis_app_recording *recording) static int recording_unmute(struct stasis_app_recording *recording)
{ {
if (!recording->muted) { return toggle_recording_mute(recording, 0);
/* already unmuted */
return 0;
}
return stasis_app_control_queue_control(recording->control,
AST_CONTROL_RECORD_MUTE);
} }
recording_operation_cb operations[STASIS_APP_RECORDING_STATE_MAX][STASIS_APP_RECORDING_OPER_MAX] = { recording_operation_cb operations[STASIS_APP_RECORDING_STATE_MAX][STASIS_APP_RECORDING_OPER_MAX] = {