Jak dostosować prefiksy numerów SMS

W tym przewodniku przedstawiamy przykładowe reguły routingu, które pokazują, jak można dostosować prefiksy numerów telefonów za pomocą reguł routingu. Jeśli numery telefonów przychodzą w różnych formatach od użytkowników, musimy stworzyć reguły, które dostosują każdy format, aby upewnić się, że numery są prawidłowo wysyłane do dostawcy usług SMS.

Wprowadzenie

W naszym przykładzie dostawca usług SMS zaakceptuje numer telefonu w następującym formacie:

+97466781661

Użytkownicy systemu będą używać innych formatów do wysyłania wiadomości. Na przykład:

66781661 -> +97466781661
0097466781661 -> +97466781661
97466781661 -> +97466781661
+97466781661 -> +97466781661

Chcemy się upewnić, że wszystkie powyższe formaty będą akceptowane przez naszego dostawcę usług SMS. Aby to osiągnąć, stworzymy 5 reguł routingu:

Trasa 1: Dodaj prefiks "+974" do 8-cyfrowych numerów telefonów
Trasa 2: Zmień numery telefonów zaczynające się od "00974" na zaczynające się od "+974"
Trasa 3: Zmień numery telefonów zaczynające się od "974" na zaczynające się od "+974"
Trasa 4: Pozostaw numery telefonów zaczynające się od "+974" i wyślij SMS do sieci komórkowej
Trasa 5: Wszystko inne powinno zostać wysłane do kosza

Trasa 1 / Krok 1: Utwórz trasę

Pierwszy przykład doda prefiks do numeru telefonu, jeśli numer telefonu ma dokładnie 8 cyfr.

Zmień to: 66781661
Na to: +97466781661

Musisz utworzyć dedykowaną trasę, aby wykonać tę modyfikację. Ta trasa musi pasować do 8-cyfrowych numerów telefonów i musi je zmodyfikować, aby miały prefiks +974.

Możesz rozpocząć, klikając ikonę "Trasy" na pasku narzędzi. Następnie określ połączenie "Od" jako "Any_SMS_User" i połączenie "Do" jako "SMPP_Client_1". Pozostaw tryb jako "Przenieś".

Rysunek 1 - Utwórz trasę

Trasa 1 / Krok 2: Utwórz warunek dopasowania

Aby ta trasa pasowała do numerów telefonów o dokładnie 8 cyfrach, musisz dodać "Warunek dopasowania". "Warunek dopasowania" sprawdzi "Adres docelowy" i jeśli numer telefonu ma dokładnie 8 cyfr, trasa zostanie zastosowana.

Warunek dopasowania:

/^\d{8}$/

Powyższy warunek można rozbić w następujący sposób:
rozpocznij dopasowanie: ^
8 cyfr: \d{8}
zakończ dopasowanie: $

Rysunek 2 - Dopasuj trasę

Trasa 1 / Krok 3: Utwórz modyfikator

Po dopasowaniu SMS-a do tego wzorca, zostanie zastosowana reguła modyfikacji:

/^(\d{8})$/+974$1/

Powyższy warunek można rozbić w następujący sposób:
zmień to: ^(\d{8})$
na to: +974$1

Zauważ, że sekcja "na to" zawiera $1. Oznacza to, że pierwsza grupa powinna zostać tam umieszczona. Pierwsza grupa to "(\d{8})". Grupa jest oznaczona przez ( ).

Rysunek 3 - Modyfikator

Trasa 1 / Krok 4: Przetestuj trasę

Aby przetestować system, po prostu wyślij SMS na 8-cyfrowy numer telefonu. Zauważ, że po wysłaniu wiadomości, gdy sprawdzisz folder wysłanych, zobaczysz, że numer "Do" został zmieniony na odpowiedni format. Wysłałeś SMS na "66781661", ale SMS został faktycznie wysłany na "+97466781661".

Wyślij wiadomość na 66781661
Rysunek 4 - Wyślij wiadomość na 66781661

Wiadomość wysłana na +97466781661
Rysunek 5 - Wiadomość wysłana na +97466781661

Właściwości trasy:

Nazwa trasy: Trasa 1
Od: Any_SMS_User@localhost
Do: SMPP_client_1@localhost
Tryb: Przenieś
Dopasuj adres docelowy: /^\d{8}$/
Zmodyfikuj adres docelowy: /^(\d{8})$/+974$1/

Powyższa tabela zawiera ustawienia, które musisz zastosować.


Trasa 2. - prefiks 00971 na prefiks +971

Druga trasa zmieni prefiks 00 na znak +. W sieciach komórkowych międzynarodowe numery telefonów zaczynają się od znaku +, podczas gdy w klasycznych systemach telefonicznych zaczynają się od 00.

Zamień to: 0097466781661
Na to: +97466781661
Warunek dopasowania:
/^00974.*$/

Powyższy warunek można rozłożyć następująco:
rozpocznij dopasowanie: ^
następujące cyfry to: 00974
po tym może być cokolwiek: .*
zakończ dopasowanie: $

Modyfikator:
/^00974(.*)$/+974$1/

Powyższy warunek można rozłożyć następująco:
zamień to: ^00974(.*)$
na to: +974$1

Właściwości trasy:

Nazwa trasy: Trasa 2
Od: Any_SMS_User@localhost
Do: SMPP_client_1@localhost
Tryb: Przenieś
Dopasuj adres Do: /^00974.*$/
Zmodyfikuj adres Do: /^00974(.*)$/+974$1/

Powyższa tabela zawiera ustawienia, które należy zastosować


Trasa 3. - prefiks 971 na prefiks +971

Trasa doda znak + do numeru telefonu. W sieciach komórkowych międzynarodowe numery telefonów zaczynają się od znaku +, chyba że znak + zostanie dodany, numer będzie traktowany jako lokalny.

Zamień to: 97466781661
Na to: +97466781661
Warunek dopasowania:
/^974.*$/

Powyższy warunek można rozłożyć następująco:
rozpocznij dopasowanie: ^
następujące cyfry to: 974
po tym może być cokolwiek: .*
zakończ dopasowanie: $

Modyfikator:
/^974(.*)$/+974$1/

Powyższy warunek można rozłożyć następująco:
zamień to: ^974(.*)$
na to: +974$1

Właściwości trasy:

Nazwa trasy: Trasa 3
Od: Any_SMS_User@localhost
Do: SMPP_client_1@localhost
Tryb: Przenieś
Dopasuj adres Do: /^974.*$/
Zmodyfikuj adres Do: /^974(.*)$/+974$1/

Powyższa tabela zawiera ustawienia, które należy zastosować


Trasa 4. - prefiks +971 na prefiks +971 (przepuszcza poprawnie sformatowane numery)

Czwarta trasa po prostu dopasuje poprawnie sformatowany numer telefonu i przepuści SMS-a bez modyfikacji.

Dopasuj to: 97466781661
Warunek dopasowania:
/^[+]974.*$/

Powyższy warunek można rozłożyć następująco:
rozpocznij dopasowanie: ^
następujący znak to: +
następujące cyfry to: 974
po tym może być cokolwiek: .*
zakończ dopasowanie: $

Zauważ, że znak + został umieszczony w nawiasach: [+]. Jest to spowodowane tym, że znak + jest znakiem specjalnym w składni wyrażeń regularnych.

Modyfikator:
Pozostaw puste

Jeśli numer telefonu jest poprawnie sformatowany, modyfikacja nie jest potrzebna

Właściwości trasy:

Nazwa trasy: Trasa 4
Od: Any_SMS_User@localhost
Do: SMPP_client_1@localhost
Tryb: Przenieś
Dopasuj adres Do: /^[+]974.*$/
Zmodyfikuj adres Do:

Powyższa tabela zawiera ustawienia, które należy zastosować


Trasa 5. - Przenieś wszystko inne do kosza

Nasza ostatnia trasa przeniesie wszystkie numery telefonów, które nie są dopasowane przez żaden z powyższych warunków routingu, do kosza.

Dopasuj: Cokolwiek
Bez zmian
Przekieruj do: Kosza

Nazwa trasy: Trasa 5
Od: Any_SMS_User@localhost
Do: SMPP_client_1@localhost
Tryb: Odrzuć
Dopasuj adres Do:
Zmodyfikuj adres Do:

Powyższa tabela zawiera ustawienia, które należy zastosować

Ostateczna tabela routingu

Twoja ostateczna tabela routingu będzie wyglądać następująco:

Nazwa trasy Od Dopasuj Modyfikuj Tryb Do
Trasa 1 Any_SMS_User@localhost /^\d{8}$/ /^(\d{8})$/+974$1/ Przenieś SMPP_client_1@localhost
Trasa 2 Any_SMS_User@localhost /^00974.*$/ /^00974(.*)$/+974$1/ Przenieś SMPP_client_1@localhost
Trasa 3 Any_SMS_User@localhost /^974.*$/ /^974(.*)$/+974$1/ Przenieś SMPP_client_1@localhost
Trasa 4 Any_SMS_User@localhost /^[+]974.*$/ Przenieś SMPP_client_1@localhost
Trasa 5 Any_SMS_User@localhost Odrzuć

More information