我正在使用Node.JS中的Model构建类似Twilio的Dialer API,以便向Freeswitch Console发送命令和参数。
编辑:我已经将问题缩小到语法问题,我用来输入变量的javascript与FreeSwitchs语法冲突。 uuid_send_dtmf需要有一个'在它前面,而uuid是需要在一个空格之后传递的NodeJS参数,就像dmtf一样,并且api_on_answer需要'在我的参数传递后关闭'。
语法一直是我的弱点,任何帮助都会非常感激。
,api_on_answer='uuid_send_dtmf ' + uuid + ' ' + dmtf +' ' }
conn.api('originate {
origination_uuid=' + uuid
+ ',origination_caller_id_number=' + cid
+ ',api_on_answer=uuid_send_dtmf ' + uuid
+ ' ' + dmtf +' }
sofia/external/' + pnumber + '@provider', function(res) {
目前这个命令给出了一个非常模糊的错误,没什么帮助:
2019-03-17 08:53:22.755065 [DEBUG] switch_ivr_originate.c:2204解析全局变量2019-03-17 08:53:22.755065 [错误] switch_ivr_originate.c:2209解析错误! 2019-03-17 08:53:22.755065 [DEBUG] switch_ivr_originate.c:3941发生错误导致错误原因:27 [DESTINATION_OUT_OF_ORDER]
做我需要的正确方法是什么?
修复使用'\'输入'内联。
var onanswer ='\''+ uuid +''+ dmtf;
试试这个,
conn.api(`originate {origination_uuid=${uuid},origination_caller_id_number=${cid},api_on_answer='${uuid_send_dtmf} ${uuid} ${dtmf}'}sofia/external/${pnumber}@${provider}`, function(res) {
模板文字或字符串,由反向标记括起来,这将为您提供所需的格式,欢呼:)