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

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


faq:cid_norm

Различия

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

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

Следующая версия
Предыдущая версия
faq:cid_norm [2019/07/08 14:43]
Портнов Алексей создано
faq:cid_norm [2023/05/05 08:16] (текущий)
Портнов Алексей
Строка 2: Строка 2:
 [[faq:​|Обратно к инструкциям]] [[faq:​|Обратно к инструкциям]]
  
-При подключении к Askozia ​более одного провайдера может сложится ситуация,​ что номер телефона клиентов поступает в различном формате:​ +При подключении к MikoPBX ​более одного провайдера может сложится ситуация,​ что номер телефона клиентов поступает в различном формате:​ 
-  * В 5ти значном виде - **44553**+  * В 7ти значном виде - **2293042**
   * Через "​+",​ к пример **+79257184444**   * Через "​+",​ к пример **+79257184444**
   * Через "​8",​ к примеру **89257184444**   * Через "​8",​ к примеру **89257184444**
Строка 19: Строка 19:
 [SIP-PROVIDER-B63EE3497989BF6597FF8C9DEC77EB49-incoming-custom] [SIP-PROVIDER-B63EE3497989BF6597FF8C9DEC77EB49-incoming-custom]
 exten => _.!,​1,​NoOp(---) exten => _.!,​1,​NoOp(---)
-    ; отсекаем плюс+    ; Отсекаем плюс
     same => n,​Set(CALLERID(num)=${REPLACE(CALLERID(num),"​+"​)})     same => n,​Set(CALLERID(num)=${REPLACE(CALLERID(num),"​+"​)})
-    ; нормализуем ​11ти значный номер +    ; Для 11ти значного ​номера отсекаем первую цифру и добавляем 7 
-    same => n,ExecIf($[ ${LEN(${CALLERID(num)})} == "11" ​]?​Set(CALLERID(num)=7${CALLERID(num):​1}))+    same => n,ExecIf($[ ${LEN(${CALLERID(num)})} == 11 ]?​Set(CALLERID(num)=7${CALLERID(num):​1})) 
 +    ; Для 7ми значного номера добавляем код страны 7 и код города 495
     same => n,ExecIf($[ ${LEN(${CALLERID(num)})} == 7 ]?​Set(CALLERID(num)=7495${CALLERID(num)}))     same => n,ExecIf($[ ${LEN(${CALLERID(num)})} == 7 ]?​Set(CALLERID(num)=7495${CALLERID(num)}))
 +    same => n,return
 +; Если номер звонящего начинается с 886142 (11 значный),​ то отрезать код города "​886142" ​
 +exten => _.X!/​_886142XXXXX,​1,​Set(CALLERID(num)=${CALLERID(num):​5})
     same => n,return     same => n,return
 </​code>​ </​code>​
Строка 37: Строка 41:
 {{ :​faq:​2019-02-08_164259.png |}}\\  {{ :​faq:​2019-02-08_164259.png |}}\\ 
  
-Обращаем Ваше внимание,​ если у Вас в Askozia ​подключено несколько провайдеров,​ выше описанный фрагмент кода нужно составить для каждого провайдера,​ учитывая уникальность ID каждого из провайдеров.+Обращаем Ваше внимание,​ если у Вас в MikoPBX ​подключено несколько провайдеров,​ выше описанный фрагмент кода нужно составить для каждого провайдера,​ учитывая уникальность ID каждого из провайдеров. 
 + 
 +Если необходимо добавить нормализацию для всех провайдеров сразу, то достаточно описать контекст "​**add-trim-prefix-clid-custom**"​. Пример,​ все 10ти значным АОН добавить 7ку: 
 +<​code>​[add-trim-prefix-clid-custom] 
 +exten => _.X!,​1,​ExecIf($[ ${LEN(${CALLERID(num)})} == 10 ]?​Set(CALLERID(num)=7${CALLERID(num)})) 
 + same => n,​return</​code>​
  
 [[faq:​|Обратно к инструкциям]] [[faq:​|Обратно к инструкциям]]
faq/cid_norm.1562597003.txt.gz · Последние изменения: 2019/07/08 14:43 — Портнов Алексей