Есть ПХП скрипт на одном сервере, который подключает\отключает\ставит на паузу агентов к очереди на другом сервере с помощью АМИ команд. Всё работает отлично, с первого раза. Перенесли скрипт на сервак с астериском. Так вот по локалхосту он подключает\отключает\ставит на паузу агентов не с первого раза (нужно запустить несколько раз чтоб сработала команда). Где проблема, как так что скрипт удаленно лучше работает чем на локалхосте.
ПС: в настройках манагера разрешены все ИП.
Куда кривее?)
<?php
$astip="194.44.xxx.xxx";
$astmanager="admin";
$astpassword="admin";
$socket = fsockopen($astip,"5038", $errno, $errstr);
fputs($socket, "Action: login\r\n");
fputs($socket, "UserName: $astmanager\r\n");
fputs($socket, "Secret: $astpassword\r\n\r\n");
fputs($socket, "Action: QueueAdd\r\n");
fputs($socket, "Queue: 977\r\n");
fputs($socket, "Interface: SIP/777\r\n");
fputs($socket, "Action: Logoff\r\n\r\n");
?>
Так работает
$socket = fsockopen($astip,"5038", $errno, $errstr);
fputs($socket, "Action: login\r\n");
fputs($socket, "UserName: $astmanager\r\n");
fputs($socket, "Secret: $astpassword\r\n\r\n");
sleep(1);
fputs($socket, "Action: QueueAdd\r\n");
fputs($socket, "Queue: 988\r\n");
fputs($socket, "Interface: SIP/731\r\n");
sleep(1);
fputs($socket, "Action: Logoff\r\n\r\n");
попробуй заюзать phpastmansger из комплекта freepbx. Скорее всего тайминги не выдерживаешь.
это потомучто надо ответы анализировать... программисты блин. так можно еше много глюков поймать. в спецификации четко написано - подождать ответа..
А точно с путями все в скрипте нормально? имеется ввиду
Задан: 2011-02-14 12:47:09 +0400
Просмотрен: 741 раз
Обновлен: Feb 17 '11
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.