Wie man SMS-Nummernpräfixe anpasst

In dieser Anleitung geben wir Beispiele für Routing-Regeln, die zeigen, wie Sie Telefonnummernpräfixe mit Routing-Regeln anpassen können. Wenn die Telefonnummern in verschiedenen Formaten von den Benutzern eingehen, müssen wir Regeln erstellen, die jedes Format anpassen, um sicherzustellen, dass die Nummern korrekt an den SMS-Dienstanbieter gesendet werden.

Einführung

In unserem Beispiel akzeptiert der SMS-Dienstanbieter eine Telefonnummer im folgenden Format:

+97466781661

Die Benutzer des Systems verwenden andere Formate, um die Nachricht zu senden. Zum Beispiel:

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

Wir möchten sicherstellen, dass alle oben genannten Formate von unserem SMS-Dienstanbieter akzeptiert werden. Um dies zu erreichen, erstellen wir 5 Routing-Regeln:

Route 1: Fügen Sie das Präfix "+974" zu 8-stelligen Telefonnummern hinzu
Route 2: Ändern Sie Telefonnummern, die mit "00974" beginnen, zu "+974"
Route 3: Ändern Sie Telefonnummern, die mit "974" beginnen, zu "+974"
Route 4: Belassen Sie Telefonnummern, die mit "+974" beginnen, und senden Sie die SMS an das Mobilfunknetz
Route 5: Alles andere sollte in den Papierkorb gesendet werden

Route 1 / Schritt 1: Route erstellen

Das erste Beispiel fügt ein Präfix zur Telefonnummer hinzu, wenn die Telefonnummer genau 8-stellig ist.

Ändern Sie dies: 66781661
In dies: +97466781661

Sie müssen eine dedizierte Route erstellen, um diese Änderung vorzunehmen. Diese Route muss die 8-stelligen Telefonnummern erkennen und sie so ändern, dass sie das +974-Präfix erhalten.

Sie können beginnen, indem Sie auf das "Routes"-Symbol in der Symbolleiste klicken. Danach geben Sie die "From"-Verbindung als "Any_SMS_User" und die "To"-Verbindung als "SMPP_Client_1" an. Belassen Sie den Modus als "Move".

Abbildung 1 - Route erstellen

Route 1 / Schritt 2: Eine Übereinstimmungsbedingung erstellen

Damit diese Route 8-stellige Telefonnummern erkennt, müssen Sie eine "Übereinstimmungsbedingung" hinzufügen. Die "Übereinstimmungsbedingung" prüft die "To address", und wenn die Telefonnummer genau 8-stellig ist, wird die Route wirksam.

Übereinstimmungsbedingung:

/^\d{8}$/

Die obige Bedingung kann wie folgt aufgeschlüsselt werden:
Start der Übereinstimmung: ^
8 Ziffern folgen: \d{8}
Ende der Übereinstimmung: $

Abbildung 2 - Route abgleichen

Route 1 / Schritt 3: Einen Modifikator erstellen

Nachdem die SMS diesem Muster entspricht, wird die Änderungsregel wirksam:

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

Die obige Bedingung kann wie folgt aufgeschlüsselt werden:
ändere dies: ^(\d{8})$
in dies: +974$1

Beachten Sie, dass der "in dies"-Abschnitt $1 enthält. Dies bedeutet, dass die erste Gruppe dort eingefügt werden soll. Die erste Gruppe ist "(\d{8})". Eine Gruppe wird durch ( ) markiert.

Abbildung 3 - Modifikator

Route 1 / Schritt 4: Die Route testen

Um das System zu testen, senden Sie einfach eine SMS an eine 8-stellige Telefonnummer. Beachten Sie, dass nach dem Senden der Nachricht, wenn Sie den Ordner "Gesendete Elemente" überprüfen, Sie sehen werden, dass die "To"-Telefonnummer in das entsprechende Format geändert wurde. Sie haben die SMS an "66781661" gesendet, aber die SMS wurde tatsächlich an "+97466781661" gesendet.

Nachricht an 66781661 senden
Abbildung 4 - Nachricht an 66781661 senden

Nachricht an +97466781661 gesendet
Abbildung 5 - Nachricht an +97466781661 gesendet

Die Routeneigenschaften sind:

Routenname: Route 1
From: Any_SMS_User@localhost
To: SMPP_client_1@localhost
Mode: Move
Match To address: /^\d{8}$/
Modify To address: /^(\d{8})$/+974$1/

Die obige Tabelle enthält die Einstellungen, die Sie anwenden müssen.


Route 2. - 00971-Präfix zu einem +971-Präfix

Die zweite Route ändert das 00-Präfix in ein +-Zeichen. In Mobilfunknetzen beginnen internationale Telefonnummern mit einem +-Zeichen, während sie in klassischen Telefonsystemen mit 00 beginnen.

Ändere dies: 0097466781661
Zu diesem: +97466781661
Übereinstimmungsbedingung:
/^00974.*$/

Die obige Bedingung kann wie folgt aufgeschlüsselt werden:
Beginne die Übereinstimmung: ^
die folgenden Ziffern sind: 00974
danach kann alles kommen: .*
beende die Übereinstimmung: $

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

Die obige Bedingung kann wie folgt aufgeschlüsselt werden:
ändere dies: ^00974(.*)$
zu diesem: +974$1

Die Routeneigenschaften sind:

Routenname: Route 2
Von: Any_SMS_User@localhost
An: SMPP_client_1@localhost
Modus: Move
Übereinstimmung mit Adresse: /^00974.*$/
Adresse ändern: /^00974(.*)$/+974$1/

Die obige Tabelle enthält die Einstellungen, die Sie anwenden müssen


Route 3. - 971-Präfix zu einem +971-Präfix

Diese Route fügt ein +-Zeichen zur Telefonnummer hinzu. In Mobilfunknetzen beginnen internationale Telefonnummern mit einem +-Zeichen. Ohne das +-Zeichen wird die Nummer als lokale Nummer behandelt.

Ändere dies: 97466781661
Zu diesem: +97466781661
Übereinstimmungsbedingung:
/^974.*$/

Die obige Bedingung kann wie folgt aufgeschlüsselt werden:
Beginne die Übereinstimmung: ^
die folgenden Ziffern sind: 974
danach kann alles kommen: .*
beende die Übereinstimmung: $

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

Die obige Bedingung kann wie folgt aufgeschlüsselt werden:
ändere dies: ^974(.*)$
zu diesem: +974$1

Die Routeneigenschaften sind:

Routenname: Route 3
Von: Any_SMS_User@localhost
An: SMPP_client_1@localhost
Modus: Move
Übereinstimmung mit Adresse: /^974.*$/
Adresse ändern: /^974(.*)$/+974$1/

Die obige Tabelle enthält die Einstellungen, die Sie anwenden müssen


Route 4. - +971-Präfix zu einem +971-Präfix (korrekt formatierte Nummern durchlassen)

Die vierte Route passt einfach auf die korrekt formatierte Telefonnummer und lässt die SMS ohne Änderung durch.

Übereinstimmung mit diesem: 97466781661
Übereinstimmungsbedingung:
/^[+]974.*$/

Die obige Bedingung kann wie folgt aufgeschlüsselt werden:
Beginne die Übereinstimmung: ^
das folgende Zeichen ist: +
die folgenden Ziffern sind: 974
danach kann alles kommen: .*
beende die Übereinstimmung: $

Beachten Sie, dass das +-Zeichen in Klammern gesetzt wurde: [+]. Dies liegt daran, dass das +-Zeichen ein Sonderzeichen in der regulären Ausdruckssyntax ist.

Modifikator:
Leer lassen

Wenn die Telefonnummer korrekt formatiert ist, ist keine Änderung erforderlich

Die Routeneigenschaften sind:

Routenname: Route 4
Von: Any_SMS_User@localhost
An: SMPP_client_1@localhost
Modus: Move
Übereinstimmung mit Adresse: /^[+]974.*$/
Adresse ändern:

Die obige Tabelle enthält die Einstellungen, die Sie anwenden müssen


Route 5. - Alles andere in den Papierkorb verschieben

Unsere letzte Route verschiebt alle Telefonnummern, die von keiner der oben genannten Routing-Bedingungen erfasst werden, in den Papierkorb.

Übereinstimmung: Alles
Keine Änderung
Weiterleiten an: Papierkorb

Routenname: Route 5
Von: Any_SMS_User@localhost
An: SMPP_client_1@localhost
Modus: Drop
Übereinstimmung mit Adresse:
Adresse ändern:

Die obige Tabelle enthält die Einstellungen, die Sie anwenden müssen

Die endgültige Routing-Tabelle

Ihre endgültige Routing-Tabelle wird wie folgt aussehen:

Routenname Von Übereinstimmung Ändern Modus An
Route 1 Any_SMS_User@localhost /^\d{8}$/ /^(\d{8})$/+974$1/ Move SMPP_client_1@localhost
Route 2 Any_SMS_User@localhost /^00974.*$/ /^00974(.*)$/+974$1/ Move SMPP_client_1@localhost
Route 3 Any_SMS_User@localhost /^974.*$/ /^974(.*)$/+974$1/ Move SMPP_client_1@localhost
Route 4 Any_SMS_User@localhost /^[+]974.*$/ Move SMPP_client_1@localhost
Route 5 Any_SMS_User@localhost Drop

More information