我想要建立一个电话会议,从ESL计划开始。
在我的python脚本中,我调用第一个数字:
freeswitchcon.api("originate","sofia/gateway/MySIP/91XXXXXXXXXX+" &conference(9099)"然后我再打另一个号码:
freeswitchcon.bgapi("originate","sofia/gateway/MySIP/91XXXXXXXXXX+" &conference(radioHealth_${strftime(%Y-%m-%d)}+flags{mute})"我的拨号方案是:
<extension name="conf_demo">
<condition field="destination_number" expression="^9099$">
<action application="conference" data="radioHealth_${strftime(%Y-%m-%d)}+flags{endconf}"/>
</condition>
<extension name="conf_demo">
<condition field="destination_number" expression="^9098$">
<action application="conference" data="radioHealth_${strftime(%Y-%m-%d)}+flags{mute}"/>
</condition>我在第一个号码上接到电话,但在第二个号码上没有。Freeswitch日志包括:
2016-04-18 05:37:26.417807 [NOTICE] switch_channel.c:1055 New Channel sofia/external/91XXXXXXXXXX [a22ea00c-0527-11e6-86df-415bf8be0d99]
2016-04-18 05:37:26.777867 [NOTICE] sofia.c:7539 Hangup sofia/external/91XXXXXXXXXX [CS_CONSUME_MEDIA] [CALL_REJECTED]
2016-04-18 05:37:26.777867 [NOTICE] switch_core_session.c:1641 Session 24 (sofia/external/91XXXXXXXXXX) Ended
2016-04-18 05:37:26.777867 [NOTICE] switch_core_session.c:1645 Close Channel sofia/external/91XXXXXXXXXX [CS_DESTROY]如有任何指导,不胜感激。
发布于 2018-10-23 22:51:14
我意识到这已经晚了几年,但是我注意到你在你的第一个原始命令中调用了正常的api:
freeswitchcon.api("originate","sofia/gateway/MySIP/91XXXXXXXXXX+" &conference(9099)"这意味着将启动第一个调用,但随后python将等待该调用返回(即,当它被挂起时),然后再继续。
如果您使用freeswitchcon.bgapi,就像在第二个调用中一样,那么调用将在后台发起,python不会等待调用结束后才继续。
https://stackoverflow.com/questions/36686515
复制相似问题