ВидеоКонф(ВКС)  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Elastix 2.4.0 Очередь запись разговоров - по каталогам

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

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

Elastix 2.4.0 Очередь запись разговоров - по каталогам

Сообщение svd » 01 сен 2017, 19:23

Дня доброго.

Есть задача: для непереполения каталога
/var/spool/asterisk/monitor
нужно записи разговоров раскладывать по папкам
/var/spool/asterisk/monitor/год/месяц/день

по умолчанию данная версия эластикса не разбивала записи вообще никак.
я решил поэкспериментировать с файлом extensions_override_elastix.conf

там нашел такой кусок конфига [macro-record-enable]
и модернизировал его немного:

[macro-record-enable]
include => macro-record-enable-custom
exten => s,1,GotoIf($["${BLINDTRANSFER}" = ""]?check)
exten => s,n,ResetCDR(w)
exten => s,n,StopMixMonitor()
exten => s,n(check),ExecIf($["${ARG1}"=""]?MacroExit())
exten => s,n,GotoIf($["${ARG2}"="Group"]?Group:OUT)
exten => s,n(Group),Set(LOOPCNT=${FIELDQTY(ARG1,-)})
exten => s,n,Set(ITER=1)
exten => s,n(begin),GotoIf($["${CUT(DB(AMPUSER/${CUT(ARG1,-,${ITER})}/recording),=,3)}" != "Always"]?continue)
exten => s,n,Set(TEXTEN=${CUT(ARG1,-,${ITER})})
exten => s,n,Noop(Recording enable for ${TEXTEN})
exten => s,n,Set(CALLFILENAME=g${TEXTEN}-${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}-${UNIQUEID})
exten => s,n,Goto(record)
exten => s,n(continue),Set(ITER=$[${ITER}+1])
exten => s,n,GotoIf($[${ITER}<=${LOOPCNT}]?begin)
exten => s,n(OUT),GotoIf($["${ARG2}"="IN"]?IN)
exten => s,n,ExecIf($["${CUT(DB(AMPUSER/${ARG1}/recording),\\\|,1):4}" != "Always"]?MacroExit())
exten => s,n,Noop(Recording enable for ${ARG1})
exten => s,n,Set(CALLFILENAME=OUT${ARG1}-${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}-${UNIQUEID})
exten => s,n,Goto(record)
exten => s,n(IN),ExecIf($["${CUT(DB(AMPUSER/${ARG1}/recording),\\\|,2):3}" != "Always"]?MacroExit())
exten => s,n,Noop(Recording enable for ${ARG1})
exten => s,n,Set(CALLFILENAME=${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}-${UNIQUEID})
;svd-33 2017-09-01
exten => s,n(record),Set(NOW=${EPOCH})
;exten => s,n,Set(NOW=${EPOCH})
;svd-33 2017-09-01
exten => s,n,Set(__DAY=${STRFTIME(${NOW},,%d)})
exten => s,n,Set(__MONTH=${STRFTIME(${NOW},,%m)})
exten => s,n,Set(__YEAR=${STRFTIME(${NOW},,%Y)})
;svd-33 2017-09-01
exten => s,n,MixMonitor(${MIXMON_DIR}${YEAR}/${MONTH}/${DAY}/${CALLFILENAME}.${MIXMON_FORMAT},,${MIXMON_POST})
;exten => s,n(record),MixMonitor(${MIXMON_DIR}${YEAR}/${MONTH}/${DAY}/${CALLFILENAME}.${MIXMON_FORMAT},,${MIXMON_POST})
;svd-33 2017-09-01
exten => s,n,Set(CDR(userfield)=audio:${YEAR}/${MONTH}/${DAY}/${CALLFILENAME}.${MIXMON_FORMAT})
exten => s,n,MacroExit()


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

чтобы наладить был модернизирован один и php файлов ответственных за ВЭБ-морду.

Но в настройках очереди 199 тоже указано записывать разговоры, но генерируется конфиг уже самим эластиком в
extensions_additional.conf

[ext-queues]
include => ext-queues-custom
exten => 199,1,Macro(user-callerid,)
exten => 199,n,Answer
exten => 199,n,Set(__BLKVM_OVERRIDE=BLKVM/${EXTEN}/${CHANNEL})
exten => 199,n,Set(__BLKVM_BASE=${EXTEN})
exten => 199,n,Set(DB(${BLKVM_OVERRIDE})=TRUE)
exten => 199,n,ExecIf($["${REGEX("(M[(]auto-blkvm[)])" ${DIAL_OPTIONS})}" != "1"]?Set(_DIAL_OPTIONS=${DIAL_OPTIONS}M(auto-blkvm)))
exten => 199,n,Set(__NODEST=${EXTEN})
exten => 199,n,Set(MONITOR_FILENAME=/var/spool/asterisk/monitor/q${EXTEN}-${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}-${UNIQUEID})
exten => 199,n,Playback(custom/greencard-helpdesk)
exten => 199,n,Set(__MOHCLASS=funny)
exten => 199,n,Queue(199,t,,,120)
exten => 199,n,Noop(Deleting: ${BLKVM_OVERRIDE} ${DB_DELETE(${BLKVM_OVERRIDE})})
exten => 199,n,Set(__NODEST=)
exten => 199,n,Goto(app-announcement-1,s,1)
exten => 199*,1,Macro(agent-add,199,)
exten => 199**,1,Macro(agent-del,199)
exten => *45199,1,Set(QUEUENO=199)
exten => *45199,n,Goto(app-queue-toggle,s,start)
exten => h,1,Macro(hangupcall,)

; end of [ext-queues]


я могу там дописать кусок кода, но он перезапишется при сохранении каких нибудь настроек.

Вопрос:
как это сделать правильно?
svd
 
Сообщений: 169
Зарегистрирован: 19 июл 2011, 08:13
Откуда: Красноярск

Re: Elastix 2.4.0 Очередь запись разговоров - по каталогам

Сообщение ded » 01 сен 2017, 20:38

svd писал(а):Есть задача: для непереполения каталога
/var/spool/asterisk/monitor
нужно записи разговоров раскладывать по папкам
/var/spool/asterisk/monitor/год/месяц/день

по умолчанию данная версия эластикса не разбивала записи вообще никак.
А FreePBX делает это по умолчанию.
Не хотите использовать уже готовый кусок кода?
svd писал(а):я могу там дописать кусок кода, но он перезапишется при сохранении каких нибудь настроек.
Знаете для чего в системе файлы _extensions_custom_conf & *_override.conf ?
ded
 
Сообщений: 15802
Зарегистрирован: 26 авг 2010, 19:00

Re: Elastix 2.4.0 Очередь запись разговоров - по каталогам

Сообщение svd » 02 сен 2017, 12:16

про freepbx в курсе, да и эластикс 2.5.0 вроде тоже так делает, но обновлять не хочется... уж больно много там добавлено.
только 2 misc_application саморучно написанных, всем всё нравится, кроме этого момента, отсюда желание исправить только это.

в extension_custom пробовал создать секцию [ext-queues-custom]
в которую прописал следующее:

Код: выделить все
[ext-queues-custom]
exten => 199,1,Set(MONITOR_FILENAME=/var/spool/asterisk/monitor/2017/q${EXTEN}-${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}-${UNIQUEID})


но похоже я не умею пользоваться (точнее не понимаю как работает директива include => ext-queues-custom)
потому как ничего не изменилось... да и команда
dialplan show ext-queues выводит без учета этого дополнения в кастоме.

как работает оверрайд тоже не совсем знаю, точнее совсем не знаю, догадываюсь что переопределяет часть конфига
и можно было скопировать весь кусок кода из [ext-queues] добавить его в оверрайд и там поправить что мне нужно, но!!!

смогу ли я потом через вэб интерфейс поменять настроки конкретно этой очереди? я вот подумал что нет.
svd
 
Сообщений: 169
Зарегистрирован: 19 июл 2011, 08:13
Откуда: Красноярск

Re: Elastix 2.4.0 Очередь запись разговоров - по каталогам

Сообщение april22 » 02 сен 2017, 20:05

Dialplan reload?
Своими вопросами , вы загоняете меня в ГУГЛЬ.
april22
 
Сообщений: 2187
Зарегистрирован: 09 июл 2012, 09:47

Re: Elastix 2.4.0 Очередь запись разговоров - по каталогам

Сообщение svd » 03 сен 2017, 09:24

april22 писал(а):Dialplan reload?

обязательно
svd
 
Сообщений: 169
Зарегистрирован: 19 июл 2011, 08:13
Откуда: Красноярск


Вернуться в Готовые VoIP дистрибутивы

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7

© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH