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

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

RSS
Скачивание записи разговоров в панели телефонии, Не удаётся скачать запись разговора.
 
Asterisk 11.25.0-rc1 + УТ10.3
Панель телефонии настроена и работает, история ведётся, разговор записывается и можно прослушать его через внешний телефон. Не получается скачать запись. При нажатии на кнопку 'Скачать запись текущего разговора' ничего не происходит. В консоли никаких предупреждений и ошибок:
Код
    -- Executing [10000666@miko_ajam:1] NoCDR("Local/10000666@miko_ajam-00000032;2", "") in new stack
    -- Executing [10000666@miko_ajam:2] NoOp("Local/10000666@miko_ajam-00000032;2", "internal calling application: 10000666 1C_Download") in new stack
    -- Executing [10000666@miko_ajam:3] AGI("Local/10000666@miko_ajam-00000032;2", "1C_Download.php") in new stack
    -- Launched AGI Script /var/lib/asterisk/agi-bin/1C_Download.php
    -- AGI Script Executing Application: (UserEvent) Options: (StartDownloadRecord,Channel:SIP/536,fPath:80/admin/1c/download/index.php?type=Records&view=,FileName:/var/spool/asterisk/monitor/2017-09/18/in_536_2017-09-18-15-12-16.wav)
    -- <Local/10000666@miko_ajam-00000032;2>AGI Script 1C_Download.php completed, returning 4
  == Spawn extension (miko_ajam, 10000666, 3) exited non-zero on 'Local/10000666@miko_ajam-00000032;2'
Я что-то не донастроил или пользуюсь панелью неправильно?
 
Цитата
(UserEvent) Options: (StartDownloadRecord,Channel:SIP/536,fPath:80/admin/1c/download/index.php?type=Records&view=,FileName:/var/spool/asterisk/monitor/2017-09/18/in_536_2017-09-18-15-12-16.wav)  

на первый взгляд все хорошо.
попробуйте в web браузере открыть ссылку:
http://IP_PBX:80/admin/1c/download/index.php?type=Records&view=/var/spool/asterisk/monitor/2017-09/18/in_536_2017-09-18-15-12-16.wav
 
404 File not found!
 
Я недостаточно предоставил сведений?
При открытии указанной ссылки в браузере получаю сообщение:
404 File not found!

Прошу пояснить в чём причина данного сообщения и как добиться возможности скачивать файлы из панели телефонии.
 
Пока данных достаточно.
Скрипт опубликован как ресурс "/admin/1c/download/index.php". Он пытается найти файл записи по пути:
/var/spool/asterisk/monitor/2017-09/18/in_536_2017-09-18-15-12-16.wav

найдите этот файл, где он расположен? Не был ли перемещен / пере именован.
find / -name in_536_2017-09-18-15-12-16.wav
 
Значит давайте будем рассматривать файл /var/spool/asterisk/monitor/2017-09/27/in_524_2017-09-27-15-50-58.wav. С ним всё тоже самое - в истории он есть, также его можно прослушать через внешний телефонный аппарат. При попытке скачать в консоли всё тоже самое:
Код
   -- Executing [10000666@miko_ajam:1] NoCDR("Local/10000666@miko_ajam-00000162;2", "") in new stack
    -- Executing [10000666@miko_ajam:2] NoOp("Local/10000666@miko_ajam-00000162;2", "internal calling application: 10000666 1C_Download") in new stack
    -- Executing [10000666@miko_ajam:3] AGI("Local/10000666@miko_ajam-00000162;2", "1C_Download.php") in new stack
    -- Launched AGI Script /var/lib/asterisk/agi-bin/1C_Download.php
    -- AGI Script Executing Application: (UserEvent) Options: (StartDownloadRecord,Channel:SIP/536,fPath:80/admin/1c/download/index.php?type=Records&view=,FileName:/var/spool/asterisk/monitor/2017-09/27/in_524_2017-09-27-15-50-58.wav)
    -- <Local/10000666@miko_ajam-00000162;2>AGI Script 1C_Download.php completed, returning 4
  == Spawn extension (miko_ajam, 10000666, 3) exited non-zero on 'Local/10000666@miko_ajam-00000162;2'
При попытке выполнить запрос в браузере
Код
http://kdds.itstver.ru/admin/1c/download/index.php?type=Records&view=/var/spool/asterisk/monitor/2017-09/27/in_524_2017-09-27-15-50-58.wav
получаем 404 File not found!
Теперь find в консоли системы:
Код
root@kdds:~# find / -name in_524_2017-09-27-15-50-58.wav
/var/spool/asterisk/monitor/2017-09/27/in_524_2017-09-27-15-50-58.wav
То есть файл в наличии. Собственно об этом же чётко свидетельствует возможность прослушивания файла через телефон.
 
Прошу приложить файл
  • /admin/1c/download/index.php (во вложение поправленный мной файл из дистрибутива "dialplan_miko_ajam") в нем добавил немного информации для отладки
Путь указан относительно www директории.

Установлен ли sox?
 
Sox установлен.
Произвёл замену файла index.php на присланный вами.
При нажати кнопки скачивания записи в консоли астера видим следующее:
Код
    -- Executing [10000666@miko_ajam:1] NoCDR("Local/10000666@miko_ajam-00000193;2", "") in new stack
    -- Executing [10000666@miko_ajam:2] NoOp("Local/10000666@miko_ajam-00000193;2", "internal calling application: 10000666 1C_Download") in new stack
    -- Executing [10000666@miko_ajam:3] AGI("Local/10000666@miko_ajam-00000193;2", "1C_Download.php") in new stack
    -- Launched AGI Script /var/lib/asterisk/agi-bin/1C_Download.php
    -- AGI Script Executing Application: (UserEvent) Options: (StartDownloadRecord,Channel:SIP/536,fPath:80/admin/1c/download/index.php?type=Records&view=,FileName:/var/spool/asterisk/monitor/2017-09/27/in_524_2017-09-27-15-50-58.wav)
    -- <Local/10000666@miko_ajam-00000193;2>AGI Script 1C_Download.php completed, returning 4
  == Spawn extension (miko_ajam, 10000666, 3) exited non-zero on 'Local/10000666@miko_ajam-00000193;2'
В окне отладочных сообщений 1С:
Код
Просматриваем файл записи для разговора с идентификатором 1506516658.3624
Инициирован запрос имени файла записи CDR <ajax-response>
<response type='object' id='unknown'><generic response='Success' actionid='9f297' message='Originate successfully queued' /></response>
</ajax-response>
 <generic event="Newchannel" privilege="call,all" channel="Local/10000666@miko_ajam-00000193;1" channelstate="0" channelstatedesc="Down" calleridnum="" calleridname="" accountcode="" exten="10000666" context="miko_ajam" uniqueid="1506628151.4759" />
 <generic event="Newchannel" privilege="call,all" channel="Local/10000666@miko_ajam-00000193;2" channelstate="4" channelstatedesc="Ring" calleridnum="" calleridname="" accountcode="" exten="10000666" context="miko_ajam" uniqueid="1506628151.4760" />
 <generic event="NewAccountCode" privilege="call,all" channel="Local/10000666@miko_ajam-00000193;1" uniqueid="1506628151.4759" accountcode="" oldaccountcode="" />
 <generic event="NewCallerid" privilege="call,all" channel="Local/10000666@miko_ajam-00000193;1" calleridnum="" calleridname="" uniqueid="1506628151.4759" cid_callingpres="67 (Number Unavailable)" />
 <generic event="LocalBridge" privilege="call,all" channel1="Local/10000666@miko_ajam-00000193;1" channel2="Local/10000666@miko_ajam-00000193;2" uniqueid1="1506628151.4759" uniqueid2="1506628151.4760" context="miko_ajam" exten="10000666" localoptimization="Yes" />
 <generic event="UserEvent" privilege="user,all" userevent="StartDownloadRecord" uniqueid="1506628151.4760" channel="SIP/536" fpath="80/admin/1c/download/index.php?type=Records&view=" filename="/var/spool/asterisk/monitor/2017-09/27/in_524_2017-09-27-15-50-58.wav" />
 <generic event="Newstate" privilege="call,all" channel="Local/10000666@miko_ajam-00000193;2" channelstate="6" channelstatedesc="Up" calleridnum="" calleridname="" connectedlinenum="" connectedlinename="" uniqueid="1506628151.4760" />
 <generic event="Newstate" privilege="call,all" channel="Local/10000666@miko_ajam-00000193;1" channelstate="6" channelstatedesc="Up" calleridnum="" calleridname="" connectedlinenum="" connectedlinename="" uniqueid="1506628151.4759" />
 <generic event="NewAccountCode" privilege="call,all" channel="Local/10000666@miko_ajam-00000193;1" uniqueid="1506628151.4759" accountcode="" oldaccountcode="" />
 <generic event="OriginateResponse" privilege="call,all" actionid="9f297" response="Success" channel="Local/10000666@miko_ajam-00000193;1" application="NoCDR" data="" reason="4" uniqueid="1506628151.4759" calleridnum="<unknown>" calleridname="<unknown>" />
 <generic event="HangupRequest" privilege="call,all" channel="Local/10000666@miko_ajam-00000193;2" uniqueid="1506628151.4760" />
 <generic event="SoftHangupRequest" privilege="call,all" channel="Local/10000666@miko_ajam-00000193;2" uniqueid="1506628151.4760" cause="16" />
 <generic event="Hangup" privilege="call,all" channel="Local/10000666@miko_ajam-00000193;2" uniqueid="1506628151.4760" calleridnum="<unknown>" calleridname="<unknown>" connectedlinenum="<unknown>" connectedlinename="<unknown>" accountcode="" cause="0" cause_txt="Unknown" />
 <generic event="Hangup" privilege="call,all" channel="Local/10000666@miko_ajam-00000193;1" uniqueid="1506628151.4759" calleridnum="<unknown>" calleridname="<unknown>" connectedlinenum="<unknown>" connectedlinename="<unknown>" accountcode="" cause="0" cause_txt="Unknown" />
 <generic response="Success" actionid="9f297" message="Originate successfully queued" />
 
Тут отладки не увидите.
Просто откройте ссылку в вэб браузере.
http://IP_PBX:80/admin/1c/download/index.php?type=Records&view=/var/spool/asterisk/monitor/2017-09/18/in_536_2017-09-18-15-12-16.wav
 
404 File not found! TODO3 /tmp/ /var/spool/asterisk/fax/
/var/spool/asterisk/monitor/
/var/spool/asterisk/monitor/2017-09/18/in_536_2017-09-18-15-12-16.wav
 
Скрипт не нашел файл записи по пути "/var/spool/asterisk/monitor/2017-09/18/in_536_2017-09-18-15-12-16.wav".
 
/var/spool/asterisk/monitor/2017-09/18/in_536_2017-09-18-15-12-16.wav - удалён, я перенастраивал монтируемые диски и этот фал удалён мною. Извиняюсь, машинально запустил не ту строку в браузере.

27.09.2017 23:37:17 я написал что рассматриваем файл  /var/spool/asterisk/monitor/2017-09/27/in_524_2017-09-27-15-50-58.wav - он в наличии.
Делаю в браузере следующий запрос:
Код
http://192.168.100.198:80/admin/1c/download/index.php?type=Records&view=/var/spool/asterisk/monitor/2017-09/27/in_524_2017-09-27-15-50-58.wav
Результат:
Код
404 File not found! TODO3 /tmp/ /var/spool/asterisk/fax/ /var/spool/asterisk/monitor/ /var/spool/asterisk/monitor/2017-09/27/in_524_2017-09-27-15-50-58.wav
В системной консоли можно выполнить find:
Код
root@kdds:~# find /var/spool/asterisk/monitor/2017-09/27/in_524_2017-09-27-15-50-58.wav
/var/spool/asterisk/monitor/2017-09/27/in_524_2017-09-27-15-50-58.wav
То есть видно, что файл существует, иначе было бы сообщение, что 'Нет такого файла или каталога'.
 
на php для проверки существования файла используется простая функция:
Код
// Проверяет, существует ли файл с указанным именем
// 
function rec_file_exists($filename){
    if (@filetype($filename) == "file")
        return true;
    else
        return false;
}

Логирования ошибок в ней не предусмотрено.
Проверьте права доступа к файлам записей разговоров. Проверьте под каким пользователям запущен web сервер.
 
Права доступа к файлам записей asterisk:asterisk. Право на чтение есть у всех.
Apache запущен под пользователем www-data
Код
root@kdds:~# ps aux | grep apache2
root     13128  0.0  2.7 378004 27960 ?        Ss   сент.28   0:22 /usr/sbin/apache2 -k start
root     19604  0.0  0.2  13008  2252 pts/0    S+   13:57   0:00 grep --color=auto apache2
www-data 33836  0.0  0.9 378028  9460 ?        S    08:29   0:00 /usr/sbin/apache2 -k start
www-data 63184  0.0  1.3 378068 13608 ?        S    окт.01   0:00 /usr/sbin/apache2 -k start
www-data 63185  0.0  1.4 378336 14412 ?        S    окт.01   0:00 /usr/sbin/apache2 -k start
www-data 63186  0.0  1.3 378068 13608 ?        S    окт.01   0:00 /usr/sbin/apache2 -k start
www-data 63187  0.0  1.3 378068 13608 ?        S    окт.01   0:00 /usr/sbin/apache2 -k start
www-data 63188  0.0  1.3 378068 13608 ?        S    окт.01   0:00 /usr/sbin/apache2 -k start
 
Скрипт открыт - нужно его отладить. Могу лишь предложить платные работы.
Заявку можете оставить тут:
https://telefon.miko.ru/contacts/
Читают тему (гостей: 1)