适用于 C# 的 IVR 编程库

IVR Programming Library for C#

本文关键字:编程 IVR 适用于      更新时间:2023-10-16

我想写一个响应调用的程序。 在收到欢迎消息后,它必须告诉客户端:按 1 输入您的帐号,或按 2 与接线员交谈。 如果客户按 1,则告诉他或她输入您的帐号,在他或她输入帐号后,该号码必须保存在数据库中。

这在 c# 中可能吗? 如果是,我想要一个用于 c# 的 IVR 库。 如果没有,我需要一个很棒的 c++ IVR 库。

Microsoft具有Microsoft语音API(SAPI),但是如果您想要简单的IVR,最好不要重新发明轮子并自定义Asterisk实现(我猜它属于"伟大的C ++IVR库"类别(它是C 而不是C ++,但如果你了解C ++,你应该能够理解c)。使用AsteriskNow,你甚至可能不需要编写任何自定义代码,它可能已经做了你想要的。

我不知道 C# 的免费 IVR 库,但我知道有几个相当便宜的:

http://www.voiceelements.com/

http://www.componentsource.com/products/velocity/index.html

来自

Twilio船员的Ricky。

我们有一个关于使用 C# 构建 IVR 的教程,看看这个教程可能有助于了解如何构建这种类型的应用程序。

每当有电话进入我们的电话号码时,都会向我们的服务器发出请求,我们可以在其中使用 TwiML 响应一些基本说明,说明如何处理呼叫:

        public TwiMLResult Welcome()
        {
            var response = new TwilioResponse();
            response.BeginGather(new {action = Url.Action("Show", "Menu"), numDigits = "1"})
                .Play("http://howtodocs.s3.amazonaws.com/et-phone.mp3", new {loop = 3})
                .EndGather();
            return TwiML(response);
        }

由于我们使用动词,当用户按下一个数字时,将向我们服务器上的另一个路由发出新的HTTP请求,我们可以根据用户按下的数字采取行动:

    public TwiMLResult Show(string digits)
    {
        var selectedOption = digits;
        var optionActions = new Dictionary<string, Func<TwiMLResult>>()
        {
            {"1", ReturnInstructions},
            {"2", Planets}
        };
        return optionActions.ContainsKey(selectedOption) ?
            optionActions[selectedOption]() :
            RedirectWelcome();
    }

希望对您有所帮助!