如何设置Webhook追踪Voximplant场景状态及全量数据
在Voximplant平台设置Webhook追踪场景状态及全量数据的操作步骤
1. 搭建Webhook接收服务
先准备一个支持HTTPS的后端服务,它得能接收POST请求,并且可以解析application/json格式的请求体——毕竟Voximplant只会把数据推送到HTTPS地址,而且请求体都是JSON格式的。
2. 在Voximplant控制台配置Webhook
- 登录Voximplant管理控制台,进入你的目标应用项目
- 在左侧菜单找到「Webhooks」(一般在「应用设置」或「集成」分类下)
- 点击「添加Webhook」,填入你的接收服务URL,然后勾选需要追踪的事件:要监控场景状态的话,选
ScenarioStarted(场景启动)、ScenarioFinished(场景结束)、ScenarioFailed(场景失败)这些;如果要获取全量数据,记得勾选包含完整事件详情的选项 - 推荐设置签名密钥:生成一个自定义密钥,Voximplant会用它对请求签名,你可以在服务端验证签名,确保请求确实来自Voximplant
3. 场景内主动推送自定义数据(可选)
如果需要把场景运行中的实时自定义数据推送到Webhook,在场景编辑器里用VoxEngine.sendRequest方法即可,示例代码:
// 在场景中发送实时状态数据到Webhook VoxEngine.sendRequest("https://你的Webhook地址", { method: "POST", headers: {"Content-Type": "application/json"}, body: JSON.stringify({ scenarioId: VoxEngine.scenarioId(), callId: VoxEngine.callId(), status: "运行中", customData: {用户ID: "u_123", 当前环节: "语音验证"} }) });
4. 验证配置有效性
- 发起一次测试呼叫触发场景运行,检查你的接收服务是否收到了Voximplant推送的事件数据
- 查看Voximplant控制台的Webhook日志,确认请求是否成功;如果失败,根据日志提示排查问题
5. 处理Webhook数据
服务端接收到请求后,解析JSON请求体,里面会包含场景状态、事件类型、呼叫ID、场景ID等全量数据。你可以根据业务需求将这些数据存入数据库、生成日志,或者触发后续业务流程。
内容的提问来源于stack exchange,提问作者Ksenia Cherkasova
相关产品推荐
相关产品推荐

