在Voximplant上进行开发的任何人都知道“应用程序”的概念,这些概念将云方案,电话号码,用户,规则和呼叫队列相互连接。 简而言之,应用程序是我们平台上开发的基石,它是任何基于Voximplant的解决方案的切入点,因为它是从创建应用程序开始的。
以前,应用程序“既不记得”脚本执行的操作也不计算结果,因此开发人员被迫将值保存在第三方服务或后端中。 如果您曾经在浏览器中使用过本地存储,那么我们的新功能与此非常相似,因为 允许应用程序记住您帐户中每个应用程序唯一的键/值对。 借助新的
ApplicationStorage模块,使存储操作成为可能-在目录下,您将找到使用它的简要指南,欢迎您!
您将需要
- Voximplant帐户。 如果您没有,那么注册就住在这里 ;
- Voximplant应用程序以及脚本,规则和单个用户。 我们将在本教程中创建所有这些内容。
- Web客户拨打电话-使用我们的phone.voximplant.com 网络电话 。
Voximplant设置
首先登录到您的帐户:
manage.voximplant.com/auth 。 在左侧菜单中,单击“应用程序”,然后单击“新建应用程序”,然后创建一个称为存储的应用程序。 进入新应用程序,切换到“脚本”选项卡,以使用以下代码创建countingCalls脚本:
require(Modules.ApplicationStorage); VoxEngine.addEventListener(AppEvents.CallAlerting, async (e) => { let r = {value: -1}; try { r = await ApplicationStorage.get('totalCalls'); if (r === null) { r = await ApplicationStorage.put('totalCalls', 0); } } catch(e) { Logger.write(' totalCalls'); } try { await ApplicationStorage.put('totalCalls', (r.value | 0) + 1); } catch(e) { Logger.write(' totalCalls'); } e.call.answer(); e.call.say(`. : ${r.value}. `, Language.RU_RUSSIAN_MALE); e.call.addEventListener(CallEvents.PlaybackFinished, VoxEngine.terminate); });
第一行连接ApplicationStorage模块,其余逻辑放在
CallAlerting事件
处理程序中 。
首先,我们声明一个变量,以便可以将初始值与调用计数器进行比较。 然后,我们尝试从商店中获取totalCalls键的值。 如果还没有这样的密钥,那么我们创建它:
try { r = await ApplicationStorage.get('totalCalls'); if (r === null) { r = await ApplicationStorage.put('totalCalls', 0); } }
接下来,您需要增加存储库中的键值:
try { await ApplicationStorage.put('totalCalls', (r.value | 0) + 1); }
支付注意
对于每个承诺,都必须明确指示失败处理,如上面的清单所示-否则脚本将被停止,并且您会在日志中看到错误。 详细信息在这里 。
使用存储库后,脚本将使用语音合成功能应答传入的呼叫,并说出您之前呼叫过多少次。 此消息后,脚本结束会话。
保存脚本后,转到应用程序的“路由”选项卡,然后单击“新规则”。 将其命名为startCounting,指定countingCalls脚本并保留默认掩码(。*)。
最后是创建一个用户。 为此,请转到“用户”,单击“创建用户”,指定名称(例如user1)和密码,然后单击“创建”。 我们将需要此用户名/密码对在网络电话中进行身份验证。
检查一下
在
phone.voximplant.com上打开网络电话,
然后使用帐户名,应用程序名以及该应用程序中的一对用户名和密码登录。 成功登录后,在输入字段中输入任何字符集,然后按Call。 如果一切操作正确,您将听到综合问候!
我们希望您在Voximplant上取得出色的发展并继续关注-我们将有更多;)