我可以使用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)})
答案 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)})\"");
了解更多信息检查规范