OnCallBusyStatus

This commit is contained in:
Haiping Chen 2025-04-01 14:30:44 -05:00
parent 44f01f1158
commit c89ad76ddb
2 changed files with 13 additions and 0 deletions

View file

@ -348,6 +348,10 @@ public class TwilioVoiceController : TwilioController
await HookEmitter.Emit<ITwilioCallStatusHook>(_services, x => x.OnUserDisconnected(request));
}
}
else if (request.CallStatus == "busy")
{
await HookEmitter.Emit<ITwilioCallStatusHook>(_services, x => x.OnCallBusyStatus(request));
}
return Ok();
}

View file

@ -10,4 +10,13 @@ public interface ITwilioCallStatusHook
Task OnRecordingCompleted(ConversationalVoiceRequest request);
Task OnTranscribeCompleted(ConversationalVoiceRequest request);
Task OnVoicemailStarting(ConversationalVoiceRequest request);
/// <summary>
/// 1. The recipient's phone line is already engaged.
/// 2. Some users block unknown or spam calls, which may cause a "busy" status.
/// 3. Some carriers explicitly return a busy signal instead of routing the call to voicemail.
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
Task OnCallBusyStatus(ConversationalVoiceRequest request);
}