Определение DIALSTATUS после выполнения набора из AGI
Я новичок звездочки. В настоящее время я хочу набрать некоторый номер с моего AGI-сервера с помощью команды exec("Dial",..) и хотел бы узнать, когда никто не отвечает на вызов, проверив DIALSTATUS == noanswer. Я попытался передать команду набора номера на план набора и получить DIALSTATUS оттуда, но он всегда пуст. Я попытался получить ДИАЛСТАТУС в AGI, но это не сработало.
пример:
первая попытка:
public void service(AgiRequest request, AgiChannel channel)
{
exec("Dial","SIP/" + "7004" + ",60,G(from-internal-custom,1301,1)");
String dialStatus = request.getParameter("DIALSTATUS");
exec("NoOp","dial status is = " + dialStatus); //it is always empty (i think its
because the moment the first dialplan goes to the AGI,DIALSTATUS is not
initialized yet since I havent even issued dial command)
}
вторая попытка:
в диалплане:
exten => 1301,1,NoOp(dial status is = ${DIALSTATUS})
exten => 1301,2,NoOp(dial status is = ${DIALSTATUS})
exten => 1301,3,NoOp(dial status is = ${DIALSTATUS})
exten => 1301,4,NoOp(dial status is = ${DIALSTATUS})
//all of them is empty
так как я могу получить значение DIALSTATUS, если я выполню команду набора из AGI? большое спасибо за добрый ответ
1 ответ
Решение
Вы используете командный вызов GetVariable.
Невозможно сказать, как это выглядит в вашей структуре, потому что вы не проинформированы об этом.