在语音序列中使用数据
Warning: Voice sequences are in preview. Steps, entry data, and the sequence definition format can change in ways that break existing sequences and API requests.
定义呼叫入口接受的数据,然后在支持的步骤字段中使用这些数据。例如,一个提醒可能从发起呼叫的应用程序接收客户姓名和预约时间。
使用字段选择器查看所选步骤支持哪些数据源和值模式。
定义入口数据
- 在草稿中选择开始通话入口。
- 添加数据字段并标记必填字段。
- 选择后续步骤并打开其展开编辑器。
- 从 Available data 中选择一个字段,然后使用代表性的入口数据预览它。
API 呼叫的 sequence.trigger_data 必须是一个与所选入口 schema 匹配的对象。当入口不需要数据时,提供 {}。来电号码路由提供 {},因此其入口必须接受空对象。将来电字段设为可选,并在后续步骤中处理缺失值。
应用程序数据与呼叫身份是分开的。由应用程序提供的名为 caller 的字段不能确定来电者身份,也不会授予使用某个号码的权限。
映射值或组合文本
支持的字段提供固定值、来自前序步骤的值、带有插入值的文本或 fx 表达式。对类型化字段使用直接值,对语音句子使用带插入值的文本。包含数字的字符串仍然是文本。
例如,在入口上定义一个名为 customer_name 的必填字符串字段。在支持的语音字段中,将 Hello、一个空格、字段值和 , your appointment is confirmed. 组合起来。使用 {"customer_name":"Ada"} 预览以检查准备好的文本。
语音表达式将入口字段读取为 trigger.data.customer_name。前序符合条件的输出使用 steps.<step_id>.output。数据源选择器帮助你选择正确的步骤和字段。
处理缺失数据和分支
可选字段可能缺失、为 null 或为空。预览这些情况,并在适当时选择显式的回退值。未执行路径上的步骤在该次运行中没有输出。
呼叫观测数据位于 execution 下。例如,原始来电者的号码可能缺失。受保护的表达式可安全地读取它:
execution.call.orig != null && has(execution.call.orig.address) ? execution.call.orig.address : ''这些观测数据描述的是电话端点,不会对人员进行身份验证。当到达的表达式使用 execution 时,预览需要一个执行样本。如果没有样本,预览会在评估该步骤之前停止。通过 Advanced scenario JSON 提供样本,按照验证报告的结构填写。
私密键盘观测数据对后续表达式源或保留的步骤详情不可用。不要围绕私密数字来设计后续的语音或结果字段。
通过转接传递数据
本地 Transfer 向目标入口提供一个新对象。映射该入口需要的值并检查其必填字段。
目标接收全新的 trigger.data,前序步骤的输出会被清除。呼叫身份、录音状态和执行限制将继续保留。当新入口需要前一路径中的信息时,必须显式传递该值。
后续步骤
相关资源
继续查看此主题的文档、指南和示例。