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

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

Страницы: Пред. 1 2 3 След.
RSS
Панель 1С + Asterisk - не подтягивается история., Проблема с получением истории.
 
Цитата
Алексей Портнов пишет:
FreePBX, если мне не изменяет память, формирует указанный Вами отчет по истории на основании данных MySql
Плагин же использует sqlite3 либо, если база не существует custom_cdr.csv файл.
Соответственно необходимо смотреть наличие истории именно в этих таблицах.

Плагин мы рекомендуем использовать для быстрого старта AsteriskNow
Если у Вас собственная сборка, то возможно проблемы из за этого.

Пробуйте настроить вручную, используйте план набора из дистрибутива.
Плагин удалять?
 
не обязательно.
функция плагина - редактирование конф файлов, более ничего.
 
Цитата
Алексей Портнов пишет:
не обязательно.
функция плагина - редактирование конф файлов, более ничего.
Ок попробуем, спец. по телефонии ушел в отпуск, думаю что активное общение через неделю продолжим

Сейчас наша задача диал-план берем из последней версии плагина и пробуем, верно?

п.с. проверил /var/log/asterisk/cdr-csv/Master.csv файл есть и записи в нем тоже, так же созданы файлы SIP-222-temp.csv i SIP-999-temp.csv, но они еще созданы 14 и 17 января

лог при установке mikoajam-2.10.0.17.tgz

Код
Файл manager.conf успешно сконфигурирован! 
Копирование файла .DS_Store\nКопирование файла cdr.conf\nКопирование файла cdr_custom.conf\nКопирование файла cdr_manager.conf\nКопирование файла cdr_sqlite3_custom.conf\nКопирование файла default.pem\nКопирование файла extensions_override_freepbx.conf\nКопирование файла http.conf\nКопирование файла manager_miko_general.conf\n
Копирование файла .DS_Store\nКопирование файла 1C_CDR.php\nКопирование файла 1C_Download.php\nКопирование файла 1C_Functions.php\nКопирование файла 1C_Functions.php~\nКопирование файла 1C_HistoryFax.php\nКопирование файла 1C_Playback.php\nКопирование файла 1C_SetupEnv.php\n
Ошибка: ссылка на директорию 1c не сформрована.
mikoajam installed successfully
Изменено: jujik - 20.02.2013 11:19:08
 
= Ошибки
в файле 1C_CDR.php

1.1 в строке
Код
$file_name = $tmpdir.md5(uniqid(uniqid(rand(),1)));
переменная $tmpdir не определена, она определяется в if(is_file($db)) ниже по коду - это абсурд
нужно вставить перед $file_name, должно быть вот так
Код
$tmpdir = GetConfDir("astspooldir", "tmp/");
$file_name = $tmpdir.md5(uniqid(uniqid(rand(),1)));
1.2 файлик в var/log/asterisk/master.db существует, но  дата обновления его 24 декабря 2012 года, вот по этому данные в историю берутся из него, меняем
Код
$db         = $astLogDir."master.db";
на

Код
$db = null;
 

результат, данные потянули с cdr_pdf.csv, история стала выводиться



теперь разбираемся с прослушивание записей

скачивание записей и звонки с истории работаю, при попытке прослушать запись звонок поступает на SIP берем трубку и связь обрывается, вывели переменную $response с файлика 1C_Playback.php

Код
CallRecord,Channel:SIP/999,FileName:/var/spool/asterisk/monitor/2013/02/20/exten-999-211-20130220-095128-1361346688.38.gsm
Файл с записью существует, проверили
Изменено: jujik - 20.02.2013 13:18:10
 
  1. Да, это действительно ошибка, но на выполнение функции приложения не влияет. Файл все равно будет создан обработан и впоследствии удален.
  2. Работа по запросу истории построена следующим образом:Сперва проверяем имеется ли файл базы данных sqlite var/log/asterisk/master.db  если файл существует, то приоритет ему. Судя по всему у Вас не настроена запись CDR в sqlite потому она пуста, используется только для служебных целей Asterisk. Если файл не найден, то идет запрос в CSV файлу - обход буквально построчно (и довольно медленно).
Если Вы используете mySql то вероятно целесообразно использовать запросы к ней напрямую. В дистрибутиве панели телефонии есть необходимый план набора.
 
Цитата
Алексей Портнов пишет:
Да, это действительно ошибка, но на выполнение функции приложения не влияет. Файл все равно будет создан обработан и впоследствии удален. Работа по запросу истории построена следующим образом:Сперва проверяем имеется ли файл базы данных sqlite var/log/asterisk/master.db если файл существует, то приоритет ему. Судя по всему у Вас не настроена запись CDR в sqlite потому она пуста, используется только для служебных целей Asterisk. Если файл не найден, то идет запрос в CSV файлу - обход буквально построчно (и довольно медленно).
Если Вы используете mySql то вероятно целесообразно использовать запросы к ней напрямую. В дистрибутиве панели телефонии есть необходимый план набора.
заменили
Код
exten => 0000777,1,NoCDR()
exten => 0000777,n,Answer(,nocdr)
exten => 0000777,n,NoOp(internal calling application: 1С_SetupEnv)
exten => 0000777,n,AGI(1C_Playback.php)
exten => 0000777,n,Hangup()
на
Код
exten => 0000777,1,NoCDR()
exten => 0000777,n,Answer()
exten => 0000777,n,Set(dbname=${AST_CONFIG(cdr_mysql.conf,global,dbname)})
exten => 0000777,n,Set(user=${AST_CONFIG(cdr_mysql.conf,global,user)})
exten => 0000777,n,Set(password=${AST_CONFIG(cdr_mysql.conf,global,password)})
exten => 0000777,n,Set(monitor_path=${ASTSPOOLDIR}/monitor)
exten => 0000777,n,Set(recordingfile=${SHELL( mysql -sse 'SEL ECT recordingfile FR OM cdr WHERE uniqueid Like ${QUOTE(${uniqueid1c}%)} LIMIT 1' -u${user} -p${password} ${dbname} )})
exten => 0000777,n,Gotoif($[${LEN(${recordingfile})} > 4]?FindInFileSystem:FindInUserfield)
exten => 0000777,n(FindInUserfield),Set(recordingfile=${SHELL( mysql -sse 'SELECT userfield FR OM cdr WH ERE uniqueid Like ${QUOTE(${uniqueid1c}%)} LIMIT 1' -u${user} -p${password} ${dbname} )})
exten => 0000777,n,ExecIf($[${LEN(${recordingfile})} < 4]?Hangup())
exten => 0000777,n(FindInFileSystem),Set(namedorashiren=$[${LEN(${recordingfile})}-4&#93
exten => 0000777,n,Set(recfile=${SHELL(find ${monitor_path} -name *${recordingfile:0:${namedorashiren}}*|head -n 1)})
exten => 0000777,n,ExecIf($[${LEN(${recfile})} > 4]?UserEvent(CallRecord,Channel: ${chan},FileName: ${recfile}))
exten => 0000777,n,Hangup()

теперь при снятии трубки ошибка "no response"
лог астериска

Код
[2013-02-20 11:36:56] WARNING[25366] file.c: File /var/spool/asterisk/monitor/2013/02/20/exten-999-211-20130220-095128-1361346688 does not exist in any format
[2013-02-20 11:36:56] WARNING[25366] file.c: Unable to open /var/spool/asterisk/monitor/2013/02/20/exten-999-211-20130220-095128-1361346688 (format 0x8 (alaw)): No such file or directory
[2013-02-20 11:36:56] WARNING[25366] app_playback.c: ast_streamfile failed on SIP/999-00000094 for \/var/spool/asterisk/monitor/2013/02/20/exten-999-211-20130220-095128-1361346688
на сервере файл exten-999-211-20130220-095128-1361346688.38.gsm
а в логах астериска без .38.gsm, почему?
Изменено: jujik - 20.02.2013 14:04:26
 
И еще ошибки с лога астериска, скорее всего проблемы с экранирование

Код
[2013-02-20 12:15:11] VERBOSE[26875] res_agi.c: 1C_CDR.php: awk -F ',' 'BEGIN {OFS=@.@} ((((substr($10,1,4) substr($10,6,2) substr($10,9,2))>=20130220) && ((substr($10,1,4) substr($10,6,2) substr($10,9,2))<20130221))&& ( (($8==Transferred
[2013-02-20 12:15:12] VERBOSE[26901] tcptls.c: SSL certificate ok
[2013-02-20 12:15:17] VERBOSE[26905] res_agi.c: 1C_CDR.php: awk -F ',' 'BEGIN {OFS=@.@} ((((substr($10,1,4) substr($10,6,2) substr($10,9,2))>=20130219) && ((substr($10,1,4) substr($10,6,2) substr($10,9,2))<20130220))&& ( (($8==Transferred
Изменено: jujik - 20.02.2013 14:18:14
 
Цитата
а в логах астериска без .38.gsm, почему?
Хороший вопрос. Воспроизведите ситуацию.
Выкладывайте лог со стороны Asterisk + отладочные сообщения со стороны 1С.
Цитата
И еще ошибки с лога астериска, скорее всего проблемы с экранирование
На сколько я понял это НЕ ошибки, а отладочные сообщения VERBOSE
Судя по всему относиться к AGI скрипту только не понял из какого место вызваны.
 
Использую плагин, и настройки его по вашей вики + исправления для файла 1С_CDR которые описал выше
Asterisk (Ver. 1.8.18.1) + FreePBX 2.10.1.5, все обновлено до последних версий
Код
         Asterisk AJAM Settings          2.10.0.17          telefon1c.ru          Enabled                  
в файле 1C_Playback.php, убрал проверку на существование cdr_sqlite3_custom.so, ибо файл библиотека существует, а данные пишутся в cdr-custom/cdr_pdf.csv (проверено на 100%)

открываю Журнал звонков, нажимаю правой кнопкой, выбираю Воспроизвести запись
идем входящий вызов на софтфон, подымаю трубку и сразу разрыв соединения



лог с 1С
Код
Инициирован запрос имени файла записи CDR
[Newchannel] <generic event="Newchannel" privilege="call,all" channel="Local/0000777@miko_ajam-0000026a;1" channelstate="0" channelstatedesc="Down" calleridnum="" calleridname="" accountcode="" exten="0000777" context="miko_ajam" uniqueid="1361382071.1957" />
[Newchannel] <generic event="Newchannel" privilege="call,all" channel="Local/0000777@miko_ajam-0000026a;2" channelstate="4" channelstatedesc="Ring" calleridnum="" calleridname="" accountcode="" exten="0000777" context="miko_ajam" uniqueid="1361382071.1958" />
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="Local/0000777@miko_ajam-0000026a;1" variable="uniqueid1c" value="1361381818" uniqueid="1361382071.1957" />
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="Local/0000777@miko_ajam-0000026a;1" variable="chan" value="SIP/999" uniqueid="1361382071.1957" />
[NewAccountCode] <generic event="NewAccountCode" privilege="call,all" channel="Local/0000777@miko_ajam-0000026a;1" uniqueid="1361382071.1957" accountcode="" oldaccountcode="" />
[NewCallerid] <generic event="NewCallerid" privilege="call,all" channel="Local/0000777@miko_ajam-0000026a;1" calleridnum="" calleridname="" uniqueid="1361382071.1957" cid_callingpres="67 (Number Unavailable)" />
[Newexten] <generic event="Newexten" privilege="dialplan,all" channel="Local/0000777@miko_ajam-0000026a;2" context="miko_ajam" extension="0000777" priority="1" application="NoCDR" appdata="" uniqueid="1361382071.1958" />
[Newexten] <generic event="Newexten" privilege="dialplan,all" channel="Local/0000777@miko_ajam-0000026a;2" context="miko_ajam" extension="0000777" priority="2" application="Answer" appdata=",nocdr" uniqueid="1361382071.1958" />
[Newstate] <generic event="Newstate" privilege="call,all" channel="Local/0000777@miko_ajam-0000026a;2" channelstate="6" channelstatedesc="Up" calleridnum="" calleridname="" connectedlinenum="" connectedlinename="" uniqueid="1361382071.1958" />
[Newstate] <generic event="Newstate" privilege="call,all" channel="Local/0000777@miko_ajam-0000026a;1" channelstate="6" channelstatedesc="Up" calleridnum="" calleridname="" connectedlinenum="" connectedlinename="" uniqueid="1361382071.1957" />
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="Local/0000777@miko_ajam-0000026a;1" variable="uniqueid1c" value="1361381818" uniqueid="1361382071.1957" />
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="Local/0000777@miko_ajam-0000026a;1" variable="chan" value="SIP/999" uniqueid="1361382071.1957" />
[NewAccountCode] <generic event="NewAccountCode" privilege="call,all" channel="Local/0000777@miko_ajam-0000026a;1" uniqueid="1361382071.1957" accountcode="" oldaccountcode="" />
[Registry] <generic event="Registry" privilege="system,all" channeltype="SIP" domain="91.142.165.206" status="Registered" />
[Newexten] <generic event="Newexten" privilege="dialplan,all" channel="Local/0000777@miko_ajam-0000026a;2" context="miko_ajam" extension="0000777" priority="3" application="NoOp" appdata="internal calling application: 1??_SetupEnv" uniqueid="1361382071.1958" />
[Newexten] <generic event="Newexten" privilege="dialplan,all" channel="Local/0000777@miko_ajam-0000026a;2" context="miko_ajam" extension="0000777" priority="4" application="AGI" appdata="1C_Playback.php" uniqueid="1361382071.1958" />
[UserEvent] <generic event="UserEvent" privilege="user,all" userevent="CallRecord" channel="SIP/999" filename="/var/spool/asterisk/monitor/2013/02/20/exten-999-0939115058-20130220-193708-1361381818.1950.gsm" />
Начало прослушивания разговора /var/spool/asterisk/monitor/2013/02/20/exten-999-0939115058-20130220-193708-1361381818
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="Local/0000777@miko_ajam-0000026a;2" variable="AGISTATUS" value="HANGUP" uniqueid="1361382071.1958" />
[Hangup] <generic event="Hangup" privilege="call,all" channel="Local/0000777@miko_ajam-0000026a;2" uniqueid="1361382071.1958" calleridnum="<unknown>" calleridname="<unknown>" connectedlinenum="<unknown>" connectedlinename="<unknown>" cause="0" cause_txt="Unknown" />
[Hangup] <generic event="Hangup" privilege="call,all" channel="Local/0000777@miko_ajam-0000026a;1" uniqueid="1361382071.1957" calleridnum="<unknown>" calleridname="<unknown>" connectedlinenum="<unknown>" connectedlinename="<unknown>" cause="0" cause_txt="Unknown" />
[Newchannel] <generic event="Newchannel" privilege="call,all" channel="SIP/999-0000029f" channelstate="0" channelstatedesc="Down" calleridnum="999" calleridname="999" accountcode="" exten="" context="from-internal" uniqueid="1361382072.1959" />
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="SIP/999-0000029f" variable="SIPCALLID" value="49072ef64ec53ff62abc03f8180f6075@10.12.0.1:5060" uniqueid="1361382072.1959" />
[NewAccountCode] <generic event="NewAccountCode" privilege="call,all" channel="SIP/999-0000029f" uniqueid="1361382072.1959" accountcode="" oldaccountcode="" />
[NewCallerid] <generic event="NewCallerid" privilege="call,all" channel="SIP/999-0000029f" calleridnum="999" calleridname="CDR_RECORDS" uniqueid="1361382072.1959" cid_callingpres="0 (Presentation Allowed, Not Screened)" />
[ExtensionStatus] <generic event="ExtensionStatus" privilege="call,all" exten="999" context="ext-local" hint="SIP/999" status="8" />
[Cdr] <generic event="Cdr" privilege="cdr,all" accountcode="" source="" destination="0000777" destinationcontext="miko_ajam" callerid="" channel="Local/0000777@miko_ajam-0000026a;1" destinationchannel="" lastapplication="Wait" lastdata="10" starttime="2013-02-20 19:41:11" answertime="2013-02-20 19:41:11" endtime="2013-02-20 19:41:12" duration="1" billableseconds="1" disposition="ANSWERED" amaflags="DOCUMENTATION" uniqueid="1361382071.1957" userfield="" />
[Newstate] <generic event="Newstate" privilege="call,all" channel="SIP/999-0000029f" channelstate="5" channelstatedesc="Ringing" calleridnum="999" calleridname="CDR_RECORDS" connectedlinenum="" connectedlinename="CDR_RECORDS" uniqueid="1361382072.1959" />
[Newstate] <generic event="Newstate" privilege="call,all" channel="SIP/999-0000029f" channelstate="6" channelstatedesc="Up" calleridnum="999" calleridname="CDR_RECORDS" connectedlinenum="" connectedlinename="CDR_RECORDS" uniqueid="1361382072.1959" />
[NewAccountCode] <generic event="NewAccountCode" privilege="call,all" channel="SIP/999-0000029f" uniqueid="1361382072.1959" accountcode="" oldaccountcode="" />
[ExtensionStatus] <generic event="ExtensionStatus" privilege="call,all" exten="999" context="ext-local" hint="SIP/999" status="1" />
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="SIP/999-0000029f" variable="PLAYBACKSTATUS" value="FAILED" uniqueid="1361382072.1959" />
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="SIP/999-0000029f" variable="RTPAUDIOQOS" value="ssrc=71594860;themssrc=0;lp=0;rxjitter=0.000000;rxcount=0;txjitter=0.000000;txcount=0;rlp=0;rtt=0.000000" uniqueid="1361382072.1959" />
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="SIP/999-0000029f" variable="RTPAUDIOQOSJITTER" value="minrxjitter=0.000000;maxrxjitter=0.000000;avgrxjitter=0.000000;stdevrxjitter=0.000000;reported_minjitter=0.000000;reported_maxjitter=0.000000;reported_avgjitter=0.000000;reported_stdevjitter=0.000000;" uniqueid="1361382072.1959" />
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="SIP/999-0000029f" variable="RTPAUDIOQOSLOSS" value="minrxlost=0.000000;maxrxlost=0.000000;avgrxlost=0.000000;stdevrxlost=0.000000;reported_minlost=0.000000;reported_maxlost=0.000000;reported_avglost=0.000000;reported_stdevlost=0.000000;" uniqueid="1361382072.1959" />
[ExtensionStatus] <generic event="ExtensionStatus" privilege="call,all" exten="999" context="ext-local" hint="SIP/999" status="0" />
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="SIP/999-0000029f" variable="RTPAUDIOQOSRTT" value="minrtt=0.000000;maxrtt=0.000000;avgrtt=0.000000;stdevrtt=0.000000;" uniqueid="1361382072.1959" />
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="SIP/999-0000029f" variable="RTPAUDIOQOS" value="ssrc=71594860;themssrc=0;lp=0;rxjitter=0.000000;rxcount=0;txjitter=0.000000;txcount=0;rlp=0;rtt=0.000000" uniqueid="1361382072.1959" />
[Hangup] <generic event="Hangup" privilege="call,all" channel="SIP/999-0000029f" uniqueid="1361382072.1959" calleridnum="999" calleridname="CDR_RECORDS" connectedlinenum="<unknown>" connectedlinename="CDR_RECORDS" cause="16" cause_txt="Normal Clearing" />
[Cdr] <generic event="Cdr" privilege="cdr,all" accountcode="" source="999" destination="s" destinationcontext="from-internal" callerid=""CDR_RECORDS" <999>" channel="SIP/999-0000029f" destinationchannel="" lastapplication="Playback" lastdata="\/var/spool/asterisk/monitor/2013/02/20/exten-999-0939115058-20130220-193708-13" starttime="2013-02-20 19:41:12" answertime="2013-02-20 19:41:16" endtime="2013-02-20 19:41:16" duration="4" billableseconds="0" disposition="ANSWERED" amaflags="DOCUMENTATION" uniqueid="1361382072.1959" userfield="" />
[Registry] <generic event="Registry" privilege="system,all" channeltype="SIP" domain="sip1.binotel.com" status="Registered" />
[Registry] <generic event="Registry" privilege="system,all" channeltype="SIP" domain="sip1.binotel.com" status="Registered" />
лог с Asterisk Log Files, последние 20 строк (было две попытки воспроизвести после первой лог 1С почистил)

Код
[2013-02-20 19:35:19] VERBOSE[2743] tcptls.c: SSL certificate ok
[2013-02-20 19:36:13] VERBOSE[2750] res_agi.c: 1C_CDR.php: awk -F ',' 'BEGIN {OFS=@.@} ((((substr($10,1,4) substr($10,6,2) substr($10,9,2))>=20130220) && ((substr($10,1,4) substr($10,6,2) substr($10,9,2))<20130221))&& ( (($8==Transferred
[2013-02-20 19:36:19] VERBOSE[2774] tcptls.c: SSL certificate ok
[2013-02-20 19:36:32] VERBOSE[2778] res_agi.c: 1C_CDR.php: awk -F ',' 'BEGIN {OFS=@.@} ((((substr($10,1,4) substr($10,6,2) substr($10,9,2))>=20130219) && ((substr($10,1,4) substr($10,6,2) substr($10,9,2))<20130220))&& ( (($8==Transferred
[2013-02-20 19:36:58] NOTICE[2801] channel.c: Dropping incompatible voice frame on SIP/sip-life-0000029c of format ulaw since our native format has changed to 0x8 (alaw)
[2013-02-20 19:37:19] VERBOSE[2853] tcptls.c: SSL certificate ok
[2013-02-20 19:37:28] WARNING[2881] file.c: File /var/spool/asterisk/monitor/2013/02/20/exten-999-0939115058-20130220-193708-1361381818 does not exist in any format
[2013-02-20 19:37:28] WARNING[2881] file.c: Unable to open /var/spool/asterisk/monitor/2013/02/20/exten-999-0939115058-20130220-193708-1361381818 (format 0x8 (alaw)): No such file or directory
[2013-02-20 19:37:28] WARNING[2881] app_playback.c: ast_streamfile failed on SIP/999-0000029e for \/var/spool/asterisk/monitor/2013/02/20/exten-999-0939115058-20130220-193708-1361381818
[2013-02-20 19:38:00] VERBOSE[2899] res_agi.c: 1C_CDR.php: awk -F ',' 'BEGIN {OFS=@.@} ((((substr($10,1,4) substr($10,6,2) substr($10,9,2))>=20130220) && ((substr($10,1,4) substr($10,6,2) substr($10,9,2))<20130221))&& ( (($8==Transferred
[2013-02-20 19:38:19] VERBOSE[2925] tcptls.c: SSL certificate ok
[2013-02-20 19:39:19] VERBOSE[2947] tcptls.c: SSL certificate ok
[2013-02-20 19:40:19] VERBOSE[2970] tcptls.c: SSL certificate ok
[2013-02-20 19:41:16] WARNING[3001] file.c: File /var/spool/asterisk/monitor/2013/02/20/exten-999-0939115058-20130220-193708-1361381818 does not exist in any format
[2013-02-20 19:41:16] WARNING[3001] file.c: Unable to open /var/spool/asterisk/monitor/2013/02/20/exten-999-0939115058-20130220-193708-1361381818 (format 0x8 (alaw)): No such file or directory
[2013-02-20 19:41:16] WARNING[3001] app_playback.c: ast_streamfile failed on SIP/999-0000029f for \/var/spool/asterisk/monitor/2013/02/20/exten-999-0939115058-20130220-193708-1361381818
[2013-02-20 19:41:19] VERBOSE[3007] tcptls.c: SSL certificate ok
[2013-02-20 19:42:19] VERBOSE[3043] tcptls.c: SSL certificate ok
[2013-02-20 19:43:19] VERBOSE[3065] tcptls.c: SSL certificate ok
[2013-02-20 19:44:19] VERBOSE[3082] tcptls.c: SSL certificate ok

Примичание, проверено! в фале 1C_Playback.php, который я так понимаю отвечает за формирование запроса на перезвон и прослушивание записи
в самом низу файла в строку
Код
$agi->exec("UserEvent", $response);  
передается петь к файлу прослушивания, к примеру
$response = CallRecord,Channel:SIP/999,FileName:/var/spool/asterisk/monitor/2013/02/20/exten-999-211-20130220-095128-1361346688.38.gsm
(проверено на 100%)
то есть где-то обрезается формат файла и астериск не может его обнаружить, о чем и свидетельствуют его логи
 
В панели телефонии в форме обработки есть функция
Код
&НаКлиенте
Функция CutID(UniqueID) 
   ПозТчк = Найти(UniqueID, ".";
   Если ПозТчк = 0 Тогда
      Возврат UniqueID;
   КонецЕсли;
   
   Возврат Лев(UniqueID, ПозТчк - 1);
КонецФункции
она и режет, имя файла должно быть без расширения. Необходимо эту функцию заменить на
Код
&НаКлиенте// При прослушивании файлов записи нам необходимо передавать астериску имя файла без расширения.
Код
//Данная функция убирает расширения из имени файла
//
Функция УбратьРасширениеВФайлеЗаписи(Знач ИмяФайлаЗаписи)
   ИмяФайлаЗаписи = СокрЛП(ИмяФайлаЗаписи);
   Для к=0 по 6 Цикл //Врядли длинна расширения будет больше 6-ти символов.
      //Обойдем имя файла справа, чтобы найти расширение и отсечь его.
      СимволПоИндексуСКонцаСтроки=Сред(ИмяФайлаЗаписи,СтрДлина(ИмяФайлаЗаписи)-к,1);
      Если СимволПоИндексуСКонцаСтроки="." Тогда //  нашли конец расширения
         ИмяФайлаЗаписи=Лев(ИмяФайлаЗаписи,СтрДлина(ИмяФайлаЗаписи)-к-1); 
         Прервать;
      КонецЕсли; 
   КонецЦикла;   
   Возврат ИмяФайлаЗаписи; 
КонецФункции //УбратьРасширениеВФайлеЗаписи()
 
Впечатление, что этот механизм обрезки взят откуда то... Как я понял:

Функция CutID() у нас         - эквивалент УбратьРасширениеВФайлеЗаписи(), какой вы предлагаете, а
параметр UniqueID у нас   - это Знач ИмяФайлаЗаписи у вас.


Надеюсь грубо вот так заменить только наименования функций и параметров и все "покатит". Но можно писать под нашу, то есть вами предлагаемую реализацию, которую мы покупаем у вас.

P.S.
Получается параллельно к вашему КБ у нас работает связка людей над интеграцией 1С + Астериск. Результат на сегодняшний день, история уже тянется, записи слушаются, это то что касается данной темы. Ниже выкладываю процедуру обрезки какой она должна быть в панельке 1.7.18.3 для УНФ


Код
&НаКлиенте
//Данная функция убирает расширения из имени файла
//
Функция CutID(Знач ИмяФайлаЗаписи)
   ИмяФайлаЗаписи = СокрЛП(ИмяФайлаЗаписи);
   Для к=0 по 6 Цикл //Врядли длинна расширения будет больше 6-ти символов.
      //Обойдем имя файла справа, чтобы найти расширение и отсечь его.
      СимволПоИндексуСКонцаСтроки=Сред(ИмяФайлаЗаписи,СтрДлина(ИмяФайлаЗаписи)-к,1);
      Если СимволПоИндексуСКонцаСтроки="." Тогда //  нашли конец расширения
         ИмяФайлаЗаписи=Лев(ИмяФайлаЗаписи,СтрДлина(ИмяФайлаЗаписи)-к-1); 
         Прервать;
      КонецЕсли; 
   КонецЦикла;   
   Возврат ИмяФайлаЗаписи; 
КонецФункции //УбратьРасширениеВФайлеЗаписи()
Может мы как то объединимся?))
Изменено: Тарас - 21.02.2013 13:29:51
 
Осталась еще ошибка при запроси на получение записей, лог астрериска

Код
[2013-02-21 11:22:05] VERBOSE[14072] res_agi.c: 1C_CDR.php: awk -F ',' 'BEGIN {OFS=@.@} ((((substr($10,1,4) substr($10,6,2) substr($10,9,2))>=20130221) && ((substr($10,1,4) substr($10,6,2) substr($10,9,2))<20130222))&& ( (($8==Transferred
[2013-02-21 11:22:34] VERBOSE[14169] tcptls.c: SSL certificate ok
[2013-02-21 11:22:55] VERBOSE[14210] res_agi.c: 1C_CDR.php: awk -F ',' 'BEGIN {OFS=@.@} ((((substr($10,1,4) substr($10,6,2) substr($10,9,2))>=20130220) && ((substr($10,1,4) substr($10,6,2) substr($10,9,2))<20130221))&& ( (($8==Transferred

скорее всего проблема с экранированием символов, или лишними кавычками\скобками
поковыряем в свободное время
все работает вроде
 
Цитата
скорее всего проблема с экранированием символов, или лишними кавычками\скобками
На Asterisk скорее всего уровни отладки не отключили. вот и сыпятся VERBOSE

в конслоли CLI выполните
core set verbose 0
 
Цитата
Новый текстовый документ.txtАлексей Портнов пишет:
Цитата скорее всего проблема с экранированием символов, или лишними кавычками\скобками На Asterisk скорее всего уровни отладки не отключили. вот и сыпятся VERBOSE

в конслоли CLI выполните
core set verbose 0
получили лицензию для СРМ, пробуем прикрутить
запускаем панель
Код
Ожидаем соединения с сервером...
Успешная авторизация: HTTP/1.1 200 OK
Server: Asterisk/1.8.18.1
Date: Thu, 14 Mar 2013 15:58:07 GMT
Connection: close
Cache-Control: no-cache, no-store
Content-Length: 55
Content-type: text/plain
Cache-Control: no-cache;
Set-Cookie: mansession_id="bdc833bf"; Version=1; Max-Age=60
Pragma: SuppressEvents

Response: Success
Message: Authentication accepted
Инициирован запрос настроек пира 231 с сервера Asterisk.
Инициирован запрос CDR
[HASP_KEY_INFO] <?xml version="1.0" encoding="UTF-8" ?>
<sessioninfo>
  <feature id="28">
    <license>
      <license_type>perpetual</license_type>
    </license>
    <hasp id="430152701950826534" type="HASP-SL-AdminMode" />
    <license_manager>
      <hostname>1C2008R2SERVER</hostname>
      <ip>127.0.0.1</ip>
    </license_manager>
  </feature>
</sessioninfo>
[Newchannel] <generic event="Newchannel" privilege="call,all" channel="Local/0000555@miko_ajam-00000eb8;1" channelstate="0" channelstatedesc="Down" calleridnum="" calleridname="" accountcode="" exten="0000555" context="miko_ajam" uniqueid="1363276688.11820" />
[Newchannel] <generic event="Newchannel" privilege="call,all" channel="Local/0000555@miko_ajam-00000eb8;2" channelstate="4" channelstatedesc="Ring" calleridnum="" calleridname="" accountcode="" exten="0000555" context="miko_ajam" uniqueid="1363276688.11821" />
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="Local/0000555@miko_ajam-00000eb8;1" variable="v4" value="231" uniqueid="1363276688.11820" />
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="Local/0000555@miko_ajam-00000eb8;1" variable="v3" value="2013-03-15" uniqueid="1363276688.11820" />
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="Local/0000555@miko_ajam-00000eb8;1" variable="v2" value="2013-03-14" uniqueid="1363276688.11820" />
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="Local/0000555@miko_ajam-00000eb8;1" variable="v1" value="SIP/231" uniqueid="1363276688.11820" />
[NewAccountCode] <generic event="NewAccountCode" privilege="call,all" channel="Local/0000555@miko_ajam-00000eb8;1" uniqueid="1363276688.11820" accountcode="" oldaccountcode="" />
[NewCallerid] <generic event="NewCallerid" privilege="call,all" channel="Local/0000555@miko_ajam-00000eb8;1" calleridnum="" calleridname="" uniqueid="1363276688.11820" cid_callingpres="67 (Number Unavailable)" />
[Newexten] <generic event="Newexten" privilege="dialplan,all" channel="Local/0000555@miko_ajam-00000eb8;2" context="miko_ajam" extension="0000555" priority="1" application="NoCDR" appdata="" uniqueid="1363276688.11821" />
[Newexten] <generic event="Newexten" privilege="dialplan,all" channel="Local/0000555@miko_ajam-00000eb8;2" context="miko_ajam" extension="0000555" priority="2" application="Answer" appdata=",nocdr" uniqueid="1363276688.11821" />
[Newstate] <generic event="Newstate" privilege="call,all" channel="Local/0000555@miko_ajam-00000eb8;2" channelstate="6" channelstatedesc="Up" calleridnum="" calleridname="" connectedlinenum="" connectedlinename="" uniqueid="1363276688.11821" />
[Newstate] <generic event="Newstate" privilege="call,all" channel="Local/0000555@miko_ajam-00000eb8;1" channelstate="6" channelstatedesc="Up" calleridnum="" calleridname="" connectedlinenum="" connectedlinename="" uniqueid="1363276688.11820" />
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="Local/0000555@miko_ajam-00000eb8;1" variable="v4" value="231" uniqueid="1363276688.11820" />
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="Local/0000555@miko_ajam-00000eb8;1" variable="v3" value="2013-03-15" uniqueid="1363276688.11820" />
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="Local/0000555@miko_ajam-00000eb8;1" variable="v2" value="2013-03-14" uniqueid="1363276688.11820" />
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="Local/0000555@miko_ajam-00000eb8;1" variable="v1" value="SIP/231" uniqueid="1363276688.11820" />
[NewAccountCode] <generic event="NewAccountCode" privilege="call,all" channel="Local/0000555@miko_ajam-00000eb8;1" uniqueid="1363276688.11820" accountcode="" oldaccountcode="" />
[Newexten] <generic event="Newexten" privilege="dialplan,all" channel="Local/0000555@miko_ajam-00000eb8;2" context="miko_ajam" extension="0000555" priority="3" application="NoOp" appdata="internal calling application: 1??_SetupEnv" uniqueid="1363276688.11821" />
[Newexten] <generic event="Newexten" privilege="dialplan,all" channel="Local/0000555@miko_ajam-00000eb8;2" context="miko_ajam" extension="0000555" priority="4" application="AGI" appdata="1C_CDR.php" uniqueid="1363276688.11821" />
[UserEvent] <generic event="UserEvent" privilege="user,all" userevent="Refresh1CHistory" channel="SIP/231" date="20130314" />
[VarSet] <generic event="VarSet" privilege="dialplan,all" channel="Local/0000555@miko_ajam-00000eb8;2" variable="AGISTATUS" value="HANGUP" uniqueid="1363276688.11821" />
[Hangup] <generic event="Hangup" privilege="call,all" channel="Local/0000555@miko_ajam-00000eb8;2" uniqueid="1363276688.11821" calleridnum="<unknown>" calleridname="<unknown>" connectedlinenum="<unknown>" connectedlinename="<unknown>" cause="0" cause_txt="Unknown" />
[Hangup] <generic event="Hangup" privilege="call,all" channel="Local/0000555@miko_ajam-00000eb8;1" uniqueid="1363276688.11820" calleridnum="<unknown>" calleridname="<unknown>" connectedlinenum="<unknown>" connectedlinename="<unknown>" cause="0" cause_txt="Unknown" />
[Cdr] <generic event="Cdr" privilege="cdr,all" accountcode="" source="" destination="0000555" destinationcontext="miko_ajam" callerid="" channel="Local/0000555@miko_ajam-00000eb8;1" destinationchannel="" lastapplication="Wait" lastdata="10" starttime="2013-03-14 17:58:08" answertime="2013-03-14 17:58:08" endtime="2013-03-14 17:58:08" duration="0" billableseconds="0" disposition="ANSWERED" amaflags="DOCUMENTATION" uniqueid="1363276688.11820" userfield="" />

входящие вызовы не мониторит, но после окончания звонка показывает о пропущенном, лог в прикрепленном файле

помогите разобраться
Изменено: jujik - 14.03.2013 20:13:13
 
Страницы: Пред. 1 2 3 След.
Читают тему