Freeswitch会议LUA

时间:2020-05-18 16:01:15

标签: lua freeswitch conference

之后无法在lua脚本中保持控制

session:execute(“ conference”,conf_name);

以下所有命令均无法执行。

原始{} dialstring&test.lua

test.lua

api = freeswitch.API()
    freeswitch.consoleLog("DEBUG", "test1")
    session:execute("conference", "test_conf");
    freeswitch.consoleLog("DEBUG", "test2")

test2未打印在控制台日志中

2 个答案:

答案 0 :(得分:1)

从freeswitch邮件列表中张贴我的答案:Questionanswer 1additional information 2

据我所知,当您调用session:execute时,它是一个同步操作。 Lua脚本将继续运行,等待该execute完成。 如果您将用户踢出会议,那么lua脚本将在中断处继续执行。

(如果您挂断用户或转移他们,会话将结束,脚本可能会最好继续,但没有活动的会话。)

替代品: 根据您要完成的工作,您可以先在会议之前安排任务。或者只为某些事情调用lua脚本,然后在拨号计划中处理其余的脚本。在需要时,将其踢回另一个lua脚本以进行进一步处理。


Brian发布了另一条信息:

除非hangup_after_conference=false,否则不会继续执行lua。但是你 是正确的,脚本正在执行会议,就在此处停止。

答案 1 :(得分:0)

是的,会话转移到会议后,脚本的控制权丢失了。

从逻辑上讲,我们可以通过以下方式从会议本身发起呼叫

会议拨号

相关问题