Pull to refresh

Comments 6

делал точно такую же штуку лет пять назад :)
Скажите, а почему вы не использовали ami для данной задачи:
— Делаете originate
— Записав в переменную текст ошибки, звонок пройдёт по dialplan'у, сгенерирует звуковой файл, проиграет его

То есть в данном случае вам необходимо сделать доступ на asterisk по ami протоколу. Весь остальной функционал происходит локально на сервере с астером.
Да я «не настоящий сварщик» — не специалист по Asterisk.
Мне проще подкинуть call-файл, чем разбираться с AMI. Я так понимаю, в этом случае понадобится писать код, например, на PHP?
Да, что то вроде:

$asm = new AGI_AsteriskManager();
  if($asm->connect())
  {
    $call = $asm->send_request('Originate',
            array('Channel'=>"SIP/$number",
                  'Context'=>'default',
                  'Priority'=>1,
                  'Callerid'=>$number));
    $asm->disconnect();
  }


Взял первый попавшийся пример из гугла :)
Вызов text2wave соответственно уже в диалплане, перед Dial'ом
ami менее безопасно чем ssh, без использования специального ami-proxy т.к. данные пересылаются в открытом виде по сети. Плюс call файлы очевидно проще в реализации.
Да и нагрузка возникающая в данном случае настолько мала что не важно где будет выполняться какая то часть.
Я с вами полностью согласен, в плане безопасности ssh рулит :), даже если использовать SSL или прокси. Но с другой стороны — если грамотно настроить доступ, то риск минимальный. В плане реализации… ну для меня нет разницы, в данном случае я бы всё таки ami выбрал :)
Sign up to leave a comment.

Articles