通过fastagi星号发送Sip消息

时间:2014-12-18 18:05:37

标签: asterisk agi fastagi

我可以使用dialplan中继消息。此命令发送消息但我似乎无法使用fastagi(java)

运行它

拨号方案

exten => _X.,n,MessageSend(${ACTUALTO},${MESSAGE(from)})

FastAgi

public void service(AgiRequest ar, AgiChannel ac) throws AgiException {
    System.out.println(ac.getFullVariable("${MESSAGE(body)}"));
    System.out.println(ac.getFullVariable("${MESSAGE(to)}"));
    System.out.println(ac.getFullVariable("${MESSAGE(from)}"));
    System.out.println(ac.getFullVariable("${CUT(MESSAGE(to),@,1)}"));
    //Correct values are show from above printlns
    ac.exec("MessageSend(${CUT(MESSAGE(to),@,1)},${MESSAGE(from)})");
}

最后一行会在/var/asterisk/messages

中产生警告
  

警告[2287] [C-00000000] res_agi.c:找不到应用程序(MessageSend($ {CUT(MESSAGE(to),@,1)})

2 个答案:

答案 0 :(得分:0)

想出来,这是在fastagi中完成的方式

ac.exec("MessageSend","sip:100,<sip:102@192.168.1.100:5080>");

MessageSend的文档 https://wiki.asterisk.org/wiki/display/AST/Asterisk+11+Application_MessageSend

答案 1 :(得分:0)

预计到目前为止的消息。没有 AGI 这样的命令

检查

asterisk -rx“核心显示应用程序,如消息”

如果找到,请尝试

 ac.exec("MessageSend \"${CUT(MESSAGE(to),@,1)},${MESSAGE(from)})\"");

了解更多信息检查规范

http://www.voip-info.org/wiki/view/exec