高级课程: 任务编辑器和表达式帮助
Architect 的任务编辑器可帮助您对更全面的流程中的相关步骤进行分组。 在许多情况下,您将使用表达式来构建这些复杂的呼叫流计算。 Architect 还提供了集中、全面的元素列表,以帮助您构建表达方式。 我们将在本课中探讨其中的一些领域。
在这里,我们想要构建一个任务序列来确定有关当前调用的以下信息:
- 一天中的时间(早上、下午或晚上)
- 主叫姓名
- 一周中的当前几天
接下来,我们希望系统以音频序列的形式向呼叫者播放信息。 当呼叫者进入流程时,他或她会听到 “[早上、下午或晚上] 好,[呼叫者姓名]。 今天是 [星期几]。” 此外,周五来电者将通过以下消息了解周六的新营业时间: “这是一个友好的提醒,我们周六的营业时间已经改变。 如果你明天需要联系我们,我们将从九点到中午有空。”
目标
创建一个收集有关当前呼叫的信息和有关当前呼叫的信息的任务,然后将该信息播放给呼叫者
预计完成时间: 40 分钟
其他结果
任务
- 在 Architect 主页中,单击呼 入呼叫流程 选项卡。
- 添加新的入站流程,包括唯一的名称和(可选)简短的句子或短语,以进一步描述此呼叫流。 在我们的示例中,我们将入站呼叫流命名为 工作日。
- 创建一个新的可重用任务并将其设置为起始任务。
- 将任 务命名为 “星期几”。
- 对于 初始问候语,可以选择录制提示音或添加 TTS 来迎接来电者。
- 单击 “ 编辑任务”。
通过向任务添加音频开始构建起始任务, 然后创建一个决策操作,指导流程从字符串集合中提取星期中的当前一天。
- 将 “ 播放音频” 动作拖 动到任务编辑器中,并为其命名为 “ 初始音频
- 录制提示或添加 TTS 来迎接来电者:
“感谢来电!
- 将 “ 决策” 任务拖到 “播放音频” 任务下方,然后将 “ 更新数据” 操作拖 动到 “决策” 操作的 “ 无” 路径下方
- 将 “更新数据” 操作命名为 “星期 几”。
- 单击 添加更新语句下 拉列表末尾的箭头,然后执行以下操作:
- 单击 创建收藏夹。
- 选择 字符串集合。
- 在 “ 变量名称 ” 框中,键入 flow.Days ofWeek。
- 在 “要分配的值” 框中,单击 + 字符串。
- 在里面物品盒式星期日。
- 重复步骤 7 以添加一周中的剩余天数。
你的收藏应该是这样的:
在这里,通过添加 “更新数据” 操作来继续该序列,以从通话中检索当天。
- 将 “ 更新数据” 操作拖动到 “星期 几 更新数据” 操作下方。
- 命名 “ 今天” 的操作。
- 单击 添加更新语句下 拉列表末尾的箭头,选择 String,然后执行以下操作:
- 在 变量名称 框中,键入 Flow.Today。
- 在 “要分配的 值 ” 框中,切换到表达式模式并打开大型表达式编辑器。 将打开 编辑要分配 1′ 表达式的值 对话框。
- 开始键入 Get。 下拉列表中将显示可用函数的列表。
- 假设您不确定此处要使用哪个表达式,然后在下拉列表中单击 ? 在 GetAT 旁边。 表达式帮助打开,我们看到此特定函数在集合中的特定位置检索项目。 这看起来像我们想要使用的函数。 您可以选择通过展开 实施 部分了解更多详细信息和使用示例来了解有关它的更多信息。
- 完成后,单击右 上角的 X 以关闭表达式帮助。
- 返回到 “ 编辑要分配 1 的值” 表达式 对话框中,完成 GetAat () 函数的键入,然后按 Enter 键。 请注意,光标位于圆括号集内。
- 确保光标位于 GetAT 括号内,然后开始键入 Flow。, 然后 从显示的列表中选择 Flow.DayofWeek。
- 将光标定位在右括号之前,添加一个逗号,然后开始键入 dayAif。 请注意下拉列表中的可用选项列表。
- 要确认选择了正确的函数,请单击 ? 在 DayofWeek 旁边。 表达式帮助打开,我们看到此特定函数从提供的值中获取星期几。
- 在表达式帮助中,展开整数部分以获取更多详细信息和示例。 这看起来像我们想要使用的函数。
- 完成后,单击右 上角的 X 以关闭表达式帮助。
- 返回到 “编辑要分配 1 的值” 表达式对话框中,完成 DayOfWeek () 函数的键入。
- 将光标定位在表达式末尾的两个右括号之前,开始键入 Flow。 然后 从列表中选择 flow.startDateTimeutc。
- 单击 “ 关闭”。
你的最后一个表达式应该是这样的:
GetAat (Flow. 星期几、星期几 (Flow.startdateTimeutc))
接下来,通过添加指示系统收集一天中的时间的 “更新数据” 操作来继续该序列:
- 将 “ 更新数据” 操作拖到 “ 今天 更新数据” 操作下方。
- 将操作命名为 “ 时间”。
- 单击 添加更新语句下 拉列表末尾的箭头,选择 String,然后执行以下操作:
- 在 “ 变量名称 ” 框中,键入 Flow.timeOfDay。
- 选中 “要分配的 值 ” 框,切换到表达式模式, 然后打开大型表达式编辑器。 将打开 编辑要分配 1′ 表达式的值 对话框。
- 开始键入 如果。 下拉列表中将显示可用函数的列表。
- 或者单击 ? 在列表中的如果 () 表达式旁边打开表达式帮助。 在这里,您可以浏览函数详细信息并展开实现,完成后,单击 X 关闭表达式帮助。
- 返回 到 “编辑要分配 1 的值” 表达式 对话框中,完成键入 如果 () 函数。
- 将光标置于如果括号内,开始键入 “ 小时”, 然后 从显示的列表中选择 “小时” ()。
- 将光标定位在两个右括号之前,开始键入 Flow。 请注意下拉列表中的可用选项列表。
- 选择 Flow.startDateTimeutc。
- 继续使用表达式,以便如果小时小于 12,则系统将读为早上的时间。 如果时间小于 17 点,则为下午或晚上。
- 将光标定位在最后一个右括号内时,键入 <12 “Morning”。
- 将光标置于最后一个逗号和最后一个右圆括号之间,键入 if (Hour (flow.startDateTimeutc)。
- 将光标定位在最后两个右括号内时,键入 <17、“下午”、“晚上”。
- 单击 “ 关闭”。
你的最后一个表达式应该是这样的:
如果 (小时 (Flow.startDateTimeutc) < 12,“早上”,如果 (小时 (Flow.startDateTimeutc) < 17,“下午”,“晚上”))
根据收集的数据,创建通知呼叫者日期和时间的音频序列。
- 将 “每日 时间 更新数据” 操作下方的 “ 播放音频” 操作拖动到 “ 问候语” 操作下
- 在 “音频” 框中,单击音频序列编辑器按钮,然后执行以下操作:
- 在 “ 文本转语音 ” 框中,键入 Good。
- 单击 添加数据 按钮,然后在数据框中键入 Flow.timeOfDay。
- 单击 “选择选项” 下拉列表末尾的箭头,然后选 择 “ 文本转语音”。
- 单击 添加数据 按钮,然后在数据框中键入 call.remoteName。
- 单击 “选择选项” 下拉列表末尾的箭头,然后选 择 “ 文本转语音”。
- 单击 添加 TTS 按钮,然后在 “文本转语音” 框中键入 “ 今天是”。
- 单击 添加数据 按钮,然后在数据框中键入 Flow.Today。
- 单击 “选择选项” 下拉列表末尾的箭头,然后选 择 “ 文本转语音”。
- 单击 “ 关闭”。
设置当系统检测到第二天是否是星期六时要采取的路径,如果是,则在周六小时向呼叫者播放。 然后完成任务。
- 将 决策 动作拖动到 “ 问候语 播放音频” 操作下方的任务编辑器中,然后将其命名 为 “明天星期六?
- 在 “表 达式” 框中,切换到表达式模式,删除 True 文本,然后键入 Flow.Tday== “星期五”。
- 将 播放音频 动作拖到 “是明天星期六?” 下方 决策操作的 “是” 路径并将其命名为 “ 玩周六时间”。
- 在 “ 音频” 框中,录制提示音或添加 TTS 以通知呼叫者星期六的时间:
友好地提醒我们,我们周六的营业时间已经改变。 如果你明天需要联系我们,我们将从九点到中午有空。
- 将 “ 跳转到菜单” 操作拖动到任务编辑器底部的最后一个空格中。
- 选择 主 菜单,然后验证并保存或发布流程。
主动
现在轮到你了。 尝试在自己的环境中创建类似的体验。 例如,您可以设置在特定月份特定呼叫者播放的问候语,例如 12 月的 “季节问候语”。 或者,您可以通知来电者季节性时间,例如 7 月的夏季时间。 有关其他帮助,请参阅相应的任务说明和支持视频。