HTTP-API - 'sendmessage'-Aktion
Dieser HTTP-API-Befehl kann verwendet werden, um eine SMS-Nachricht über das SMS-Gateway zu senden. Der Befehl kann zum Senden von Text-SMS-Nachrichten oder anderen Nachrichtentypen verwendet werden, wie z.B. binäre SMS-Nachrichten, Operator-Logos, Klingeltöne, WAP-PUSH usw. Wenn Sie diesen Befehl verwenden, müssen Sie einen HTTP-API-Benutzernamen und ein Passwort verwenden, Sie müssen die Telefonnummer des Empfängers und den Nachrichtentext angeben.
Beschreibung
Um eine SMS zu senden, verwenden Sie das folgende URL-Format:
https://127.0.0.1:9508/api?action=sendmessage&username=UUUUU&password=PPPPP&
recipient=NNNNN&messagetype=MMMMM&messagedata=DDDDD
127.0.0.1 ist eine lokale IP, daher ersetzen Sie diese bitte durch die IP-Adresse oder den Hostnamen des Computers
mit dem installierten Ozeki SMS Gateway. (Hinweis: 127.0.0.1 ist eine lokale
Loopback-Adresse, die verwendet werden kann, wenn Sie vom selben Computer aus auf das SMS Gateway
verbinden.) 9508 ist der Standardport der HTTP-API des Ozeki SMS Gateways. Diese Portnummer kann in der Benutzeroberfläche des Ozeki 10 SMS Gateways angezeigt und bearbeitet werden, indem Sie auf die Schaltfläche "Erweitert" in der Symbolleiste klicken.
"UUUUU" und "PPPPP" sollten durch den Benutzernamen und das Passwort des
Benutzers ersetzt werden, den Sie im SMS Gateway erstellt haben.
Ersetzen Sie "NNNNN" durch die Telefonnummer, an die Sie die SMS senden möchten.
Sie können das lokale Telefonnummernformat sowie internationale Telefonnummernformate verwenden (Telefonnummern, die nach dem internationalen Nummernformat formatiert sind, beginnen immer mit einem '+' Zeichen). Wenn das internationale Telefonnummernformat verwendet wird,
beachten Sie, dass Sie '%2B' für das '+' Zeichen ersetzen müssen, aufgrund der URL-Kodierungsregeln.
Ersetzen Sie "MMMMM" durch den Nachrichtentyp. Der Nachrichtentyp "SMS:TEXT" sollte für Textnachrichten verwendet werden.
Die Nachrichtendaten enthalten die Nachricht, die Sie senden möchten. Setzen Sie die Nachrichtendaten anstelle von "DDDDD". Die Nachrichtendaten sollten
UTF-8-Zeichen verwenden und sollten
URL-kodiert sein.
Weitere Parameter können ebenfalls zur Anfrage hinzugefügt werden.
Eine vollständige Liste der verfügbaren Parameter finden Sie in der Tabelle 'Anfrageparameter' unten:
Beispiel-URL-Anfrage
https://127.0.0.1:9508/api?action=sendmessage&username=admin&password=abc123&
recipient=06203105366&messagetype=SMS:TEXT&messagedata=Hello+World
Beispielantwort
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: 246 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE smsapi PUBLIC "-//OZEKI//DTD XML 1.0//EN" "http://www.ozekisms.com/DTD/smsapi.xml"> <response> <action>sendmessage</action> <data> <acceptreport> <statuscode>0</statuscode> <statusmessage>Nachricht zur Zustellung angenommen</statusmessage> <messageid>ERFAV23D</messageid> <recipient>06203105366</recipient> </acceptreport> </data> </response>HTTP-Anfrageparameter
Parameter | Beschreibung | Mögliche Werte | Beispiel | M/O* |
action | Gibt den HTTP-API-Befehl an | sendmessage | action=sendmessage | M |
username | Gibt den Benutzernamen an. Die Parameter username und password werden zur Authentifizierung des Benutzers verwendet. Wenn Sie eine Nachricht senden, wird sie im Namen des authentifizierten Benutzers versendet. Der Wert muss URL-codiert sein. | Zeichenkette, maximale Länge beträgt 16 Zeichen | username=admin | M |
password | Gibt das Passwort an. Die Parameter username und password werden zur Authentifizierung des Benutzers verwendet. Wenn Sie eine Nachricht senden, wird sie im Namen des authentifizierten Benutzers versendet. Der Wert muss URL-codiert sein. | Zeichenkette, maximale Länge beträgt 16 Zeichen | password=abc123 | M |
originator | Gibt die Absenderadresse an. Diese Information wird auf dem Mobiltelefon angezeigt, das die Nachricht empfängt. Dies ist die Absenderadresse. Dies kann eine Telefonnummer, eine Kurzwahl oder eine alphanumerische Absenderadresse sein. Die Telefonnummer kann im lokalen Nummernformat (z.B. 06201234567) oder im internationalen Nummernformat (z.B. +36201234567) angegeben werden. Wenn Sie eine alphanumerische Absenderadresse verwenden (z.B. ozeki), müssen die Zeichen in UTF8 codiert sein und der Wert muss URL-codiert sein. | Zeichenkette, maximale Länge beträgt 16 Zeichen | originator=%2B36201112222 | O |
recipient | Gibt die Empfängertelefonnummer an.
Die Nachricht wird an diese Telefonnummer gesendet. Die Telefonnummer
kann im lokalen Nummernformat (z.B. 06201234567) oder im
internationalen Nummernformat (z.B. +36201234567) angegeben werden. Mehrere Empfängeradressen können durch einen Doppelpunkt (z.B.: +36201234567,+36202222222) oder ein Semikolon getrennt werden. Der Wert muss URL-codiert sein. |
Zeichenkette, maximale Länge beträgt 16 Zeichen | recipient=%2B36201234567 | M |
messagetype | Gibt den Nachrichtentyp an.
Der Typ der SMS-Nachrichtendaten basiert auf der
Mobile Message Type Specification.
Für Textnachrichten werden die Nachrichtendaten als Klartext angegeben, für andere Nachrichtentypen
als XML-Dokument.
|
SMS:TEXT SMS:WAPPUSH ... Mögliche Werte finden Sie in der Mobile Message Type Specification |
messagetype=SMS:TEXT | O |
messagedata | Gibt den Text oder die Daten der SMS-Nachricht an. Der Wert muss in UTF8 codiert und URL-codiert sein. | Zeichenkette, maximale Länge beträgt 32768 Zeichen | messagedata=Hello+World | M |
_charset_ | Gibt den Zeichensatz der codierten Daten an (falls nicht angegeben, wird utf-8
angenommen).
Neuere Browser sollten den Wert von _charset_ automatisch setzen. Wenn Ihr
Browser diese Funktion nicht unterstützt, können Sie ihn manuell auf folgende Werte setzen: |
utf-8 windows-1250 iso-8859-1 iso-8859-2 ... (Unterstützte Zeichensatzwerte) |
_charset_=iso-8859-2 | O |
serviceprovider | Gibt den Namen der GSM-Modem- oder IP-SMS-Serviceprovider-Verbindung an,
die zum Senden der Nachricht verwendet werden soll.
Weitere Informationen zur Auswahl der Serviceprovider-Verbindung finden Sie in
dem HTTP SMS API - SMS Routing
Guide.
Der Wert muss mit der Zeichenkette übereinstimmen, die im Konfigurationsformular der Serviceprovider-Verbindung angegeben ist. |
Zeichenkette, maximale Länge beträgt 16 Zeichen | serviceprovider=Vodafone | O |
sendondate | Gibt das Datum und die Uhrzeit an, zu der die Nachricht gesendet werden soll.
Der Wert muss das folgende Datumsformat verwenden: YYYY-MM-DD hh:mm:ss. Der Wert muss URL-codiert sein. |
Datumswert im Format YYYY-MM-DD hh:mm:ss | sendondate=2018-12-12+10%3A07%3A05 | O |
responseformat | Nachdem das Gateway die SMS-Nachricht übermittelt hat, gibt das Gateway eine Webseite zurück, die anzeigt, dass die Nachricht erfolgreich übermittelt wurde. Der Inhalt der Webseite wird gemäß dem responseformat-Parameter formatiert. Sie können eine HTML-Textantwort erhalten, um sie für Menschen leicht lesbar zu machen, oder Sie können ein XML-Format erhalten, um die Verarbeitung der Antwort durch Software zu erleichtern. |
xml (Standard) html urlencoded |
responseformat=xml | O |
continueurl | Nachdem das Gateway die SMS-Nachricht übermittelt hat, gibt das Gateway eine
Webseite zurück, die anzeigt, dass die Nachricht erfolgreich übermittelt wurde. Der
Inhalt
der Webseite wird gemäß dem responseformat-Parameter formatiert. Wenn der responseformat-Parameter auf html gesetzt ist, kann die Webseite
einen "Weiter"-Link enthalten. Wenn Sie die URL in diesem Parameter angeben,
wird der Weiter-Link angezeigt und er verweist auf die angegebene
URL. Der Wert der URL muss URL-codiert sein.
Die von Ihnen angegebene URL kann Schlüsselwörter enthalten, die durch Statusinformationen ersetzt werden, die der übermittelten Nachricht entsprechen. Weitere Informationen zu möglichen Schlüsselwörtern finden Sie im "Submit URL Keywords"-Guide. |
Zeichenkette, maximale Länge beträgt 1024 Zeichen | continueurl=192.168.1.23 oder continueurl=http%3A%2F%2Fwww.ozekisms. com%2Findex.php%3Fowpn%3D159 Hinweis: Das zweite Beispiel enthält eine URL-codierte URL. |
O |
redirecturl | Nachdem das Gateway die SMS-Nachricht übermittelt hat, gibt das Gateway standardmäßig eine
Webseite zurück, die anzeigt, dass die Nachricht erfolgreich übermittelt wurde. Optional können Sie das Gateway anweisen, den Browser automatisch
auf eine von Ihnen angegebene URL umzuleiten. Wenn Sie eine URL im
redirect-Parameter angeben, enthält die HTTP-Antwort, die vom
SMS-Gateway zurückgegeben wird, eine Umleitungs-URL im HTTP-Header. Dies
weist den Webbrowser an, dem von Ihnen angegebenen Link zu folgen. Der
Wert der URL muss
URL-codiert sein.
Die von Ihnen angegebene URL kann Schlüsselwörter enthalten, die durch Statusinformationen ersetzt werden, die der übermittelten Nachricht entsprechen. Weitere Informationen zu möglichen Schlüsselwörtern finden Sie im "Submit URL Keywords"-Guide. |
Zeichenkette, maximale Länge beträgt 1024 Zeichen | redirecturl=192.168.1.23 oder redirecturl=http%3A%2F%2F192.168.1.23 %2Findex.php%3Fowpn%3D159 Hinweis: Das zweite Beispiel enthält eine URL-codierte URL. |
O |
reporturl | Sie können eine Webseite einrichten, um Informationen über "an Netzwerk übermittelt" und "an Handgerät übermittelt"-Ereignisse zu verarbeiten. Wenn Sie
eine URL im reporturl-Parameter angeben, wird Ihre Webseite aufgerufen, wenn diese Ereignisse eintreten. Der Wert der URL, die Sie im
reporturl-Parameter angeben, muss
URL-codiert sein.
Die von Ihnen angegebene URL kann Schlüsselwörter enthalten, die durch Statusinformationen ersetzt werden, die der übermittelten Nachricht entsprechen. Ein gutes Beispiel für die Verwendung der Report-URL-Option finden Sie in dem Guide zum Senden einer geplanten SMS und zur Verwendung der reporturl-Funktionalität. |
Zeichenkette, maximale Länge beträgt 1024 Zeichen | reporturl=http%3A%2F%2Fwww.ozekisms. com%2Fproc.php%3Freporttype%3D%24reporttype %26messageid%3D%24messageid Hinweis: Dies ist die URL-codierte Version der folgenden URL. Bevor diese URL vom SMS-Gateway aufgerufen wird, werden die Parameter $reporttype und $messageid durch die entsprechenden Werte ersetzt: http://192.168.1.23/proc.php?reporttype=$reporttype& messageid=$messageid wird aufgerufen als: http://192.168.1.23/proc.php?reporttype=deliveredtonetwork& messageid=ERFAV23D Die Liste der Schlüsselwörter, die Sie in der reporturl verwenden können: $reporttype $messageid $statuscode $statusmessage $fromstation $fromconnection $fromaddress $tostation $toconnection $toaddress $text $createdate $submitdate $receiveddate |
O |
messagecount | Gibt die genaue Anzahl der Nachrichten an, die Sie senden möchten. Wenn gesetzt, ist eine Indizierung für die Parameter 'recipient', 'messagetype' und 'messagedata' erforderlich. Das detaillierte 'messagecount'-Tutorial finden Sie hier. | Zahl (Standardwert: 1) |
messagecount=6 | O |
maxresponse | Diese Zahl gibt das Maximum der Nachrichten an, über die Sie Feedback erhalten. Wenn Sie diese Zahl überschreiten, werden Ihre Nachrichten gesendet, aber Sie erhalten kein Feedback darüber. Standardmäßig ist dieser Parameter auf 500 Nachrichten eingestellt. | Zahl | maxresponse=1000 | O |
vp | Gibt die Gültigkeitsdauer für Ihre Nachricht an.
Der Wert muss das folgende Datumsformat verwenden: YYYY.MM.DD hh:mm:ss. Der Wert muss URL-codiert sein. Lesen Sie dieses Tutorial für weitere Informationen. |
Datumswert im Format YYYY.MM.DD hh:mm:ss | vp=2019.01.28.+10%3A07%3A05 | O |
* M = Pflichtparameter, O = Optionaler Parameter
Antwortparameter
(XML-Antwortformat)
Parameter | Beschreibung | Mögliche Werte | Beispiel |
acceptreport | Enthält die Antwort auf die Sendeanfrage für eine einzelne Empfängeradresse. Wenn mehrere Empfänger angegeben wurden, wird für jeden Empfänger ein acceptreport in der Antwort enthalten sein. Die Reihenfolge der acceptreports entspricht der Reihenfolge der Empfängeradressen. | <acceptreport> <statuscode>0</statuscode> <statusmessage>Nachricht angenommen für Zustellung</statusmessage> <messageid>ERFAV23D</messageid> <recipient>06203105366</recipient> </acceptreport> |
|
acceptreport.statuscode | Enthält einen ganzzahligen Wert, der Erfolg oder Fehler anzeigt. Wenn der Wert 0 ist, bedeutet dies, dass die Nachricht für die Zustellung angenommen wurde. Wenn der Wert größer als 0 ist, bedeutet dies, dass ein Fehler aufgetreten ist und die Nachricht nicht für die Zustellung angenommen wurde. | Ganzzahliger Wert, größer oder gleich 0. Kleiner als 32768. | <statuscode>0</statuscode> |
acceptreport.statusmessage | Enthält eine textuelle Darstellung des Statuscodes. Wenn die Nachricht angenommen wurde, lautet der Wert "Nachricht für Zustellung angenommen". Wenn die Nachricht nicht für die Zustellung angenommen wurde, finden Sie die Fehlermeldung in diesem Feld. | Zeichenkette, maximale Länge beträgt 1024 Zeichen | <statusmessage>Nachricht für Zustellung angenommen</statusmessage> |
acceptreport.messageid | Enthält eine Nachrichtenreferenz, die zur Nachverfolgung der Nachricht im SMS-Gateway verwendet werden kann. Diese Nachrichtenreferenz wird auch verwendet, um Berichte über die Zustellung an das Netzwerk oder das Endgerät zu identifizieren oder um Informationen über die Nachricht abzufragen. | Zeichenkette, maximale Länge beträgt 16 Zeichen | <messageid>ERFAV23D</messageid> |
acceptreport.recipient | Enthält die Empfängeradresse. | Zeichenkette, maximale Länge beträgt 16 Zeichen | <recipient>06203105366</recipient> |
Zusammenfassung
Dieser Artikel handelte von der HTTP-API-Aktion 'sendmessage'. Mit dieser Aktion können Sie Text-SMS-Nachrichten und viele andere Nachrichtentypen an beliebige Empfänger über das Ozeki SMS-Gateway senden. Sie haben Beispielantworten und einige weitere HTTP-Anfragen mit Beschreibung, möglichen Werten und Beispielen gesehen.
Wenn Sie mehr über den Lieferstatus Ihrer Nachrichten erfahren möchten, klicken Sie auf die Seite über SMS-Lieferstatus. Wenn Sie eine URL-Vorlage erhalten möchten, besuchen Sie die entsprechende Seite.
Wenn Sie diese Lösung in realen Situationen verwenden möchten, laden Sie das Ozeki SMS-Gateway herunter und beginnen Sie jetzt mit der Nutzung!
More information