适用于 C# 的 IVR 编程库
IVR Programming Library for C#
我想写一个响应调用的程序。 在收到欢迎消息后,它必须告诉客户端:按 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();
}
希望对您有所帮助!
相关文章:
- 有一个打印语句的函数是一种糟糕的编程实践吗
- 我是C++编程的新手,这些代码之间有什么区别,我应该使用哪一个
- 模板元编程:如何将参数包组合成新的参数包
- Qt Q串行端口未编程设备未关闭
- 模板元编程 - 尝试实现维度分析
- 我是编程新手
- C++编程从外部文本文件定义数组大小
- 了解算法的性能差异(如果以不同的编程语言实现)
- 使用 Gtkmm 以编程方式选择 Gtk::TextView 中的文本
- 如何将可变参数模板转换为多个单个模板?(C++竞争编程调试模板)
- 使用命名空间正确编程
- C++编程:运算符重载中的引用如何工作?
- Arduino 模块化编程与全局和设置
- C++ 运算符修改/元编程策略,用于不那么冗长的语法
- 在没有管理员权限的情况下,在 c++ 中以编程方式将程序添加到启动
- 如何以编程方式将音频从任何录制设备路由到任何播放设备
- 试图修复一个错误,该错误不会让我开始编程其余部分
- C++模板编程设计问题 - 根据输入文件返回不同的类型
- Frank Luna 在他的书"使用 DirectX12 进行 3D 游戏编程"的介绍中盒子示例的问题
- 适用于 C# 的 IVR 编程库