Behebung fehlerhafter Daten-Sessions per SMS

Mobilfunk, insbesondere Roaming-Netzwerke, sind komplexe Netzwerk-Infrastrukturen. Innerhalb dieser Strukturen kann es immer wieder vorkommen, dass einzelne Komponenten gestört sind.

Das kann bei der Funkzelle des Netzanbieters anfangen und bis hin zu Roaming-Servern, wie den GRX-Servern, auftreten. Fast alle Komponenten sind redundant aufgebaut, sodass im Falle eines Ausfalls Backups greifen. Wird der Datenstrom über andere Wege geroutet, so muss in einigen Fällen die Daten-Session erneuert werden-  Endgeräte sollten daher eine Routine hinterlegt haben, die automatisch erkennt, dass eine Daten-Session nicht mehr funktioniert, dass also keine Daten mehr ausgetauscht werden können. Dies kann zum Beispiel über einen Keep-Alive-Ping erfolgen, der in regelmäßigen Abständen etwa an den Google DNS Server 8.8.8.8 gesendet wird. Wenn dieser Ping eine gewisse Anzahl an Versuchen nicht erfolgreich war, sollte dann durch das Endgerät die Verbindung erneuert werden.


Wir beobachten, dass einige Endgeräte einen solchen Mechanismus nicht implementiert haben. Daher kann es vorkommen, dass die Endgeräte sich zwar in einer Daten-Session befinden, aber kein Datenaustausch möglich ist. 


Über das Zurücksetzen von Verbindungen über unser Online-Portal wird ein “Cancel Location” Kommando an das Endgerät übermittelt. Dadurch, wenn das Kommando korrekt verarbeitet wird und das Endgerät aktiv im Mobilfunk registriert ist, wird das Endgerät getriggert, die Daten-Session zu erneuern. In den meisten Fällen kann die Datenkonnektivität dadurch wiederhergestellt werden. Wie Sie die Verbindung bei einem Endpunkt zurücksetzen können, sehen Sie hier:


Reset Connectivity Deutsch


Rücksetzen per SMS-Kommandos

Die grundlegende Mobilfunkverbindung, die auch zum Senden und Empfangen von SMS erforderlich ist, ist unabhängig von den Daten-Sessions. Das heißt, dass SMS auch bei fehlender Datenverbindung zugestellt werden können. Bei sehr vielen Endgeräten ist es möglich, die Datenverbindung über SMS Kommandos zurückzusetzen. Wie das funktioniert, erfahren Sie am besten in den Herstellerunterlagen. Ein Beispiel für Teltonika RUT240 Router finden Sie unter diesem Abschnitt. Sollten dennoch Fragen dazu offen sein, steht Ihnen auch unser Support-Team gerne zur Verfügung. SMS direkt an das Gerät können beispielsweise manuell direkt über die SMS-Konsole im Onlineportal gesendet werden. Eine Anleitung dazu erhalten Sie in diesem Hilfe-Beitrag. Darüber hinaus können SMS auch per API an Endgeräte geschickt werden. Mit einem Tool wie Postman kann so eine Stapelverarbeitung vorgenommen werden. Wie das funktioniert, erklären wir Ihnen im folgenden Abschnitt.


Beispiel für ein SMS Kommando beim Teltonika RUT240

Die möglichen SMS-Kommandos für den Teltonika RUT240 LTE Router werden in der entsprechenden Wiki von Teltonika detailliert erläutert. Gehen Sie dafür in den Abschnitt “SMS Utilities”. Am besten eignet sich das Kommando “Reboot”, um den Router neu zu starten. Dadurch werden auch etwaige gepufferte Parameter neu geladen. Wenn Sie als SMS-Text für das Kommando “reboot” definiert haben, und “admin01” als Passwort, dann würde die SMS, die an das Endgerät gesendet werden muss, folgendermaßen aussehen: “admin01 reboot”.


Massenversand von SMS zum Zurücksetzen

Um über eine Stapelverarbeitung SMS an all Ihre Endgeräte zu senden, benötigen Sie unsere API. Der Request, der Ihnen hierzu zur Verfügung steht, ist /api/v1/endpoint/{endpoint_id}/sms. Sie benötigen zur Ausführung des Kommandos für die Geräte die “endpoint_id”. Diese erhalten Sie am einfachsten über den Bericht “Geräteliste”:



Ferner benötigen Sie einen Authentifizierungs-Token, um API Requests ausführen zu können. Unter “Integrationen” ⇒ “Anwendungstoken” können Sie diesen erstellen. Speichern Sie sich den generierten Schlüssel bitte ab, da Sie diesen benötigen.


Für die Ausführung der API Requests wird in diesem Beispiel das Tool Postman verwendet. Einen Account können Sie, falls noch nicht vorhanden, hier einrichten. Sie können jedoch natürlich auch andere vergleichbare Tools verwenden, da die REST API gängigen Konventionen folgt. Erstellen Sie sich im Postman am besten einen eigenen Workspace, um das Kommando anzulegen. Erstellen Sie dann unter Collections ein neues POST-Request zur Authentifizierung. Als URL geben Sie bitte https://portal.whereversim.com/api/v1/authenticate an. Als Body definieren Sie “raw” und geben folgenden Body an:


2022-03-02_12h08_00

Statt “” setzen Sie bitte den Anwendungstoken ein, den Sie zuvor im Onlineportal generiert haben. Achten Sie bitte darauf, dass sich dieser innerhalb doppelter Anführungszeichen befindet.


Ergänzen Sie unter Headers bitte auch folgendes Attribut:

2022-03-02_12h09_36


Unter Tests muss sich zudem folgender Code befinden, damit der Rückgabewert (Authentifizierungs-Token) gespeichert wird:


Damit ist der Request für die Authentifizierung fertiggestellt. Erstellen Sie als nächstes eine neue “Collection” mit einem beliebigen Namen, z.B. “Send SMS”. Diese wird benötigt, um die Stapelverarbeitung zu ermöglichen. Erstellen Sie innerhalb der Collection ein Request vom Typ “POST” an die nachfolgend angezeigte URL und mit den dargestellten Headern:

2022-03-02_12h20_32


Im Body vom Typ “raw” hinterlegen Sie dann folgenden Inhalt:


2022-03-02_12h21_40


Bei source_address können Sie eine Absendernummer definieren. Bei manchen Endgeräten ist ein Absender festgelegt, der SMS an das Endgerät senden darf. Diesen müssten Sie hier hinterlegen. Achten Sie bitte darauf, dass Sie vorab die Länderkennung mit angeben. Diese lautet für Deutschland zum Beispiel “+49”. Im payload geben Sie das Kommando an, das an das Endgerät gesendet werden soll. Speichern Sie den Request. Die Vorbereitungen in Postman sind nun erledigt, damit die Stapelverarbeitung vorgenommen werden kann.


Die Stapelverarbeitung ausführen

Führen Sie zunächst den Request für die Authentifizierung aus. Anschließend klicken Sie auf die erstellte Collection. Oben rechts erscheint nun ein “Run”-Button. Klicken Sie diesen, um die Stapelverarbeitung zu starten und wählen dann den Request aus, über den die Stapelverarbeitung laufen soll. Wählen Sie dann die zuvor exportierte CSV-Datei aus, die die Endpunkte beinhaltet, an die eine SMS gesendet werden soll. Geben Sie bei Delay bitte einen Wert von ca. 200ms an, damit das Limit der maximal erlaubten API-Requests pro Zeit nicht überschritten wird. Die Stapelverarbeitung starten Sie dann, indem Sie den Button “Run” ausführen. Der Ablauf ist auch in folgendem Gif noch einmal zu sehen:


Batch Request Postman


Die Stapelverarbeitung wird nun gestartet. Anhand der angezeigten Rückgabecodes können Sie erkennen, ob die Kommandos erfolgreich ausgeführt wurden. Die versendeten SMS können Sie übrigens nach Ausführung der API Requests auch in der SMS-Konsole im Onlineportal einsehen.