Wie man eine SMS-Nachricht mit einem Modem über AT-Befehle empfängt

Die folgenden AT-Befehle zeigen Ihnen, wie Sie mit dem SMS-Protokoll in einem realen Szenario arbeiten können. Es wird erklärt, wie Sie eine eingehende SMS von der SIM-Karte eines SMS-Modems entweder im PDU-Modus oder im Textmodus lesen können. Sie werden sehen, dass das zurückgegebene SMS-PDU dem SMS-Protokoll-Erklärung entspricht.

Wie man SMS mit AT-Befehlen empfängt (Schnelle Schritte)

Um SMS mit AT-Befehlen zu empfangen:

  1. Empfangen Sie die Nachricht auf dem SMS-Modem
  2. Verwenden Sie den Befehl AT+CGMR=Speicherort, um die SMS-Nachricht zu lesen
  3. Passen Sie den Code an, je nachdem, ob er im PDU- oder Textmodus ist
  4. Verwenden Sie den Befehl AT+CMGD=Speicherort, um eine SMS-Nachricht zu löschen
  5. Überprüfen Sie das Protokoll des SMS-Modems

Empfangen einer SMS mit einem SMS-Modem

Wenn eine neue SMS-Nachricht auf dem SMS-Modem eintrifft, wird sie auf der SIM-Karte oder im Speicher des Modems gespeichert. Dies geschieht automatisch. Sie haben keine Kontrolle über diesen Vorgang.

Um die SMS-Nachricht zu lesen, wird die Ozeki SMS Gateway das Speicherlese-Kommando mit einem AT-Befehl ausgeben. Standardmäßig verwendet Ozeki das Modem im PDU-Modus und nutzt den AT+CMGR-Befehl, um die Nachricht zu erhalten. Ozeki verwendet zwei Methoden: Es kann sich auf die Nachrichtenanzeige (AT+CMTI) verlassen oder alle Speicherzellen der SIM-Karte oder des Modemspeichers durchlaufen.

Wie man den Speicher eines GSM-Modems im PDU-Modus liest

Im PDU-Modus, wenn das SMS-Modem eine SMS-Nachricht empfängt, wird die folgende Nachricht an den PC über den seriellen oder USB-Port gesendet:

+CMTI: “SM”, 1

wobei 1 der Speicherort ist, von dem die Nachricht gelesen werden kann.

Um eine SMS-Nachricht von einem bestimmten Speicherort (z.B. Speicherort 1) zu lesen, ist der Befehl AT+CGMR erforderlich.

AT+CMGR=1[ENTER]
Das SMS-Modem sollte die PDU-Nachricht wie folgt zurückgeben.
+CMGR: 0,,24
07916314786007F0040B911604994743F400009930139100406B05E8329BFD06
OK

wobei 0 der Statuscode ist, der eine empfangene und bereits gelesene Nachricht anzeigt, und 24 die hexadezimale Zahl ist, die die Länge der Nachricht angibt.

Wie man den Speicher eines GSM-Modems im Textmodus liest

Wie im PDU-Modus erscheint auf dem PC-Bildschirm die folgende Nachricht, wenn das SMS-Modem eine SMS-Nachricht empfängt.

+CMTI: “SM”, 1

wobei 1 der Speicherort ist, von dem die Nachricht gelesen werden kann.

Um die SMS-Nachricht zu lesen, verwenden Sie den Befehl AT+CGMR wie folgt.

AT+CMGR=1[ENTER]

Das SMS-Modem sollte die Textnachricht wie folgt zurückgeben.

+CMGR: “REC READ”,“+3620201234567”,“20/12/01,20:18:12+44”

hallo

OK

Wie man eine SMS-Nachricht von der SIM-Karte oder dem Modemspeicher löscht

Die SMS-Nachricht kann von der SIM-Karte oder dem Speicher (z.B. Speicherort 1) mit dem Befehl AT+CMGD wie folgt gelöscht werden. Beachten Sie, dass es keinen AT-Befehl gibt, um alle SMS-Nachrichten auf einmal zu löschen.

AT+CMGD=1[ENTER]

Das SMS-Modem sollte OK zurückgeben.

More information