创建基于脚本的 IVR

基于脚本的数字接线员(IVR)可以允许用户使用外部脚本或程序实现 3CX IVR 无法完成的一些功能。这允许用户根据来电号码,DID 和 3CX IVR 范围之外的输入进行自定义处理。你也可以与其他的 IVR 或者脚本结合起来,创建一个符合用户特定要求的自动 IVR 工作流。

IVR 脚本选项

脚本在系统上运行,需要调用 IVR 提供的一些参数。执行完脚本后,脚本会将处理结果返回给 IVR,以采取进一步的措施。

基于脚本的 IVR 启动时,当有呼叫送到脚本,脚本会按照位置传递以下参数:

  • “Parameter 1” – 脚本运行的路径。
  • “Parameter 2” – 主叫的号码
  • “Parameter 3” – 如果呼叫是经有 DID 呼入,则返回 DID 号码;否则返回 “-“
  • “Parameter 4” – 呼叫者的 DTPF 输入值。如果用户没有输入或者禁用了该功能,则返回空值。

IVR 将这些参数传递给脚本,脚本将这些参数与工作流一起使用,最后返回一个退出代码给 IVR。至于脚本的逻辑由编写者决定,这也超过了本指南的范围。

创建基于脚本的 IVR

创建一个基于脚本的 IVR,先在 3CX 管理控制台进到 “数字接线员”,点击 Add 新建。

将类型选择为 “启动脚本”

在脚本的完整路径里需要填入脚本的 “绝对路径”

下面我们将解释 IVR 内的几个选项:

  1. “收集用户输入并将其传递给脚本” – 开启后会将用户输入的 DTMF 值传给脚本。
    💡 Tip: 您可以使用 IVR 的初始音频提示来请求来电者的输入。
  2. “预计号码长度” – 开启后将限制用户输入的位数。有以下几种情况:
    • 数字低于设置值 – 重复播放提示音三遍,最后结束通话。
    • 数字等于设置值 – 执行脚本,将输入值作为参数传给脚本。
    • 数字大于设置值 – 获取用户输入中符合要求的前几位,忽略其他值,将输入作为参数传递给脚本。
  3. “播放用户输入和请求确认” – 开启后将会播放以下提示音:你输入以下了以下号码:[输入的数字]。请按 # 确认或者按 * 重新输入。播放完后 IVR 会等待 5 秒等待呼叫者的响应:
    • “*” – 重复播放三遍提示音,最后结束通话。
    • “#” 或者 5 秒无输入 – 即确认输入并将输入值作为参数传递并执行脚本。

“退出代码” 可接受 [0-100] 的输出值,您可以为基于脚本的 IVR 添加多达 101 个唯一的数字退出代码,以及各自的操作。脚本结束后,它将向 IVR 返回适当的退出代码,该 IVR 随后将其用于路由呼叫。

📄 Note: 如果退出代码与任何已配置的退出代码都不匹配,则IVR会提示”发生内部错误。抱歉”,结束通话

保存IVR设置并调用分配的虚拟分机号以测试基于脚本的IVR。

💡 Tips:

  • 包括在脚本中记录消息的功能,使您可以监视其执行,处理进度和传递的参数。
  • 确保 phonesystem 用户具有适当的文件系统权限以运行指定的脚本。