Einführung
Spryng liefert eine HTTP POST-Anforderung an ein Skript auf Ihrem Server, sobald eine mobil entstandene Nachricht eintritfft. Sie müssen ein Skript einrichten, dass die HTTP POST Daten verarbeiten kann, um Anforderungen zu empfangen.
Die HTTP-Anfrage von Spryng muss von Ihrem Server im HTTP Antwort-Body mit dem Statuscode 200 beantwortet werden, was bedeutet, dass die Nachricht erfolgreich von Ihrem System akzeptiert wurde. Wenn entweder der HTTP-Server nicht erreicht werden kann, wenn er z.B.
500 internal server error angibt, geht Spryng davon aus, dass die Nachricht nicht erfolgreich von Ihrem System akzeptiert wurde und der Request wird dann einmal pro Minute wiederholt. Die Nachricht wird nicht für immer wiederholt werden, die aktuelle Einstellung beträgt 24 Stunden.
Nachrichten über Spryng empfangen
Beispiele für ein PHP skript
class MOGateway { $log = "MO RECEIVED. REQUEST: " . "Originator MSISDN: " . $_POST['MSISDN'] . "First word (keyword) " . $_POST['KEYWORD'] . "Message content: " . $_POST['PARM'] . "Receiver's operator: " . $_POST['OPERATOR'] . "Received at: " . $_POST['TIMESTAMP'] . "Shortcode: " . $_POST['SHORTCODE'] . "Country code: " . $_POST['COUNTRY']; $db->query('UPDATE texts SET received = 1 WHERE msisdn = :msisdn;', array('msisdn' => $_POST['MSISDN'])); echo 'TRUE'; } }
Parameter
Parameter | |
MSISDN | Die Ursprungstelefonnummer der Antwort |
KEYWORD | Das Keyword, mit dem der Text der Kurznachricht beginnt |
PARM | Der gesamte Text nach dem KEYWORD |
OPERATOR | Netzwerk-Code von MSISDN |
TIMESTAMP | Zeit zu der Nachricht empfangen wurde von SMSC oder System |
SHORTCODE | Der Shortcode/Kurzwahlnummer, an den/die die Antwort gesendet wurde |
COUNTRY | Der dreistellige Länder Code (ISO 3166-1 alpha-3) |
MSISDN
Die ursprüngliche Telefonnummer der Antwort.
Typ | MSISDN-numerisch (internationales Format ohne vorangehendes „oo“ oder „+“) | |
Min Länge | 1 MSISDN | |
Max Länge | 1 MSISDN | |
Min Wert | <na> | |
Max Wert | <na> | |
Werte | <na> | |
Ausgangswert | <none> | |
|
MSISDN=491123456789 |
KEYWORD
Das Kennwort mit dem der Text der Nachricht beginnt. Zeichen werden urlencoded.
Typ | Alphanumerisch |
Min Länge | 2 |
Max Länge | 15 |
Min Wert | <na> |
Max Wert | <na> |
Werte | <na> |
Ausgangswert | <none> |
Beispiele | KEYWORD=WIN |
PARM
Der gesamte Text nach dem KEYWORD. Zeichen werden urlencoded.
Typ | Alphanumerisch |
Min Länge | <na> |
Max Länge | <na> |
Min Wert | <na> |
Max Wert | <na> |
Werte | <na> |
Ausgangswert | <none> |
Beispiele | PARM=ON |
OPERATOR
Netzwerk Code von MSISDN. Netzwerk Codes für andere Länder können auf der folgenden Website gefunden werden: http://www.mcc-mnc.com.
Typ | Numerisch |
Min Länge | 5 |
Max Länge | 5 |
Min Wert | <na> |
Max Wert | <na> |
Werte | See appendix B |
Ausgangswert | OPERATOR=26201 |
Beispiele | MSISDN=491123456789 |
TIMESTAMP
Zeit, zu der die Nachricht per SMSC empfangen wurde, oder, wenn nicht zugestellt; Zeit, zu der sie in unserem System eingetroffen ist. Siehe Appendix A for Field Types.
Typ | Zeit |
Min Länge | 14 |
Max Länge | 14 |
Min Wert | <na> |
Max Wert | <na> |
Werte | <na> |
Ausgangswert | <none> |
Beispiel | TIMESTAMP=20040208152544 |
SHORTCODE
Die Kurzwahlnummer, an die die Antwort gesendet wurde.
Typ | Numerisch (nationales Format) |
Min Länge | <na> |
Max Länge | <na> |
Min Wert | <na> |
Max Wert | <na> |
Werte | <na> |
Ausgangswert | <none> |
Beispiele | SHORTCODE=4414 |
REFERENZ
Eine optionale einmalige Referenz für Ihre Nachricht.
Typ |
Alphanumeric (ISO 3166-1 alpha-3)
|
|
Min Länge | 0 | |
Max Länge | 100 | |
Werte |
|
|
Beispiele |
REFERENCE=MARKETING_1
|
COUNTRY
Der dreistellige Ländercode ISO 3166-1 alpha-3. Eine Liste der derzeitigen offiziell zugewiesenen ISO 3166-1 alpha-3 Codes kann hier gefunden werden: https://de.wikipedia.org/wiki/ISO-3166-1-Kodierliste
Typ | Alphanumerisch (ISO 3166-1 alpha-3) |
Min Länge | 3 |
Max Länge | 3 |
Min Wert | ABW |
Max Wert | ZWE |
Werte | ISO 3166-1 alpha-3 |
Ausgangswert | <none> |
Beispiele | COUNTRY=DEU |
Field types
Typ | Werte |
Numeric | characters 0 to 9 |
Alphanumeric | character from ISO-8859-1 |
MSISDN-numeric | characters 0 to 9, first character might be a ‚+‘ sign |
Time | time as YYYYMMDDHHMMSS |
Netzwerk Codes
Im Folgenden die derzeitige Liste der Netzwerk Codes, genutzt im OPERATOR Parameter
Anbieter | Netzwerk Code |
Belgien | |
Proximus | 20601 |
Mobistar | 20610 |
Base | 20620 |
Frankreich | |
Bouygues Telecom | 20820 |
Orange | 20801 |
SFR | 20810 |
Deutschland | |
T-Mobile | 26201 |
E-Plus | 26203 |
Mobilcom | 26213 |
O2 | 26207 |
Vodafone | 26202 |
Spanien | |
Orange | 21403 |
Telefonica | 21407 |
Vodafone | 21401 |
Niederlande | |
KPN Mobile | 20408 |
Vodafone | 20404 |
T-Mobile | 20416 |
Telfort | 20412 |
Orange | 20420 |
Tele2 | 20402 |
Turkey | |
Avea | 28604 |
Vodafone | 28602 |
Turkcell | 28601 |
Vereinigtes Königreich |
|
3 | 23420 |
O2 | 23410 |
Orange | 23433 |
T-Mobile | 23430 |
Vodafone | 23415 |
Einführung
Spryng liefert eine HTTP POST-Anforderung an ein Skript auf Ihrem Server, sobald eine mobil entstandene Nachricht eintritfft. Sie müssen ein Skript einrichten, dass die HTTP POST Daten verarbeiten kann, um Anforderungen zu empfangen.
Die HTTP-Anfrage von Spryng muss von Ihrem Server im HTTP Antwort-Body mit dem Statuscode 200 beantwortet werden, was bedeutet, dass die Nachricht erfolgreich von Ihrem System akzeptiert wurde. Wenn entweder der HTTP-Server nicht erreicht werden kann, wenn er z.B.
500 internal server error angibt, geht Spryng davon aus, dass die Nachricht nicht erfolgreich von Ihrem System akzeptiert wurde und der Request wird dann einmal pro Minute wiederholt. Die Nachricht wird nicht für immer wiederholt werden, die aktuelle Einstellung beträgt 24 Stunden.
Berichte von Spryng empfangen
Beispiel eines C# Skripts
using SpryngApiMoGateway.Models; namespace SpryngApiMoGateway.Controllers { public class SpryngController : Controller { [HttpGet] [Route("api/spryng/mo-gateway-webhook")] public ActionResult Index(MoGatewayResponseModel model) { // ASP.Net doesn't properly serialize the timestamp. Serialize it manually. model.Timestamp = DateTime.ParseExact(Request.QueryString["TIMESTAMP"], "yyyyMMddHHmmss", CultureInfo.InvariantCulture); return Json(model, JsonRequestBehavior.AllowGet); } } }
Parameter
Parameter | |
MSISDN | Die Ursprungstelefonnummer der Antwort |
KEYWORD | Das Keyword, mit dem der Text der Kurznachricht beginnt |
PARM | Der gesamte Text nach dem KEYWORD |
OPERATOR | Netzwerk-Code von MSISDN |
TIMESTAMP | Zeit zu der Nachricht empfangen wurde von SMSC oder System |
SHORTCODE | Der Shortcode/Kurzwahlnummer, an den/die die Antwort gesendet wurde |
COUNTRY | Der dreistellige Länder Code (ISO 3166-1 alpha-3) |
MSISDN
Die ursprüngliche Telefonnummer der Antwort.
Typ | MSISDN-numerisch (internationales Format ohne “00” or “+”) |
Min Länge | 1 MSISDN |
Max Länge | 1 MSISDN |
Min Wert | <na> |
Max Wert | <na> |
Werte | <na> |
Ausgangswert | <none> |
Beispiele | MSISDN=491123456789 |
KEYWORD
Das Kennwort mit dem der Text der Nachricht beginnt. Zeichen werden urlencoded.
Typ | Alphanumerisch |
Min Länge | 2 |
Max Länge | 15 |
Min Wert | <na> |
Max Wert | <na> |
Werte | <na> |
Ausgangswert | <none> |
Beispiel | KEYWORD=WIN |
PARM
Der gesamte Text nach dem KEYWORD. Zeichen werden urlencoded.
Typ | Alphanumerisch |
Min Länge | <na> |
Max Länge | <na> |
Min Wert | <na> |
Max Wert | <na> |
Werte | <na> |
Ausgangswerte | <none> |
Beispiel | PARM=ON |
OPERATOR
Netzwerk Code von MSISDN. Netzwerk Codes für andere Länder können auf der folgenden Website gefunden werden: http://www.mcc-mnc.com.
Typ | Numerisch |
Min Länge | 5 |
Max Länge | 5 |
Min Wert | <na> |
Max Wert | <na> |
Werte | See appendix B |
Ausgangswert | OPERATOR=26201 |
Beispiel | MSISDN=491123456789 |
TIMESTAMP
Zeit, zu der die Nachricht per SMSC empfangen wurde, oder, wenn nicht zugestellt; Zeit, zu der sie in unserem System eingetroffen ist. Siehe Appendix A für Feldtypen.
Typ | Zeit |
Min Länge | 14 |
Max Länge | 14 |
Min Wert | <na> |
Max Wert | <na> |
Werte | <na> |
Ausgangswert | <none> |
Beispiel | ZEITSTEMPEL=20040208152544 |
SHORTCODE
Die Kurzwahlnummer, an die die Antwort gesendet wurde.
Typ | Numerisch (nationales Format) |
Min Länge | <na> |
Max Länge | <na> |
Min Wert | <na> |
Max Wert | <na> |
Werte | <na> |
Ausgangswert | <none> |
Beispiel | KURZWAHLNUMMER=4414 |
REFERENZ
Eine optionale einmalige Referenz für Ihre Nachricht.
Typ |
Alphanumeric (ISO 3166-1 alpha-3)
|
|
Min Länge | 0 | |
Max Länge | 100 | |
Werte |
|
|
Beispiele |
REFERENCE=MARKETING_1
|
COUNTRY
Der dreistellige Ländercode ISO 3166-1 alpha-3. Eine Liste der derzeitigen offiziell zugewiesenen ISO 3166-1 alpha-3 Codes kann hier gefunden werden: https://de.wikipedia.org/wiki/ISO-3166-1-Kodierliste
Typ | Alphanumerisch (ISO 3166-1 alpha-3) |
Min Länge | 3 |
Max Länge | 3 |
Min Wert | ABW |
Max Wert | ZWE |
Werte | ISO 3166-1 alpha-3 |
Ausgangswert | <none> |
Beispiel | COUNTRY=DEU |
Field types
Typ | Werte |
Numeric | Charaktere von 0 bis 9 |
Alphanumeric | Charaktere von ISO-8859-1 |
MSISDN-numeric | Charaktere 0 bis 9, erster Charakter kann ein ‚+‘ Zeichen sein |
Time | Zeit als YYYYMMDDHHMMSS |
Netzwerk Codes
Nachstehend die Liste von Netzwerkcodes, genutzt im OPERATOR Parameter.
Anbieter | Netzwerkcodes |
Belgien | |
Proximus | 20601 |
Mobistar | 20610 |
Base | 20620 |
Frankreich | |
Bouygues Telecom | 20820 |
Orange | 20801 |
SFR | 20810 |
Deutschland | |
T-Mobile | 26201 |
E-Plus | 26203 |
Mobilcom | 26213 |
O2 | 26207 |
Vodafone | 26202 |
Spanisch | |
Orange | 21403 |
Telefonica | 21407 |
Vodafone | 21401 |
Niederlande | |
KPN Mobile | 20408 |
Vodafone | 20404 |
T-Mobile | 20416 |
Telfort | 20412 |
Orange | 20420 |
Tele2 | 20402 |
Turkey | |
Avea | 28604 |
Vodafone | 28602 |
Turkcell | 28601 |
Vereinigtes Königreich |
|
3 | 23420 |
O2 | 23410 |
Orange | 23433 |
T-Mobile | 23430 |
Vodafone | 23415 |