suchen
HeimBackend-EntwicklungPHP-TutorialPHP implementiert die Idee und konkrete Implementierung des Sendens von Textnachrichten über die serielle Schnittstelle

Dieser Artikel stellt hauptsächlich die Idee und die spezifische Implementierung des Sendens von Textnachrichten über die serielle Schnittstelle in PHP vor. Ich hoffe, dass er für alle hilfreich ist.

Mit der Weiterentwicklung der Technologie haben sich im Bereich des zeitnahen Sendens und Empfangens von SMS drei Modi herausgebildet: BLOCKMODUS, TEXTMODUS basierend auf AT-Befehlen und PDU-MODUS basierend auf AT-Befehlen. Unter anderem ist der TEXTMODUS relativ einfach und viele Nokia-Mobiltelefone unterstützen diesen Modus. Die meisten Siemens-Handys unterstützen nur den PDU-MODUS. Der PDU-Modus ist eine Methode zum Senden und Empfangen von Textnachrichten. Der Text der Textnachricht wird hexadezimal kodiert übertragen. Derzeit hat PDU den BLOCKMODUS ersetzt.

SMS ist eine von Etsi entwickelte Spezifikation (GSM 03.40 und GSM 03.38). Bei Verwendung der 7-Bit-Kodierung können bis zu 160 Zeichen gesendet werden. Bei der 8-Bit-Kodierung können jedoch bis zu 140 Zeichen gesendet werden, die normalerweise nicht direkt über das Mobiltelefon angezeigt werden können Bis zu 70 Zeichen. Wird zur Anzeige von Unicode-Textinformationen (UCS2) verwendet, die von den meisten Mobiltelefonen angezeigt werden können.

Was wir heute besprechen, ist der PDU-MODUS, UCS2-Kodierung, was bedeutet, dass Sie nur bis zu 70 Zeichen senden können, unabhängig von Englisch oder Chinesisch.
Angenommen, Sie möchten die folgende Nachricht senden: „Hallo“. Vor dem Senden müssen Sie die SMS-Center-Nummer kennen, in der sich die SIM-Karte des Mobiltelefons befindet. Zum Beispiel die SMS-Center-Nummer von China Mobile:

Empfangene Mobiltelefonnummer: 13638197275
Hangzhou SMS-Center-Nummer: 13800571500
SMS-Inhalt: Hallo
Um diese Textnachricht zu senden, führt das Telefon sie nach der Kodierung aus. Nach der Kodierung wird daraus die folgende Zeichenfolge:
0891683180501705F011000D91683136187972F5000800044F60597D
Wenn Sie es nicht verstehen, Bitte erläutern Sie diese Codierungszeichenfolge von Anfang bis Ende:
08 – bezieht sich auf die Länge der SMS-Center-Nummer, also die Länge von (91)+(683180501705F0) geteilt durch 2, also 08 = ( 2+14)/2
91 – bezieht sich auf den kurzen Nummerntyp des Nachrichtencenters. 91 bedeutet, dass TON/NPI dem International/E.164-Standard entspricht, was bedeutet, dass vor der Zahl ein „+“-Zeichen hinzugefügt werden muss. Es gibt jedoch andere Werte, aber 91 wird am häufigsten verwendet.
683180501705F0 - Nummer des SMS-Zentrums. Aufgrund einer geringfügigen Verarbeitung in der Position sollte die tatsächliche Zahl lauten: 8613800571500 (der Buchstabe F ist ein hinzugefügtes Zeichen, um die gerade Länge zu erreichen).
11 - Dateikopfbytes
00 - Nachrichtentyp (TP-Message-Reference)
0D - Länge der angerufenen Nummer
91 - Typ der angerufenen Nummer

ist tatsächlich tatsächlich Während der Verarbeitung Normalerweise codieren wir 11000D91 fest im Programm, da sich diese Daten in China nicht ändern.

683136187972F5 – Die angerufene Nummer wurde verschoben und die tatsächliche Nummer ist „8613638197275“.

Die oben genannten (00) + (0D) + (91) + (683136187972F5) bilden den zweiten Teil der Zieladresse (TP-Destination-Address) der gesamten Textnachricht.

Weiter...
00 – Protokollidentifikation TP-PID, hier ist im Allgemeinen 00
08 – Datenkodierungsschema TP-DCS (TP-Data-Coding-Scheme), unter Verwendung des zuvor erwähnten USC2 (16bit) Datenkodierung
00 – Gültigkeitszeitraum TP-VP (TP-Valid-Period)
04 – Länge TP-UDL (TP-User-Data-Length), die das Sechzehnfache der Informationslänge beträgt/ 2 Geben Sie 04
4F60597D ein. Hier ist der Inhalt der Textnachricht: „Hallo“

Basierend auf der obigen Situation können Sie das Programmskript für die Textnachrichtencodierung schreiben.

1. SMS-Center-Nummernverarbeitung:

1. Entfernen Sie das +-Zeichen von der SMS-Center-Nummer „+8613800571500“, um zu sehen, ob die Länge eine gerade Zahl ist. Wenn nicht, fügen Sie schließlich F
=> „8613800571500F“
2 hinzu.
=> „683108501705F0“
3. Fügen Sie das Zeichen 91 vor der SMS-Center-Nummer hinzu.
=> „91683108501705F0“
4 2. Formatieren Sie es in eine zweistellige Hexadezimalzeichenfolge, 16 / 2 => „08“
=> „0891683108501705F0“

2. Verarbeitung der Mobiltelefonnummer:

1. Entfernen Sie das +-Zeichen von der Mobiltelefonnummer +8613638197275 und prüfen Sie, ob die Länge eine gerade Zahl ist. Wenn nicht, fügen Sie am Ende F
=> „8613638197275F“ hinzu 2. Ändern Sie die Mobiltelefonnummer mit ungeraden Ziffern. Tauschen Sie sie mit geraden Ziffern aus.
=> „683136187972F5“

3. Kurze Nachrichtenverarbeitung:

1. „Hallo“ Der Unicode-Code ist 4F60597D

2. Teilen Sie die Länge durch 2 und behalten Sie zwei hexadezimale Ziffern bei, d . Kombination

1. Fügen Sie die Zeichenfolge 11000D91 vor der Mobiltelefonnummer hinzu (1100: fest, 0D: die Länge der Mobiltelefonnummer, ohne das +-Zeichen, ausgedrückt in Hexadezimalzahl, 91: senden Sie
an das Mobiltelefon als 91, an den kleinen Lingtong senden ist 81),
d. h. 11000D91 + 683136187972F5
=> 11000D91683136187972F5
2. Fügen Sie 000800 und den Inhalt der Textnachricht nach der Handynummer hinzu, notieren Sie einfach 000800
d. h. 11000D 91683136187972F5 + 000800 + 044F60597D
=> 11000D91683136187972F5000800044F60597D
3. Teilen Sie die gesamte Nachrichtenlänge durch 2 und formatieren Sie sie in eine 2- Ziffer Dezimalzahl
, das ist 11000D91683136187972 F5000800044F60597D => bit/2 => 19

5. Der zu sendende Inhalt ist also

AT+CMGF=0 Sendemodus PDU
OK
AT+CMGS=19
> 🎜>Zusammenfassung:

Das ist es. Der gesamte Inhalt des Artikels soll für das Studium aller hilfreich sein.

Verwandte Empfehlungen:

Die Idee, den E-Mail-Versand in PHP zu implementieren

PHP Ajax kein Aktualisierungsnachrichtensystem

PHP-Datei-Upload-Klasseninstanz

Das obige ist der detaillierte Inhalt vonPHP implementiert die Idee und konkrete Implementierung des Sendens von Textnachrichten über die serielle Schnittstelle. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
PHP und Python: Verschiedene Paradigmen erklärtPHP und Python: Verschiedene Paradigmen erklärtApr 18, 2025 am 12:26 AM

PHP ist hauptsächlich prozedurale Programmierung, unterstützt aber auch die objektorientierte Programmierung (OOP). Python unterstützt eine Vielzahl von Paradigmen, einschließlich OOP, funktionaler und prozeduraler Programmierung. PHP ist für die Webentwicklung geeignet, und Python eignet sich für eine Vielzahl von Anwendungen wie Datenanalyse und maschinelles Lernen.

PHP und Python: Ein tiefes Eintauchen in ihre GeschichtePHP und Python: Ein tiefes Eintauchen in ihre GeschichteApr 18, 2025 am 12:25 AM

PHP entstand 1994 und wurde von Rasmuslerdorf entwickelt. Es wurde ursprünglich verwendet, um Website-Besucher zu verfolgen und sich nach und nach zu einer serverseitigen Skriptsprache entwickelt und in der Webentwicklung häufig verwendet. Python wurde Ende der 1980er Jahre von Guidovan Rossum entwickelt und erstmals 1991 veröffentlicht. Es betont die Lesbarkeit und Einfachheit der Code und ist für wissenschaftliche Computer, Datenanalysen und andere Bereiche geeignet.

Wählen Sie zwischen PHP und Python: Ein LeitfadenWählen Sie zwischen PHP und Python: Ein LeitfadenApr 18, 2025 am 12:24 AM

PHP eignet sich für Webentwicklung und schnelles Prototyping, und Python eignet sich für Datenwissenschaft und maschinelles Lernen. 1.PHP wird für die dynamische Webentwicklung verwendet, mit einfacher Syntax und für schnelle Entwicklung geeignet. 2. Python hat eine kurze Syntax, ist für mehrere Felder geeignet und ein starkes Bibliotheksökosystem.

PHP und Frameworks: Modernisierung der SprachePHP und Frameworks: Modernisierung der SpracheApr 18, 2025 am 12:14 AM

PHP bleibt im Modernisierungsprozess wichtig, da es eine große Anzahl von Websites und Anwendungen unterstützt und sich den Entwicklungsbedürfnissen durch Frameworks anpasst. 1.PHP7 verbessert die Leistung und führt neue Funktionen ein. 2. Moderne Frameworks wie Laravel, Symfony und Codesigniter vereinfachen die Entwicklung und verbessern die Codequalität. 3.. Leistungsoptimierung und Best Practices verbessern die Anwendungseffizienz weiter.

Auswirkungen von PHP: Webentwicklung und darüber hinausAuswirkungen von PHP: Webentwicklung und darüber hinausApr 18, 2025 am 12:10 AM

PhPhas significantantyPactedWebDevelopmentAndendendsbeyondit.1) iTpowersMAjorPlatforms-LikewordpressandExcelsInDatabaseInteractions.2) php'SadaptabilityAllowStoscaleForLargeApplicationsfraMe-Linien-Linien-Linien-Linienkripte

Wie funktioniert der Php -Typ -Hinweis, einschließlich Skalartypen, Rückgabetypen, Gewerkschaftstypen und nullbaren Typen?Wie funktioniert der Php -Typ -Hinweis, einschließlich Skalartypen, Rückgabetypen, Gewerkschaftstypen und nullbaren Typen?Apr 17, 2025 am 12:25 AM

PHP -Typ -Eingabeaufforderungen zur Verbesserung der Codequalität und der Lesbarkeit. 1) Tipps zum Skalartyp: Da Php7.0 in den Funktionsparametern wie int, float usw. angegeben werden dürfen. 3) Eingabeaufforderung für Gewerkschaftstyp: Da Php8.0 in Funktionsparametern oder Rückgabetypen angegeben werden dürfen. 4) Nullierstyp Eingabeaufforderung: Ermöglicht die Einbeziehung von Nullwerten und Handlungsfunktionen, die Nullwerte zurückgeben können.

Wie handelt es sich bei PHP -Objektklonen (Klonschlüsselwort) und der __clone Magic -Methode?Wie handelt es sich bei PHP -Objektklonen (Klonschlüsselwort) und der __clone Magic -Methode?Apr 17, 2025 am 12:24 AM

Verwenden Sie in PHP das Klonschlüsselwort, um eine Kopie des Objekts zu erstellen und das Klonierungsverhalten über die \ _ \ _ Clone Magic -Methode anzupassen. 1. Verwenden Sie das Klonschlüsselwort, um eine flache Kopie zu erstellen und die Eigenschaften des Objekts, nicht die Eigenschaften des Objekts zu klonen. 2. Die \ _ \ _ Klonmethode kann verschachtelte Objekte tief kopieren, um flache Kopierprobleme zu vermeiden. 3. achten Sie darauf, dass kreisförmige Referenzen und Leistungsprobleme beim Klonen vermieden werden, und optimieren Sie die Klonierungsvorgänge, um die Effizienz zu verbessern.

PHP vs. Python: Anwendungsfälle und AnwendungenPHP vs. Python: Anwendungsfälle und AnwendungenApr 17, 2025 am 12:23 AM

PHP eignet sich für Webentwicklungs- und Content -Management -Systeme, und Python eignet sich für Datenwissenschafts-, maschinelles Lernen- und Automatisierungsskripte. 1.PHP hat eine gute Leistung beim Erstellen von schnellen und skalierbaren Websites und Anwendungen und wird üblicherweise in CMS wie WordPress verwendet. 2. Python hat sich in den Bereichen Datenwissenschaft und maschinelles Lernen mit reichen Bibliotheken wie Numpy und TensorFlow übertrifft.

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Crossplay haben?
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

VSCode Windows 64-Bit-Download

VSCode Windows 64-Bit-Download

Ein kostenloser und leistungsstarker IDE-Editor von Microsoft

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

MinGW – Minimalistisches GNU für Windows

MinGW – Minimalistisches GNU für Windows

Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

WebStorm-Mac-Version

WebStorm-Mac-Version

Nützliche JavaScript-Entwicklungstools

SublimeText3 Linux neue Version

SublimeText3 Linux neue Version

SublimeText3 Linux neueste Version