diff --git a/src/Plugins/BotSharp.Plugin.Twilio/Controllers/TwilioInboundController.cs b/src/Plugins/BotSharp.Plugin.Twilio/Controllers/TwilioInboundController.cs index 9d7df9a0b..1db293f20 100644 --- a/src/Plugins/BotSharp.Plugin.Twilio/Controllers/TwilioInboundController.cs +++ b/src/Plugins/BotSharp.Plugin.Twilio/Controllers/TwilioInboundController.cs @@ -1,4 +1,5 @@ using BotSharp.Abstraction.Agents.Models; +using BotSharp.Abstraction.Infrastructures; using BotSharp.Abstraction.Infrastructures.Enums; using BotSharp.Core.Infrastructures; using BotSharp.Plugin.Twilio.Interfaces; @@ -65,9 +66,13 @@ await HookEmitter.Emit(_services, async hook => if (twilio.MachineDetected(request)) { response = new VoiceResponse(); - + + var emitOptions = new HookEmitOption + { + ShouldExecute = hook => hook.IsMatch(request) + }; await HookEmitter.Emit(_services, - async hook => await hook.OnVoicemailStarting(request)); + async hook => await hook.OnVoicemailStarting(request), emitOptions); var url = twilio.GetSpeechPath(request.ConversationId, "voicemail.mp3"); response.Play(new Uri(url)); diff --git a/src/Plugins/BotSharp.Plugin.Twilio/Controllers/TwilioOutboundController.cs b/src/Plugins/BotSharp.Plugin.Twilio/Controllers/TwilioOutboundController.cs index 4796c02d2..4cb13a619 100644 --- a/src/Plugins/BotSharp.Plugin.Twilio/Controllers/TwilioOutboundController.cs +++ b/src/Plugins/BotSharp.Plugin.Twilio/Controllers/TwilioOutboundController.cs @@ -1,3 +1,4 @@ +using BotSharp.Abstraction.Infrastructures; using BotSharp.Core.Infrastructures; using BotSharp.Plugin.Twilio.Interfaces; using BotSharp.Plugin.Twilio.Models; @@ -33,8 +34,12 @@ public async Task InitiateOutboundCall(ConversationalVoiceRequest r { response = new VoiceResponse(); + var emitOptions = new HookEmitOption + { + ShouldExecute = hook => hook.IsMatch(request) + }; await HookEmitter.Emit(_services, - async hook => await hook.OnVoicemailStarting(request)); + async hook => await hook.OnVoicemailStarting(request), emitOptions); var url = twilio.GetSpeechPath(request.ConversationId, "voicemail.mp3"); response.Play(new Uri(url));