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

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

RSS
Проблема с нестандартным прослушиванием файлов
 
Здравствуйте!
Долго бился сам, но безрезультатно. Надеюсь разработчики помогут. Проблема в следующем :
Есть сервер Asterisk ( без GUI и прочего), есть модуль, который пишет разговоры и раскидывает их по папкам /год-месяц-день/час/имя_файла.wav
Есть скрипт, выложенный на сайте МИКО, который я немного подправил с целью корректного поиска файла. В БД было создано доп поле, в которое пишется конкретный путь для конкретного звонка. Ниже сам переделанный скрипт :
Скрытый текст

Собственно загвоздка возникает на этапе выполнения Set(recfile). На этом этапе не находится имя файла, ну и выводятся соответствующие ошибки. Может кто сможет подсказать в чем проблема? Заранее спасибо!
 
Проверьте эту строку:

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,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(FindInFileSystem),Set(namedorashiren=$[${LEN(${recordingfile})}-4]
вываливает список всех файлов, которые он находит в конкретном пути, далее прерывается с выводом и выдает ошибку Can`t find trailing parenthesis for function 'LEN(/var/spool/asterisk/monitor..

Ну и потом не может проиграть файл по причине того, что он его тупо не может найти.
 
Сегодня опубликовал плагин для FreePBX - это не совсем Ваш случай, но все же
http://wiki.miko.ru/doc:pluginsfreepbx:plugin_for_210_211

в нем есть php скрипт 1С_Playback.php
в нем реализован необходимый Вам механизм.

Рекомендую использовать именно php AGI скрипты.
 
Хм. Надо попробовать, спасибо за информацию. В общем, заборол я данную ошибку, хоть скрипт и далек от совершенства, но он проигрывает нужный файлик. Ниже делюсь "сырым" произведением  :)  
Скрытый текст
Изменено: Gordon Sergey - 27.03.2013 14:19:29
 
Offtop:
Битртксовый прокактивный фильтр изменяет отправляемые пользователями листинги кода, делает код безопасным для сайта, от этого и появляются пробелы в словах SELECT и FROM
Читают тему