Дерево страниц
Перейти к концу метаданных
Переход к началу метаданных

Такая модификация может потребоваться если на IP-PBX используется своя внутренняя сокращенная нумерация абонентов. Но при наборе на встречную IP-PBX требуется добавить перед А-номером цифры, например,  для того чтобы привести его к формату national. 

Задача:

Имеется SIP-телефон, который зарегистрирован на внутреннем PBX-сервере ESR-12v/12vf/14vf с номером 777. Требуется при наборе номера 900 с этого телефона модифицировать A-номер до формата national и направить вызов в транк на встречную IP-PBX.

Решение: 

Для решения этой задачи необходимо последовательно прописать в правилах набора номера два правила:

Пример конфигурирования правил
ruleset main_rule
    rule 10
      pattern '900,1,Set(CALLERID(num)=81111222${CALLERID(num)})'
      enable
    exit
    rule 20
      pattern '900,2,Dial(SIP/trunk_SSW/${EXTEN})'
      enable
    exit
  exit

Правило 10 Set при наборе номера 900 будет выполнено первым. А-номер будет модифицирован, перед ним будут добавлены цифры 81111222. Правило 20 Dial будет выполнено вторым. В направлении встречной IP-PBX через транк будет выслано сообщение INVITE с модифицированным А-номером.

Сообщение INVITE, принятое PBX-сервером от телефона, выглядит так:

Сообщение INVITE от SIP- телефона
198.51.100.2.5060 > 198.51.100.1.5060: SIP, length: 894
        INVITE sip:900@198.51.100.1:5060 SIP/2.0
        Via: SIP/2.0/UDP 198.51.100.2:5060;branch=z9hG4bK861859053
        From: "777" <sip:777@198.51.100.1:5060>;tag=4240192498
        To: <sip:900@198.51.100.1:5060>
        Call-ID: 1_1304580578@198.51.100.2
        CSeq: 1 INVITE
        Contact: <sip:777@198.51.100.2:5060>
        Content-Type: application/sdp
        Allow: INVITE, INFO, PRACK, ACK, BYE, CANCEL, OPTIONS, NOTIFY, REGISTER, SUBSCRIBE, REFER, PUBLISH, UPDATE, MESSAGE
        Max-Forwards: 70
        User-Agent: Yealink SIP-T21P_E2 52.80.14.2
        Allow-Events: talk,hold,conference,refer,check-sync
        Supported: replaces
        Content-Length: 306

        v=0
        o=- 20013 20013 IN IP4 198.51.100.2
        s=SDP data
        c=IN IP4 198.51.100.2
        t=0 0
        m=audio 11866 RTP/AVP 9 0 8 18 101
        a=rtpmap:9 G722/8000
        a=rtpmap:0 PCMU/8000
        a=rtpmap:8 PCMA/8000
        a=rtpmap:18 G729/8000
        a=fmtp:18 annexb=no
        a=ptime:20
        a=sendrecv
        a=rtpmap:101 telephone-event/8000
        a=fmtp:101 0-15

Сообщение INVITE, сформированное ESR-12v/12vf/14vf, выглядит так:

Сообщение INVITE в торону встречной IP-PBX
203.0.113.2.5060 > 203.0.113.1.5060: SIP, length: 829
        INVITE sip:900@203.0.113.1:5060 SIP/2.0
        Via: SIP/2.0/UDP 203.0.113.2:5060;branch=z9hG4bK7afa4081
        Max-Forwards: 70
        From: "777" <sip:81111222777@203.0.113.2>;tag=as0e0853d4
        To: <sip:900@203.0.113.1:5060>
        Contact: <sip:81111222777@203.0.113.2:5060>
        Call-ID: 43168f9f6131b5fe4b92e77329339ae0@203.0.113.2:5060
        CSeq: 102 INVITE
        User-Agent: ESR-12VF
        Date: Wed, 30 Aug 2023 06:42:03 GMT
        Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH, MESSAGE
        Supported: replaces
        Content-Type: application/sdp
        Content-Length: 273

        v=0
        o=root 1926704466 1926704466 IN IP4 203.0.113.2
        s=ESR-12VF
        c=IN IP4 203.0.113.2
        t=0 0
        m=audio 14524 RTP/AVP 8 0 101
        a=rtpmap:8 PCMA/8000
        a=rtpmap:0 PCMU/8000
        a=rtpmap:101 telephone-event/8000
        a=fmtp:101 0-16
        a=silenceSupp:off - - - -
        a=ptime:20
        a=sendrecv

В результате настройки конфигурация маршрутизатора ESR-12v/12vf/14vf для решения поставленной задачи выглядит так:

Конфигурация на ESR полностью
interface gigabitethernet 1/0/7
  description "sip_phone"
  ip firewall disable
  ip address 198.51.100.1/24
exit
interface gigabitethernet 1/0/8
  description "to_ssw"
  ip firewall disable
  ip address 203.0.113.2/24
exit
pbx
  ruleset from_ssw
    description "Incoming call from trunk"
    rule 10
      pattern '_XXX,1,Dial(SIP/${EXTEN})'
      enable
    exit
  exit
  ruleset main_rule
    rule 10
      pattern '900,1,Set(CALLERID(num)=81111222${CALLERID(num)})'
      enable
    exit
    rule 20
      pattern '900,2,Dial(SIP/trunk_SSW/${EXTEN})'
      enable
    exit
  exit
  profile trunk_SSW
    type external
    client friend
    codec allow g711a
    codec allow g711u
    security level invite-port
    nat comedia
    qualify 10000
    host-address 203.0.113.1
  exit
  profile sip_phone
    client friend
    codec allow g711a
    codec allow g711u
    codec allow g722
    codec allow g726
    nat comedia
    qualify 10000
    ruleset main_rule
  exit
  register-server SSW
    ip address 203.0.113.1
    ip port 5060
    profile trunk_SSW
    username 100
    authentication password encrypted CDE65039E5
    enable
  exit
  user 777
    profile sip_phone
    password encrypted CDE65039E5
  exit
  enable
exit








  • Нет меток