VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Запись входящих извне разговоров и именование файлов записи

Проблемы Asterisk без вэб-оболочек и их решения

Модераторы: april22, Zavr2008

ded
Сообщения: 15626
Зарегистрирован: 26 авг 2010, 19:00

Re: Запись входящих извне разговоров и именование файлов зап

Сообщение ded »

Посмотрите и разберитесь что такое Call event log (cel) и как работает логика записей там. Может быть это лучше подойдёт.
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: Запись входящих извне разговоров и именование файлов зап

Сообщение Vlad1983 »

можно, конечно, и переименовывать после окончания разговора, но лишние системные вызовы на пользу не идут

вообще какая разница какое имя у файла вы его что в ручную искать собрались?
не проще писать в СDR имя файла?
ЛС: @rostel
vlad_kkk
Сообщения: 20
Зарегистрирован: 18 янв 2013, 11:58

Re: Запись входящих извне разговоров и именование файлов зап

Сообщение vlad_kkk »

И конечно же, у меня опять затык. )
Прежде, чем описывать то, на каком этапе сейчас нахожусь, последую совету Vlad1983 и обрисую детально желаемый конечный результат. И так, необходимо производить запись входящего снаружи разговра с внутренним пиром (офисными пирами, имеющим формат _10ХХ), складывать данные разговоры в директорию (aka папка), располагаемую в:

Код: Выделить всё

inbound_records/<имя_экстеншена_который обрабатывает_данный_входящий_звонок>/<CALLERID(name)>/год/месяц/число/<имя_файла_в_фомате: дата_звонка_время_звонка_from_номер_набравшего_to_номер_пира_ответившего_на_звонок>.wav>
,
автоматически создвая при этом необходимые директории, дабы выполнить соответствие данному требованию.

Как пример, для наглядности приведу результат, который должны получить: inbound_records/PROV1_inbound/Fly/2013/01/23/23_01_2013_17h_37min_23sec_from_9165555555_to_1099 .

Благодаря вашей, друзья, помощи, накидал следующий контекст:

Код: Выделить всё

exten => 74951234567,1,Ringing
exten => 74951234567,n,Set(CALLERID(name)=Fly)
exten => 74951234567,n,Set(AUDIOHOOK_INHERIT(MixMonitor)=yes)
exten => 74951234567,n,Set(fname=RANDOM_tmp_file)
exten => 74951234567,n,MixMonitor(inbound_records/${STRFTIME(,,${CONTEXT}/${CALLERID(name)}/%Y/%m/%d)}/${fname}.wav)
exten => 74951234567,n,Set(recdir=inbound_records/${STRFTIME(,,${CONTEXT}/${CALLERID(name)}/%Y/%m/%d)})
exten => 74951234567,n,Dial(SIP/1099,20,t)
exten => h,1,Set(fname2=${recdir}/${STRFTIME(${EPOCH},,%d_%m_%Y_%Hh_%Mmin_%Ssec)}_from_${CALLERID(num)}_to_${DIALEDPEERNUMBER})
exten => h,n,System(mv $(recdir)/RANDOM_tmp_file.wav ${fname2})
exten => h,n,Hangup()
Все ок, пока не доходим до второй строчки h (переименование файла средствами ОС). Понятное дело, ОС не понимает переменную астериска $(recdir) и молча ничего не делает. RANDOM_tmp_file остается не переименованным.
Вот такие вот, в общем, изыскания. ))
А если пойти дальше и чуток изменить требования? Например, необходимо помещать запись в директорию с <именем_пира_ответившего_на_звонок>? В вышеуказнном контексте MixMonitor создает папку сам, а какая команда может создать папку в exten => h,n....? Или как линуксу передать значение переменной ${recdir}? И что будет с файлом RANDOM_tmp_file, когда одновременно придут два и более вызова и на них ответят два и более офисных пира??? Куда в итоге сохраниться файл с необходимым форматом после окончания разговора каждого из пиров?? Эти и ряд других вопросов наводят меня на подозрения, что я вообще на старте ошибся, и есть какой то более короткий и правильный путь выполнить задачу.
По сему, прошу еще раз направить меня куда копать? И думаю, что такая просьба не последний раз. ))) За ранее благодарен!
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: Запись входящих извне разговоров и именование файлов зап

Сообщение Vlad1983 »

заменить
exten => h,n,System(mv $(recdir)/RANDOM_tmp_file.wav ${fname2})
на
exten => h,n,System(mv ${recdir}/RANDOM_tmp_file.wav ${fname2})
или даже такую
exten => h,n,System(mv ${recdir}/${fname}.wav ${fname2})
Последний раз редактировалось Vlad1983 23 янв 2013, 19:26, всего редактировалось 1 раз.
ЛС: @rostel
vlad_kkk
Сообщения: 20
Зарегистрирован: 18 янв 2013, 11:58

Re: Запись входящих извне разговоров и именование файлов зап

Сообщение vlad_kkk »

ded и Vlad1983
Опять, так долго готовил последний свой пост, чтобы был красив, краток и нагляден, что ваши посление сообщения пропустил. Тысячу извинений. ))
vlad_kkk
Сообщения: 20
Зарегистрирован: 18 янв 2013, 11:58

Re: Запись входящих извне разговоров и именование файлов зап

Сообщение vlad_kkk »

Vlad1983 писал(а):заменить
exten => h,n,System(mv $(recdir)/RANDOM_tmp_file.wav ${fname2})
на
exten => h,n,System(mv ${recdir}/RANDOM_tmp_file.wav ${fname2})
или даже такую
exten => h,n,System(mv ${recdir}/${fname}.wav ${fname2})
Вот я олень а. ))))) Счас попробую. Но тем не менее другие мои вопросы из предыдущего большого поста тревожат.
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: Запись входящих извне разговоров и именование файлов зап

Сообщение Vlad1983 »

меня начинает тревожить обилие вопросов и слов в ваших постах
почитайте лит-ру
ЛС: @rostel
ded
Сообщения: 15626
Зарегистрирован: 26 авг 2010, 19:00

Re: Запись входящих извне разговоров и именование файлов зап

Сообщение ded »

А если пойти дальше и чуток изменить требования?
Тут дают направления. Там где требования - раздел Бизнес, ТЗ, примерный бюджет, и freelance.org
Например, необходимо помещать запись в директорию с <именем_пира_ответившего_на_звонок>? В вышеуказнном контексте MixMonitor создает папку сам, а какая команда может создать папку в exten => h,n....?
есть системная команда mkdir. Тут Линух будем постепенно изучать?
Или как линуксу передать значение переменной ${recdir}? И что будет с файлом RANDOM_tmp_file, когда одновременно придут два и более вызова и на них ответят два и более офисных пира??? Куда в итоге сохраниться файл с необходимым форматом после окончания разговора каждого из пиров??
Это результат того, что Вы начали проектировать нечто двухколёсное, чтобы сесть на него, толкаться ногами, или нажимать на какие-то рычажки (может педальки приспособить?) и чтобы он ехал. Но это уже придумано и реализовано. Называется - велосипед.
Эти и ряд других вопросов наводят меня на подозрения, что я вообще на старте ошибся, и есть какой то более короткий и правильный путь выполнить задачу.
По сему, прошу еще раз направить меня куда копать?
Копаете себе могилу. Более коротки и правильный путь - "используй то, что под рукою, и не ищи себе другое." (с) Филеас Фогг.
Современные дистрибутивы используют свою систему наименования файлов, и индексируют всю кучу, позволяя в удобном графическом интерфейсе открывать, сортировать, прослушивать, делать выборки по Caller ID, Destination ID, дате, времени, статусу, отрисовывать в виде графиков, и многое другое.
Но Вы хотите сам, своё?
vlad_kkk
Сообщения: 20
Зарегистрирован: 18 янв 2013, 11:58

Re: Запись входящих извне разговоров и именование файлов зап

Сообщение vlad_kkk »

ded и Vlad1983
А так все хорошо начиналось ))))
Ладно, спасибо, тем менее. Извините.
Больше не потревожу.
Ответить
© 2008 — 2025 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH