Вы не авторизованы

Вы можете читать сообщения. Если вы хотите создать новую тему или присоединиться к обсуждению, пройдите процедуру регистрации или авторизуйтесь.

RSS
Ошибка при выполнении PHP скрипта
 
Добрый день.
Настраиваю связку Asterisk 11.5.1 и 1С:Предприятие 8.2 (8.2.19.83)  УПП  редакция 1.3 (1.3.45.3)
версия панели 1.2.21.8, диалплан делаю по http://wiki.miko.ru/astpanel:ats:asterisk_v6
Выполняю проверку 10000109 http://wiki.miko.ru/astpanel:ats:asterisk:getcontext_v6, создаю call файл, получаю 510 Invalid or unknown command в консоли Asterisk,
аналогично проверяю 10000222, дополнительно к  510 Invalid or unknown command, ещё Broken pipe
Прикладываю дебуг AGI
 
Спасение утопающих - дело рук самих утопающих.
Нашел на просторах интернета php-код, добавил в скрипт, теперь Broken pipe не появляется. Как быть с остальным?
версия phpagi 2.20
 
PATH in /var/lib/asterisk/agi-bin/phpagi.php on line 1693

Что в этой строке?
 
Как обошли Broken pipe?
 
В строке 1693 phpagi.php:

Код
$chpath = is_null($checkpath) ? $_ENV['PATH'] : $checkpath; 

Broken pipe помогло исправить вот это, поместил в начало:
Код
ob_implicit_flush(false);
set_time_limit(5);
error_reporting(0);
declare(ticks = 1); 

 
Странное дело, но сейчас я не вижу ошибки 510, скрипт 1C_SetStatus.php стал работать, но не до конца,  

Код
<SIP/1416-000068cb>AGI Rx << EXEC UserEvent DB_CF,Channel:SIP/1416",key:1416,val:
    -- AGI Script Executing Application: (UserEvent) Options: (DB_CF,Channel:SIP/1416,key:1416,val:)
<SIP/1416-000068cb>AGI Tx >> 200 result=0
<SIP/1416-000068cb>AGI Rx << ANSWER
<SIP/1416-000068cb>AGI Tx >> 200 result=0
    -- <SIP/1416-000068cb>AGI Script 1C_SetStatus.php completed, returning 0

 
не помещается значение val в database
Изменено: dny - 27.06.2014 11:10:50 (Мой косяк)
 
Значение val помещается, перепутал команды get и put в файле.
 
Не работает история звонков, в моем случае CDR пишется в мускул через odbc, как должен выглядеть диалплан в этом случае?
 
Подсмотрите как реализовано в плагине
Там есть пример PHP-AGI приложений.
 
Пока не вышло настроить подключение к mysql:
Код
VERBOSE "SEVERE: Unknown database type: """ 1 
У меня голый астериск без freepbx.
Правильно ли я понимаю., что мне нужно установить переменные dbuser dbhost dbpass dbtype в скрипте 1С_CDR.php?
Попробовал сделать аналогично переменной CDRDBNAME
Код
$dbtype = !empty($amp_conf['AMPDBENGINE'])?$amp_conf['AMPDBENGINE']:"mysql";
$dbhost = !empty($amp_conf['AMPDBHOST'])?$amp_conf['AMPDBHOST']:"localhost";
$dbuser = !empty($amp_conf['AMPDBUSER'])?$amp_conf['AMPDBUSER']:"user";
$dbpass = !empty($amp_conf['AMPDBPASS'])?$amp_conf['AMPDBPASS']:"pass";
 
не прокатило.
Код
<Local/10000555@miko_ajam-00000158;2>AGI Rx << GET VARIABLE CDRDBNAME
<Local/10000555@miko_ajam-00000158;2>AGI Tx >> 200 result=0
<Local/10000555@miko_ajam-00000158;2>AGI Rx << GET VARIABLE AMPDBENGINE
<Local/10000555@miko_ajam-00000158;2>AGI Tx >> 200 result=0
<Local/10000555@miko_ajam-00000158;2>AGI Rx << GET VARIABLE AMPDBHOST
<Local/10000555@miko_ajam-00000158;2>AGI Tx >> 200 result=0
<Local/10000555@miko_ajam-00000158;2>AGI Rx << GET VARIABLE AMPDBUSER
<Local/10000555@miko_ajam-00000158;2>AGI Tx >> 200 result=0
<Local/10000555@miko_ajam-00000158;2>AGI Rx << GET VARIABLE AMPDBPASS
<Local/10000555@miko_ajam-00000158;2>AGI Tx >> 200 result=0
 
Изменено: dny - 11.07.2014 11:04:28
 
Если у нет FreePBX, то используйте инструкции по ручной настройке.
 
Я по ней и делал, но там история из файла cdr ,берется, а мне нужно из mysql.
 
Цитата
там история из файла cdr ,берется,
В инструкции описан алгоритм. Его необходимо реализовать.
Описан формат, в котором следует возвращать записи разговоров.

У Вас есть выбор
  • Попробовать реализовать алгоритм самостоятельно
  • Заказать работы специалистам
  • Использовать Asterisk на FreePBX
  • Использовать Askozia
Читают тему (гостей: 1)