====== Отладка функции скачивания записи ====== Подключаемся к АТС по [[http://wiki.askozia.ru/handbook:putty|инструкции]]. Отлаживаем "приложения" в CLI консоли asterisk: asterisk -r Устанавливаем уровни отладки: core set verbose 3 agi set debug on Воспроизводим ситуацию, видим: -- Executing [10000666@internal:1] NoOp("Local/10000666@internal-00000033;2", "internal calling application: 1C_Download_v6.2") in new stack -- Executing [10000666@internal:2] Set("Local/10000666@internal-00000033;2", "CDR(InternalCalleridNum)=10000666") in new stack -- Executing [10000666@internal:3] Set("Local/10000666@internal-00000033;2", "_CALLED=10000666") in new stack -- Executing [10000666@internal:4] Goto("Local/10000666@internal-00000033;2", "DIALPLAN-APPLICATION-1C_Download_v6,10000666,1") in new stack -- Goto (DIALPLAN-APPLICATION-1C_Download_v6,10000666,1) -- Executing [10000666@DIALPLAN-APPLICATION-1C_Download_v6:1] AGI("Local/10000666@internal-00000033;2", "DIALPLAN-APPLICATION-1C_Download_v6.php") in new stack -- Launched AGI Script /etc/asterisk/agi-bin/DIALPLAN-APPLICATION-1C_Download_v6.php AGI Tx >> agi_request: DIALPLAN-APPLICATION-1C_Download_v6.php AGI Tx >> agi_channel: Local/10000666@internal-00000033;2 AGI Tx >> agi_language: en-us AGI Tx >> agi_type: Local AGI Tx >> agi_uniqueid: askozia-1486736174.223 AGI Tx >> agi_version: 10.9.0 AGI Tx >> agi_callerid: unknown AGI Tx >> agi_calleridname: unknown AGI Tx >> agi_callingpres: 67 AGI Tx >> agi_callingani2: 0 AGI Tx >> agi_callington: 0 AGI Tx >> agi_callingtns: 0 AGI Tx >> agi_dnid: unknown AGI Tx >> agi_rdnis: unknown AGI Tx >> agi_context: DIALPLAN-APPLICATION-1C_Download_v6 AGI Tx >> agi_extension: 10000666 AGI Tx >> agi_priority: 1 AGI Tx >> agi_enhanced: 0.0 AGI Tx >> agi_accountcode: AGI Tx >> agi_threadid: 1098038176 AGI Tx >> AGI Rx << GET VARIABLE EXTEN AGI Tx >> 200 result=1 (10000666) AGI Rx << GET VARIABLE v1 AGI Tx >> 200 result=1 (SIP/201) AGI Rx << GET VARIABLE v2 AGI Tx >> 200 result=1 (askozia-1486735580.207) AGI Rx << GET VARIABLE v3 AGI Tx >> 200 result=1 () AGI Rx << GET VARIABLE v6 AGI Tx >> 200 result=1 (Records) AGI Rx << EXEC UserEvent FailDownloadRecord,Channel:SIP/201,uniqueid1c:askozia-1486735580.207 -- AGI Script Executing Application: (UserEvent) Options: (FailDownloadRecord,Channel:SIP/201,uniqueid1c:askozia-1486735580.207) AGI Tx >> 200 result=0 AGI Rx << EXEC NoCDR -- AGI Script Executing Application: (NoCDR) Options: () AGI Tx >> 200 result=0 AGI Rx << ANSWER AGI Tx >> 200 result=-1 -- AGI Script DIALPLAN-APPLICATION-1C_Download_v6.php completed, returning 4 == Spawn extension (DIALPLAN-APPLICATION-1C_Download_v6, 10000666, 1) exited non-zero on 'Local/10000666@internal-00000033;2' -- Executing [h@DIALPLAN-APPLICATION-1C_Download_v6:1] Hangup("Local/10000666@internal-00000033;2", "") in new stack == Spawn extension (DIALPLAN-APPLICATION-1C_Download_v6, h, 1) exited non-zero on 'Local/10000666@internal-00000033;2' Ключевые события: AGI Rx << GET VARIABLE v2 AGI Tx >> 200 result=1 (askozia-1486736526.224) Отсюда ясно - "**askozia-1486735580.207**" это идентификатор звонка, поле **linkedid**. Эта переменная устанавливается в панели телефонии при запросе истории звонка. \\ Следующая ключевая строка: (UserEvent) Options: (FailDownloadRecord,Channel:SIP/201,uniqueid1c:askozia-1486735580.207) * "FailDownloadRecord" - оповещение об ошибке * "askozia-1486735580.207" - идентификатор **linkedid** Запрос файлов к базе данных по linkedid (можно выполнить в shell): sqlite3 /storage/usbdisk1/askoziapbx/astlogs/asterisk/master.db "SELECT recordingfile FROM cdr WHERE linkedid LIKE 'askozia-1486735580.207%' OR uniqueid LIKE 'askozia-1486735580.207%' GROUP BY recordingfi le" Допустим запрос не вернул ничего. Вывод - в истории нет информации по имени файла записи. Ошибка при настройке АТС. Допустим запрос вернул имена файлов. Следует проверить, существуют ли они в директориях: * **/storage/usbdisk1/askoziapbx/voicemailarchive/monitor/** * **/askoziapbx/faxarchive/** * Путь к файлу, как он записан в базе cdr Поиск файла по имени в файловой системе: find / -name 'askozia-1486736526.224_201_79257184254_2017-02-10-17-22-06.gsm' Приложения расположены в Askozia в разделе "**План набора" - "Приложения**".