是否可以在dashha .ai中同时调用一些用户?同时调用的最大计数以及如何实现
已通过对话队列实现的同步呼叫
同时呼叫限制
-
实例限制
实例限制由您在sdk应用程序中设置。
必须通过参数concurrency初始化在application.start方法(默认值- 1)await application.start({ concurrency: 10 });
-
集团限制
示例
所有用户都有一个默认值但是,如果你使用的是自定义组,你应该设置max-concurrency你可以设置和更新max-concurrency命令行
创建组dasha group create group_name --max-concurrency=50
和更新组
dasha group update group_name --max-concurrency=50
应用程序(实例)将使用哪个组由deploy方法定义:
dasha.deploy("app", { groupName: "Default" });
-
客户限制
此限制只能根据需要更改(您不能手动更改它,至少现在)
应用
您需要指定如何通过会话队列处理呼叫:对于可以启动的呼叫,您必须指定ready事件
application.queue.on("ready", async (key, conversation) => {
conversation.input = getInput(key); // getInput must return an object that consist of input variables for a call
const result = await conversation.execute(); // start conversation/call
});
此事件将为每个呼叫异步启动
同时呼叫-将尽可能多的呼叫推入队列(例如,将一个呼叫添加到队列中,必须在一小时内启动,否则将超时):
application.queue.push("some_unique_key", {
after: new Date(Date.now()),
before: new Date(Date.now() + 60 * 60 * 1000)
});
当您有空闲限制和队列中准备启动的调用时,它们将尽快被处理