Инструменты пользователя

Инструменты сайта


configure_freepbx_for_cloud_version

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
Последняя версия Следующая версия справа и слева
configure_freepbx_for_cloud_version [2020/11/18 09:44]
Евгений Романенко
configure_freepbx_for_cloud_version [2023/02/16 13:44]
Евгений Романенко
Строка 2: Строка 2:
  
 ==== Вводная ==== ==== Вводная ====
-  * Данная инструкция написана используя FreePBX версии 13.0.191.11 с Asterisk 13.14.0 на борту. \\ При возникновении каких-либо сложностей/​вопросов с более ранними/​поздними версиями системы,​ просьба написать нам на <​support@vistep.ru>​.+  * Данная инструкция написанаиспользуя FreePBX версии 13.0.191.11 с Asterisk 13.14.0 на борту. \\ При возникновении каких-либо сложностей/​вопросов с более ранними/​поздними версиями системы,​ просьба написать нам на <​support@vistep.ru>​.
   * Для выполнения описанных ниже действий понадобится:​ \\ - умение подключиться к серверу по ssh \\ - умение редактировать файлы в текстовом редакторе (nano/​vim/​emacs/​etc) \\ - ясная голова и хорошее настроение ;-)   * Для выполнения описанных ниже действий понадобится:​ \\ - умение подключиться к серверу по ssh \\ - умение редактировать файлы в текстовом редакторе (nano/​vim/​emacs/​etc) \\ - ясная голова и хорошее настроение ;-)
  
Строка 34: Строка 34:
 UPDATE cdr SET realsrc=src;​ UPDATE cdr SET realsrc=src;​
 UPDATE cdr SET realdst=dst;</​code>​ UPDATE cdr SET realdst=dst;</​code>​
-  - Пришло время последнего,​ но отнюдь не маловажного шага в разрезе конфигурирования таблицы cdr - научим АТС записывать данные во вновь созданные поля. \\ \\ Отредактируйте /​etc/​asterisk/​extensions_override_freepbx.conf,​ внеся в него <​code>​[sub-record-check]+  - Пришло время последнего,​ но отнюдь не маловажного шага в разрезе конфигурирования таблицы cdr - научим АТС записывать данные во вновь созданные поля. \\ \\ Отредактируйте /​etc/​asterisk/​extensions_override_freepbx.conf,​ внеся в него <​code>​[ext-did-catchall] 
 +include => ext-did-catchall-custom 
 +exten => _.,​1,​Noop(Catch-All DID Match - Found ${EXTEN} - You probably want a DID for this.) 
 +exten => _.,​n,​Set(__FROM_DID=${EXTEN}) 
 +exten => _.,​n,​Set(_VISTEPRUREALDST=${FROM_DID}) 
 +exten => _.,​n,​Set(_VISTEPRUREALSRC=${CALLERID(num)}) 
 +exten => _.,​n,​Set(CDR(realsrc)=${VISTEPRUREALSRC}) 
 +exten => _.,​n,​Set(CDR(realdst)=${VISTEPRUREALDST}) 
 +exten => _.,​n,​Goto(ext-did,​s,​1) 
 + 
 +[sub-record-check]
 include => sub-record-check-custom include => sub-record-check-custom
 exten => s,​1,​GotoIf($[${LEN(${FROMEXTEN})}]?​initialized) exten => s,​1,​GotoIf($[${LEN(${FROMEXTEN})}]?​initialized)
Строка 91: Строка 101:
 exten => out,​n,​Set(CDR(realsrc)=${FROMEXTEN}) exten => out,​n,​Set(CDR(realsrc)=${FROMEXTEN})
 exten => out,​n,​Set(CDR(realdst)=${ARG2}) exten => out,​n,​Set(CDR(realdst)=${ARG2})
 +exten => out,​n,​Set(CUTTEDCHANNEL=${CUT(CHANNEL,,​1)})
 +exten => out,​n,​Set(CUTTEDCHANNEL=${CUT(CUTTEDCHANNEL,/,​2)})
 +exten => out,​n,​ExecIf($["​${FROMEXTEN}"​ = "​${ARG2}"​]?​Set(CDR(realsrc)=${CUTTEDCHANNEL}))
 exten => out,​n,​Set(RECMODE=${DB(AMPUSER/​${FROMEXTEN}/​recording/​out/​external)}) exten => out,​n,​Set(RECMODE=${DB(AMPUSER/​${FROMEXTEN}/​recording/​out/​external)})
 exten => out,​n,​ExecIf($[!${LEN(${RECMODE})} | "​${RECMODE}"​ = "​dontcare"​]?​Goto(routewins)) exten => out,​n,​ExecIf($[!${LEN(${RECMODE})} | "​${RECMODE}"​ = "​dontcare"​]?​Goto(routewins))
Строка 101: Строка 114:
 exten => in,​1,​Noop(Inbound Recording Check to ${ARG2}) exten => in,​1,​Noop(Inbound Recording Check to ${ARG2})
 exten => in,​n,​Set(FROMEXTEN=unknown) exten => in,​n,​Set(FROMEXTEN=unknown)
 +exten => in,​n,​ExecIf($[${LEN(${FROM_DID})}]?​Set(_VISTEPRUREALDST=${FROM_DID}))
 exten => in,​n,​ExecIf($[${LEN(${CALLERID(num)})}]?​Set(FROMEXTEN=${CALLERID(num)})) exten => in,​n,​ExecIf($[${LEN(${CALLERID(num)})}]?​Set(FROMEXTEN=${CALLERID(num)}))
-exten => in,​n,​Set(_VISTEPRUREALDST=${ARG2}) +exten => in,n,ExecIf($[${LEN(${VISTEPRUREALDST})}]?​NoOp("​=== VISTEPRUREALDST has already been set ==="):Set(_VISTEPRUREALDST=${ARG2})
-exten => in,​n,​Set(_VISTEPRUREALSRC=${FROMEXTEN})+exten => in,n,ExecIf($[${LEN(${VISTEPRUREALSRC})}]?​NoOp("​=== VISTEPRUREALSRC has already been set ==="):Set(_VISTEPRUREALSRC=${FROMEXTEN}))
 exten => in,​n,​Set(CDR(realsrc)=${VISTEPRUREALSRC}) exten => in,​n,​Set(CDR(realsrc)=${VISTEPRUREALSRC})
 exten => in,​n,​Set(CDR(realdst)=${VISTEPRUREALDST}) exten => in,​n,​Set(CDR(realdst)=${VISTEPRUREALDST})
configure_freepbx_for_cloud_version.txt · Последние изменения: 2023/02/16 13:47 — Евгений Романенко