SMS-Routing
Mit dem Ozeki SMS Gateway können Sie mehrere Mobilfunkverbindungen einrichten, um SMS-Nachrichten zu versenden. Um zu steuern, welche Verbindung zum Senden einer SMS an das Mobilfunknetz verwendet wird, können Sie das SMS-Routing nutzen.
Einführung in das SMS-Routing
Dieses Dokument bietet eine Einführung in das SMS-Routing. Es behandelt die grundlegenden Konzepte des SMS-Routing-Verfahrens im Ozeki SMS Gateway. Sie lernen die Routing-Tabelle kennen, erfahren, was eine Routing-Regel ist, und erhalten wie Sie eine SMS-Nachricht on-the-fly ändern.
Was ist SMS-Routing?
SMS-Routing ist das Verfahren, mit dem der Ozeki SMS Gateway entscheidet, wohin eine SMS-Nachricht weitergeleitet werden soll. Das SMS-Routing basiert auf Mustererkennung und ermöglicht die Änderung von Nachrichten. SMS-Routing-Lösungen werden von SMS-Dienstanbietern und großen Organisationen genutzt.
Welche Arten von SMS-Routing gibt es?
Einfaches SMS-Routing: Leiten Sie SMS-Nachrichten einfach mit unkomplizierten Routing-Regeln an gewünschte Ziele. Optimieren Sie die Nachrichtenzustellung mit minimalem Aufwand.
Least-Cost-SMS-Routing: Maximieren Sie Kosteneinsparungen, indem Sie SMS-Nachrichten intelligent über die günstigsten verfügbaren Kanäle routen. Reduzieren Sie SMS-Kosten ohne Kompromisse bei der Zustellung.
Backup-SMS-Routing: Gewährleisten Sie einen unterbrechungsfreien SMS-Dienst mit zuverlässigem Backup-Routing. Halten Sie die Verfügbarkeit hoch und verhindern Sie Nachrichtenverluste bei Ausfällen des primären Kanals.
Lastverteilung mit SMS-Routing: Verteilen Sie SMS-Verkehr gleichmäßig auf mehrere Kanäle, um Überlastung zu vermeiden und die Leistung zu verbessern. Erhöhen Sie die Systemstabilität und Reaktionsfähigkeit.
Blockieren internationaler SMS-Nachrichten: Verhindern Sie, dass unerwünschte internationale SMS versendet oder unerwünschte Nachrichten Ihr System erreichen. Schützen Sie sich vor Spam, Betrug und hohen Kosten.
Telefonnummern von Benutzern Routen zuweisen: Verwalten Sie Telefonnummern von Benutzern effizient, indem Sie sie bestimmten SMS-Routen zuordnen. Optimieren Sie das Senden und Empfangen von SMS und verbessern Sie das Kundenerlebnis.
Wie konfiguriert man SMS-Routing? (Schnellanleitung)
Um SMS-Routing zu konfigurieren, müssen Sie die Ozeki SMS App starten und die Routing-Tabelle öffnen, indem Sie auf die Schaltfläche "Routes" in der Symbolleiste klicken.
Gehen Sie folgendermaßen vor, um SMS-Routing zu konfigurieren:
- Öffnen Sie Ozeki SMS Gateway auf dem Windows-Desktop
- Melden Sie sich mit dem Benutzernamen "admin" an
- Öffnen Sie die SMS Gateway App
- Suchen Sie die Symbolleiste oben
- Suchen Sie die Schaltfläche "Routes" in der Symbolleiste
- Klicken Sie auf die Schaltfläche "Routes"
- Dadurch wird die Routing-Tabelle geöffnet
- Klicken Sie auf "Neue Route erstellen", um eine SMS-Route anzulegen
- Füllen Sie das Formular zur Routenerstellung aus
- Klicken Sie auf OK, um die neue Route zu erstellen
- Verwenden Sie die roten und grünen Pfeile, um die Regel in die gewünschte Position zu verschieben
Was bewirkt SMS-Routing?
Routing weist einer Nachricht eine "To-Verbindung" zu. Mit anderen Worten: Es wählt die Zielverbindung aus, an die die Nachricht weitergeleitet werden soll. Im Ozeki SMS Gateway ist alles eine "Verbindung". Eine Verbindung ist ein Messaging-Endpunkt, der Nachrichten senden und empfangen kann. Obwohl Verbindungen in Gruppen angezeigt werden (z.B.: SMS-Benutzer, Mobilfunkverbindungen usw.), sind sie beim Routing dennoch identische Verbindungen.
Das SMS-Routing ist das Verfahren, das verwendet wird, um zu entscheiden, wohin eine SMS-Nachricht weitergeleitet werden soll. Dieses Verfahren wird ausgeführt, wenn eine Eingabenachricht an die Routing-Tabelle gesendet wird (Abbildung 2). Die Routing-Tabelle führt den Routing-Algorithmus aus und gibt eine Ausgabenachricht zurück, die mit der Eingabenachricht identisch ist, aber eine "To-Verbindung" zugewiesen hat. Nach dem Routing-Verfahren wird die Ausgabenachricht an die "To-Verbindung" weitergeleitet.
Was ist eine SMS-Routing-Regel?
Die SMS-Routing-Tabelle besteht aus Routing-Regeln. Eine Routing-Regel hat eine Übereinstimmungsbedingung, einen Satz von Modifikationsbefehlen und ein Ziel. Wenn eine SMS gesendet wird, wird sie zuerst an die Routing-Tabelle übergeben, wo sie mit Routing-Regeln abgeglichen wird. Wenn eine Regel mit der SMS "übereinstimmt", führt sie die Modifikationen aus und leitet die Nachricht an das Ziel weiter. Die Übereinstimmung basiert auf konfigurierten Bedingungen wie Absenderverbindung, Absendertelefonnummer, Nachrichtentext, Servicezeitraum usw. Modifikationsregeln werden nur angewendet, wenn die SMS die Übereinstimmungsbedingungen erfüllt. Wenn die Übereinstimmungsbedingungen nicht passen, wird die nächste Routing-Regel in der Routing-Tabelle ausprobiert.
Für jede gesendete Nachricht wird die Routing-Tabelle ausgeführt. Die Ausführung erfolgt von oben nach unten: Wenn eine Regel übereinstimmt, wird die Zielverbindung ("To connection") zugewiesen und das Routing beendet. Die Nachricht wird an das ausgewählte Ziel weitergeleitet.
Wie wird die Routing-Tabelle angezeigt?
Wenn Sie den Startbildschirm öffnen, sehen Sie zwei Ansichten der Haupt-Routing-Tabelle. Oben finden Sie eine gefilterte Tabelle, die nur die "eingehenden Routen" anzeigt, und unten sehen Sie eine gefilterte Tabelle, die nur die "ausgehenden Routen" anzeigt. In der Praxis nennen wir eine Route eingehende Route, wenn die "From-Verbindung" als eine SMS-Netzwerkverbindung klassifiziert ist. Alles andere ist eine ausgehende Route.
Diese Unterscheidung wird vorgenommen, weil die meisten Benutzer in Begriffen von eingehenden und ausgehenden Routen denken. Obwohl es im Ozeki-Routing-System keinen Unterschied zwischen solchen Regeln gibt, ist es besser, die Routing-Tabelle auf diese Weise darzustellen. Die Leute verstehen es besser, wenn Routen nach ihrer Absenderverbindung ("From-Verbindung") in Gruppen organisiert und nur diese gefilterten Gruppen angezeigt werden. Wenn Sie ein Routing-Experte werden möchten, verwenden Sie immer die Haupt-Routing-Tabelle anstatt der gefilterten Ansichten, da Sie so ein besseres Gefühl dafür bekommen, was mit einer bestimmten Nachricht passiert.
Wie kann ich eine Routing-Regel erstellen?
Wenn Sie eine Routing-Regel erstellen möchten, öffnen Sie die Haupt-Routing-Tabelle, indem Sie auf die Schaltfläche "Routes" in der Symbolleiste klicken, und klicken Sie auf "Create new Route". Dadurch wird das Formular zur Routenerstellung angezeigt. Beachten Sie die Registerkarten "Match" und "Modify" in diesem Formular. Dies sind die Seiten, auf denen Sie Übereinstimmungsbedingungen und Änderungsbefehle definieren können.
Was, wenn ich meine Verbindung nicht sehe?
Große SMS-Systeme können eine sehr große Anzahl von Verbindungen haben. Um das Leben zu vereinfachen, werden die angebotenen "From"- und "To"-Verbindungen standardmäßig gefiltert. Selten verwendete Verbindungen werden ausgeblendet. Dies kann dazu führen, dass Sie Ihre Verbindung nicht in der Liste finden.
Wenn Sie die Verbindung, mit der Sie arbeiten möchten, nicht in der "From"- oder "To"-Liste sehen, klicken Sie einfach auf die Zahnrad-Schaltfläche vor dem Kombinationsfeld, das die Liste der Verbindungen enthält. Dadurch öffnet sich ein Dialog, in dem Sie andere Verbindungstypen auswählen können, die in der Liste angezeigt werden sollen.
Standard-SMS-Routing (Beispiel 1)
Bevor wir uns mit komplexen Routing-Konfigurationen befassen, ist es eine gute Idee, die Standard-Routing-Tabelle zu verstehen. In der Standard-Routing-Tabelle sehen Sie zwei Routen: out_sms und in_admin. Die out_sms-Route wird verwendet, um Nachrichten von sogenannten "SMS-Benutzern" an "SMS-Verbindungen" weiterzuleiten. "SMS-Verbindungen" sind eine Gruppe von Verbindungen, die verwendet werden, um Ihr System mit dem Mobilfunknetz zu verbinden. Die in_admin-Route ist eine automatisch erstellte Regel, um eine Kopie jeder eingehenden SMS an den Admin-Benutzer weiterzuleiten. Sie könnten den "Copy"-Modus in der Routing-Tabelle bemerken. Weitere Informationen darüber, wie Sie eine Kopie einer SMS an einen bestimmten Benutzer senden können, finden Sie in der Anleitung wie Sie eine eingehende SMS an mehrere Ziele weiterleiten.
Um zu verstehen, wie die out_sms-Route funktioniert, erstellen wir zwei SMPP-SMS-Client-Verbindungen zu zwei verschiedenen Mobilfunknetzbetreibern. Wir nennen diese Verbindungen SMPP_client_1 und SMPP_client_2. (In diesem Beispiel werden wir die Standard-Routing-Tabelle nicht ändern). Wir senden eine SMS vom Admin-Benutzer, indem wir auf die Schaltfläche "New" in der Symbolleiste klicken. In diesem Setup geht eine SMS von admin über SMPP_client_1 oder SMPP_client_2 hinaus. Das System wählt zufällig die erste verfügbare SMS-Verbindung für die ausgehende Nachricht aus. Die verwendete Route ist die "out_sms"-Route, die SMS von "Any_SMS_User" an "Any_SMS_Connection" weiterleitet.
Wenn die Standard-Route verwendet wird, wird die vom Admin gesendete SMS über die Route namens "out_sms" weitergeleitet.
Es ist erwähnenswert, dass diese zufällige Routenauswahl nicht genau zufällig ist. Tatsächlich verteilt ein Lastenausgleichsalgorithmus die Last auf die Mobilfunknetzverbindungen mit freier Kapazität unter Berücksichtigung der zuvor gemessenen Kapazität jeder Verbindung.
Das nächste Beispiel zeigt, wie SMS-Routing verwendet werden kann, um einem bestimmten Absender ein festes Ziel zuzuweisen. In unserem Beispiel sollen alle SMS-Nachrichten, die vom Admin gesendet werden, über SMPP_Client_1 versendet werden. Dieses Setup wird sehr häufig verwendet, da es oft eine Anforderung ist, dass ein Benutzer immer eine bestimmte Mobilfunkverbindung nutzt. Um dies zu erreichen, können wir eine einfache Quelle-zu-Ziel-Route erstellen.
Um zu demonstrieren, wie dieses Setup funktioniert, können wir die gleiche Anzahl von Verbindungen wie in Beispiel 1 verwenden. Wir können unserer Routing-Tabelle eine zusätzliche Route hinzufügen, die SMS vom Admin an SMPP_Client_1 weiterleitet. Die Route stellt sicher, dass eine SMS vom Admin gezwungen wird, über SMPP_Client_1 zu gehen. In dieser Konfiguration wird SMPP_Client_2 überhaupt nicht verwendet.
SMS-Routing nach Telefonnummernpräfix (Beispiel 3)
Das nächste Beispiel zeigt, wie SMS-Routing basierend auf Telefonnummernpräfixen durchgeführt werden kann. Dies ist eine häufige Aufgabe, da Sie oft bestimmte Nachrichten, die zu einem Netzwerk gehören, das durch ein Telefonnummernpräfix identifiziert wird, über eine bestimmte Verbindung senden möchten. Zum Beispiel, wenn Sie SMS nach Ungarn routen möchten, würden Sie SMS-Nachrichten, die an das Präfix +36.... gesendet werden, über das Vodafone-Ungarn-Netzwerk routen. Sie könnten auch eine zweite Route einrichten, die Präfixe +44.... über das T-Mobile-Netzwerk in Großbritannien routet.
Die folgende Abbildung zeigt, wie Sie ein Telefonnummernpräfix als Übereinstimmungsbedingung definieren können. Das Beispiel verwendet einen PCRE-typischen regulären Ausdruck. Dieser Ausdruck wird verwendet, um die Empfängeradresse ("An Telefonnummer") abzugleichen, um zu entscheiden, ob die Route angewendet werden soll oder nicht.
Wenn Sie eine Reihe von Telefonnummern besitzen, können Sie Ihren Kunden oder Benutzern eine eindeutige Telefonnummer zuweisen. In diesem Fall möchten Sie eingehende SMS-Nachrichten, die an eine bestimmte Telefonnummer gesendet werden, an einen bestimmten Benutzer weiterleiten. Beispiel 4 zeigt die Routing-Konfiguration, um dieses Ziel zu erreichen.
In diesem Beispiel fügen wir zwei HTTP-Benutzer hinzu: http_user_1 und http_user_2, die die eingehenden Nachrichten erhalten werden. Einer erhält die Telefonnummer +3633333333, der andere die Telefonnummer +3644444444. Wir erstellen nun zwei Routen mit vollständiger Telefonnummernübereinstimmung. Diese Routen leiten alle SMS, die an diese Telefonnummern gesendet werden, an die entsprechenden Benutzer weiter.
Wie Sie in der obigen Abbildung sehen können, ist das Feld "Von" auf "Any_SMS_Connection" gesetzt. Dies liegt daran, dass wir alle SMS-Nachrichten, die an die Telefonnummer +3633333333 gesendet werden, unabhängig davon, über welche SMS-Verbindung sie eingehen, an http_user_1 weiterleiten möchten. Das Ziel ("An") für diese Route ist auf http_user_1 festgelegt. Wenn Sie sich die folgende Abbildung ansehen, werden Sie feststellen, dass wir in diesem Fall die vollständige Telefonnummer in der Empfängerübereinstimmungsbedingung angeben. Beachten Sie, dass wir keinen Schrägstrich (/) vor und nach der Telefonnummer setzen. Dies liegt daran, dass wir in diesem Fall keine reguläre Ausdrucksmusterübereinstimmung durchführen. Wir führen einfach einen strikten Telefonnummernvergleich durch.
Die Konfiguration für http_user_2 ist sehr ähnlich. Der Unterschied liegt im Feld "An" und der Telefonnummer, die in das Feld "An Adresse" auf der Registerkarte "Übereinstimmung" der Routing-Regel eingegeben wird. Sie könnten auch feststellen, dass diese beiden Routen als route_3 und route_4 bezeichnet werden.
Wenn Sie mit vielen Routen arbeiten, ist es eine gute Idee, den Routen aussagekräftige Namen zu geben, damit Sie sie schnell identifizieren können. Es gibt bessere Namen als die standardmäßigen route_3 oder route_4, die in diesem Beispiel verwendet werden.
SMS-Routing nach Schlüsselwörtern (Beispiel 5)
Das nächste Beispiel befasst sich mit dem SMS-Routing basierend auf Schlüsselwörtern im Nachrichtentext. Diese Funktion wird häufig in Quiz-Spielen, SMS-Abstimmungen oder schlüsselwortbasierten Inhaltsabfragediensten verwendet. In diesem Beispiel leiten wir jede SMS, die von Any_SMS_Connection kommt und das Wort "vote" enthält, an http_user_2 weiter.
Wenn Sie sich die nächste Abbildung ansehen, werden Sie feststellen, dass wir eine reguläre Ausdrucksübereinstimmung verwenden. In diesem regulären Ausdrucksmuster (auch als Regex-Muster bezeichnet) setzen wir ein .*-Muster vor und nach dem Wort. Dies teilt der Regex-Engine mit, dass das Schlüsselwort "vote" überall in den Nachrichten stehen kann. Diese Bedingung passt auf die folgenden SMS-Texte: "Hello, here is my vote: red" oder "vote red" oder "I am not voting".
Sie könnten auch den Fall-ignorierenden Modifikator "i" verwenden, der für "ignore case" steht, wenn Sie erwarten, dass das Schlüsselwort in Klein- oder Großbuchstaben gesendet wird. Das Muster "/.*vote.*/i" würde auf "vote", "Vote", "VOTE" oder "vOtE" passen.
Es ist nützlich zu wissen, dass es auch eine Bedingung für den Dienstzeitraum gibt, die verwendet werden kann, um die Lebensdauer dieser Regel zu begrenzen. Diese Kombination: Text-Schlüsselwortabgleich und Dienstzeitraum werden oft zusammen für SMS-Inhaltsdienste verwendet, die für einen bestimmten Zeitraum betrieben werden. In diesem Beispiel leiten wir jede SMS, die von Any_SMS_Connection kommt und das Wort "vote" zwischen dem 2021-04-01 00:000:00 und dem 2021-04-30 24:00:00 enthält, an HTTP-Benutzer 2 weiter.
Wie man SMS-Routing testet
Wenn Sie SMS-Routing testen möchten, ohne SMS-Nachrichten tatsächlich an das Mobilfunknetz weiterzuleiten, können Sie eine SMPP-Simulator-Verbindung einrichten. Ein SMPP-Simulator kann als virtueller SMPP-Server fungieren, der eingereichte SMS-Nachrichten über eine SMPP-Verbindung akzeptiert und SMS- Zustellberichte simulieren kann.
Weiterführende Literatur zu SMS-Modifikationsbefehlen
Die obigen Beispiele demonstrierten SMS-Abgleichbedingungen. Eine weitere starke Funktion ist die SMS-Modifikation während des Routings. Die Idee ist, dass einmal eine SMS gegen eine Regel abgeglichen wurde, die SMS modifiziert werden kann. Diese Funktion ist sehr nützlich, da sie Ihnen nicht nur die Kontrolle über alle Nachrichten gibt, die Ihr System durchlaufen, sondern Sie können auch bestimmte Fehler beheben, wie z.B. falsche Zielnummern, oder Sie können bestimmte inakzeptable Inhalte auf eine Blacklist setzen. Die folgenden Dokumente bieten Informationen zur Modifikation von SMS-Inhalten.
- Wie man die SMS-Empfänger im SMS-Routing ändert
- Wie man Kopien einer SMS an mehrere Telefonnummern mit SMS-Routing sendet
- Wie man die SMS-Absenderkennung mit SMS-Routing ändert
- Wie man den SMS-Text mit SMS-Routing ändert
- Wie man Text am Ende der SMS mit SMS-Routing anhängt
- Wie man Absender und Empfänger mit SMS-Routing vertauscht
FAQs
Was ist ein Zwei-Wege-SMS-System?
Ein SMS-System, das SMS-Nachrichten senden und empfangen kann.
In der Welt der SMS ermöglicht ein Zwei-Wege-System Ihnen, eine Konversation mit
Mobilfunknutzern zu führen. Sie können Nachrichten an sie senden, und sie können über dasselbe System
antworten.
Wenn ein Mobilfunknutzer auf meine SMS antwortet, kann ich feststellen, auf welche Nachricht er ursprünglich geantwortet hat?
Nein, das ist nicht möglich.
Stellen Sie sich eine Konversation vor, in der Sie nur einen Satz auf einmal senden können, ohne
Erinnerung an das, was zuvor kam. Das ist die Welt der SMS!
- Verlorene Verbindungen: Das SMS-Protokoll hat keine eingebaute Funktion wie eine "Konversations-ID", um Nachrichten miteinander zu verknüpfen. Jeder Text wird als eine einzelne, unabhängige Nachricht behandelt.
- Schlüsselwort-Hinweise: Der einzige Weg, um Antworten mit vorherigen Nachrichten zu verknüpfen, besteht darin, Schlüsselwörter innerhalb des Nachrichtentextes selbst einzubauen. Diese Schlüsselwörter würden als Referenzpunkte dienen, um die Nachrichten miteinander zu verknüpfen.
- Long-Code-Workaround (nur IP-SMS): Für diejenigen, die IP-SMS-Verbindungen mit einem Dienstanbieter nutzen, der Long Codes unterstützt (besondere Absendernummern mit mehr Ziffern), gibt es einen möglichen Trick. Sie können zusätzliche Ziffern innerhalb der Absendernummer kodieren, um die ursprüngliche Nachricht zu identifizieren. Dies setzt jedoch bestimmte Bedingungen und die Fähigkeiten des Dienstanbieters voraus.
Wie kann ich SMS-Nachrichten zuverlässig an verschiedene globale Ziele senden?
Für optimale Zuverlässigkeit sollten Sie mehrere SMS-Dienstanbieter-Verbindungen
in Ihrem System einrichten. Jede Verbindung erhält einen festgelegten Namen zur einfachen
Referenzierung in der ausgehenden Routing-Tabelle.
Die ausgehende Routing-Tabelle fungiert als Ihr Kontrollzentrum. Hier definieren Sie
ausgehende Routen, die festlegen, welche Verbindung jede Nachricht bearbeitet.
Um die Zuverlässigkeit zu erhöhen, nutzen Sie mindestens zwei Verbindungen. Eine Kombination, wie eine
IP-SMS-Verbindung und eine GSM-Modem-Verbindung, bietet eine leistungsstarke Lösung.
Konfigurieren Sie das GSM-Modem als Backup für die IP-SMS-Verbindung innerhalb der
ausgehenden Routing-Tabelle.
Sollte die IP-SMS-Verbindung ausfallen, leitet die ausgehende Routing-Tabelle Nachrichten automatisch
an das GSM-Modem weiter. Dies gewährleistet eine unterbrechungsfreie Nachrichtenübermittlung und
maximiert die Systemzuverlässigkeit.
Gibt es eine Möglichkeit festzustellen, ob eine eingehende SMS eine Antwort auf meine zuvor gesendete SMS ist?
Leider bietet die SMS-Technologie selbst keine integrierte Möglichkeit, festzustellen, ob eine eingehende Nachricht eine Antwort auf eine zuvor gesendete SMS ist. Dies macht es schwierig, Antworten eindeutig zuzuordnen.
Hier sind einige Ansätze, die Sie in Betracht ziehen können:
- Nachrichtentext-Identifikator: Fügen Sie einen eindeutigen Identifikator in die ursprüngliche Nachricht ein. Dies ermöglicht eine potenzielle Zuordnung zur Antwort, erfordert jedoch die Mitarbeit des Nutzers und ist nicht narrensicher.
- Zeitstempel-Abgleich: Vergleichen Sie die Zeitstempel gesendeter und empfangener Nachrichten. Obwohl hilfreich, kann diese Methode aufgrund möglicher Verzögerungen ungenau sein.
- Schlüsselwörter in Antworten: Ermutigen Sie Nutzer, ein bestimmtes Schlüsselwort in ihren Antworten zu verwenden. Sie können dann eine eingehende Route basierend auf diesem Schlüsselwort (Bedingung #3: Nachrichtentext) einrichten, um eine lose Verknüpfung mit der ursprünglichen Nachricht herzustellen. Die Einhaltung durch den Nutzer ist hier jedoch entscheidend.
Kann ich Nachrichtenparameter während des Routings ändern?
Ja, SMS-Routing bietet eine überraschende Superkraft: die Möglichkeit, Telefonnummern und Nachrichteninhalte während des Zustellprozesses zu bearbeiten! Dies eröffnet kreative Anwendungsmöglichkeiten:
- Nummernoptimierung: Müssen Sie einer Telefonnummer ein Präfix oder Suffix hinzufügen? Das Routing kann dies übernehmen und sicherstellen, dass Anrufe das richtige Ziel erreichen.
- Zielgerichtete Werbung: Möchten Sie eine Werbenachricht an ausgehende Texte anhängen? Das Routing ermöglicht die nahtlose Integration dieser Werbung in Ihren bestehenden Kommunikationsfluss.