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

Asterisk PBX: Присваивание имени файла аудиозаписи

Обо всем касательно FreePBX, MetPBX, TrixBox, Elastix, AstPBX и всех других дистрибутивов

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

ecovinchi
Сообщения: 25
Зарегистрирован: 03 май 2017, 19:31

Asterisk PBX: Присваивание имени файла аудиозаписи

Сообщение ecovinchi »

Всем хорошего настроения! Появилась задача записи телефонных звонков и последующих манипуляций, но столкнулся с проблемкой - имена файлов записи звонков внешних входящих не содержат внутренний номер, что нужно. Нашел решение тут https://habr.com/sandbox/58877/ но куда прописать этот макрос непойму. Сюда /etc/asterisk/extensions.conf просто скопировать или как?
зы:подойдет и другое решение, если кто знает...
awsswa
Сообщения: 2390
Зарегистрирован: 09 июн 2012, 10:52
Откуда: Россия, Пермь skype: yarick_perm

Re: Asterisk PBX: Присваивание имени файла аудиозаписи

Сообщение awsswa »

Выключить запись везде
На входящей-исходящей маршрутизации, группах, очередях
Включить только на номерах
платный суппорт по мере возможностей
ecovinchi
Сообщения: 25
Зарегистрирован: 03 май 2017, 19:31

Re: Asterisk PBX: Присваивание имени файла аудиозаписи

Сообщение ecovinchi »

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

перепроверил, непишет вх.внеш если в экстеншене запись включать. при этом все остальные типы звонков пишутся зараза.
ecovinchi
Сообщения: 25
Зарегистрирован: 03 май 2017, 19:31

Re: Asterisk PBX: Присваивание имени файла аудиозаписи

Сообщение ecovinchi »

неужели никто не направит куда рыть? :shock:
virus_net
Сообщения: 2337
Зарегистрирован: 05 июн 2013, 08:12
Откуда: Москва

Re: Asterisk PBX: Присваивание имени файла аудиозаписи

Сообщение virus_net »

Обычно все роют логи и документацию.
мой SIP URI sip:virus_net@asterisk.ru
bitname.ru - Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER - звони бесплатно и напрямую.
ecovinchi
Сообщения: 25
Зарегистрирован: 03 май 2017, 19:31

Re: Asterisk PBX: Присваивание имени файла аудиозаписи

Сообщение ecovinchi »

макрос из первого поста подскажите куда прописывать и вместо чего, люди добрые? в документации такого не вычитать, а добиться полного понимания работы астериска не могу себе позволить. в логах насколько я понимаю тоже ничего не будет полезного, звонок приходит на группу и поэтому как я понимаю он и не пишится даже после перевода.
ded
Сообщения: 15623
Зарегистрирован: 26 авг 2010, 19:00

Re: Asterisk PBX: Присваивание имени файла аудиозаписи

Сообщение ded »

Вы используете FreePBX, так? Значит Присваивание имени файла аудиозаписи вас не должно волновать, потому что ориентироваться кто кому звонил по имени файла - чушь. Все записи индексируются (составляется реестр текущих значений имён файлов записей с пометками кто и кому звонил, записывается в базу данных), и различные CDR логи отображают список соединений ассоциируя соотв. аудиозапись согласно этому реестру. Если вы докопаетесь до макроса, переименовывающего файлы, то сломаете этот реестр. По имени файла вам будет понятно, а системе - непонятно. Изучайте документацию.
ecovinchi писал(а): в логах насколько я понимаю тоже ничего не будет полезного, звонок приходит на группу и поэтому как я понимаю он и не пишится даже после перевода.
всё там есть в логах.
Разбирайтесь. Для экстеншн есть запретное правило политики записей: если у абонента А разрешено, а у абонента Б запрещено, то А позвонит Б или наоборот - аудиозапись не будет создаваться.
awsswa
Сообщения: 2390
Зарегистрирован: 09 июн 2012, 10:52
Откуда: Россия, Пермь skype: yarick_perm

Re: Asterisk PBX: Присваивание имени файла аудиозаписи

Сообщение awsswa »

Ладно. Я буду подсказывать. Поможет или нет ХЗ.

Имя формируется вот тут
[sub-record-check]

а конкретно вот этой строчкой

exten => recordcheck,n,Set(__CALLFILENAME=${ARG2}-${ARG3}-${FROMEXTEN}-${TIMESTR}-${UNIQUEID})

Осталось только переписать её и внести весь кусок [sub-record-check] в extensions_override_freepbx.conf

Но, это ну никаким боком не внесет туда имя кто и кому звонил без куче проверок раньше
То есть выше exten => recordcheck,n,Set(__CALLFILENAME=${ARG2}-${ARG3}-${FROMEXTEN}-${TIMESTR}-${UNIQUEID})
надо сделать несколько манипуляций для выяснения имени

Помогло ?
платный суппорт по мере возможностей
ecovinchi
Сообщения: 25
Зарегистрирован: 03 май 2017, 19:31

Re: Asterisk PBX: Присваивание имени файла аудиозаписи

Сообщение ecovinchi »

MixMonitor выполняется раньше Dial и файлу будет присвоено имя, которое не изменится при трансфере звонка на другой внутренний номер. Таким образом, все записи таких звонков будут именоваться именем пира куда первоначально поступил звонок, внезависимости был ли этот звонок в дальнейшем переведен или нет. Что не удобно при «разборе полетов».

Один из вариантов решения следующий:

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

[macro-INrecordsFROMOUTSIDE]
exten => s,1,Ringing
exten => s,n,NoOp(${CALLERID(num)})
exten => s,n,Set(AUDIOHOOK_INHERIT(MixMonitor)=yes)
exten => s,n,Set(fname=${CDR(uniqueid)}.g729)
exten => s,n,Set(recdir_temporary=/var/spool/asterisk/monitor/inbound_records/${STRFTIME(,,${MACRO_CONTEXT})})
exten => s,n,MixMonitor(${recdir_temporary}/${fname})
exten => s,n,Set(fix_clid=${CALLERID(num)})
exten => s,n,Dial(${ARG1},15,tT)
exten => h,1,System(mkdir -p ${recdir_temporary}/${DIALEDPEERNUMBER})
exten => h,n,Set(recdir_final=${recdir_temporary}/${DIALEDPEERNUMBER})
exten => h,n,Set(fname2=${recdir_final}/${STRFTIME(${EPOCH},,%d_%m_%Y_%Hh_%Mmin_%Ssec)}_from_${fix_clid}_to_${DIALEDPEERNUMBER}.g729)
exten => h,n,System(mv ${recdir_temporary}/${fname} ${fname2})
exten => h,n,Hangup()
вот это не пойму в какой конфиг прописывать. сюда: extensions_override_freepbx.conf?
ded
Сообщения: 15623
Зарегистрирован: 26 авг 2010, 19:00

Re: Asterisk PBX: Присваивание имени файла аудиозаписи

Сообщение ded »

Такое ощущения, что вы тут сам с собой переписываетесь, не читая что другие пишут.
Ответить
© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH