SMS

Was ist ein SMSC?

Ein SMSC ist ein Netzwerkdienst, der Textnachrichten speichert und zur Zustellung weiterleitet.

Eine Textnachricht kann nach erneuter Verbindung eines Telefons ankommen, obwohl der Absender sie bereits früher abgeschickt hat.

Was bedeutet Store and Forward?

Das Nachrichtenzentrum speichert eine Textnachricht, bevor es versucht, sie an das Telefon zuzustellen.

Die Annahme durch das Netzwerk bestätigt nicht, dass das Telefon die Nachricht empfangen hat. Ein ausgeschaltetes oder nicht erreichbares Telefon kann dazu führen, dass eine Nachricht wartet. Sobald das Telefon sich wieder verbindet, wird ein erneuter Zustellversuch möglich. Die Nachricht muss für diesen Versuch weiterhin gültig sein.

Die 3GPP-Spezifikation 23.040 beschreibt die Rolle des Nachrichtenzentrums in SMS.

Wie lange kann eine Nachricht warten?

Das Netzwerk kann weitere Zustellversuche unternehmen, solange das Zustellfenster der Nachricht offen ist. Dieses Fenster wird als Gültigkeitsdauer bezeichnet.

Der SMS-Standard ermöglicht es Absendern, eine Gültigkeitsdauer anzugeben. Ihr Anbieter entscheidet, ob Sie diese über seine API setzen können.

Die Zustellung kann mit einem Ablauf enden, wenn dieses Fenster sich schließt. Ein Ablaufbericht bedeutet nicht, dass die ursprüngliche Sendeanfrage fehlgeschlagen ist.

Bei einem zeitkritischen Ablauf muss Ihre Anwendung ihre eigene Frist durchsetzen. Wenn ein Bestätigungscode zehn Minuten gültig ist und erst nach vier Stunden ankommt, muss Ihr Server ihn ablehnen. Eine verspätete Textnachricht darf die Gültigkeit der Aktion, die sie beschreibt, nicht verlängern.

Wo befindet sich das Nachrichtenzentrum in Bezug auf meine Anwendung?

Ihre Anwendung kann ein Nachrichtenzentrum über einen Messaging-Anbieter erreichen, anstatt die Carrierverbindung selbst zu verwalten.

Anbieter verwenden SMPP, um Textnachrichten an Nachrichtenzentren zu übergeben, direkt oder über andere Routing-Dienste. Die SMPP-Referenz beschreibt diese Verbindungen.

Ihr Anbieter kann eine Anfrage bestätigen, bevor der nächste Netzwerkdienst sie annimmt. Das Nachrichtenzentrum kann dann die Nachricht annehmen, bevor das Telefon sie empfängt. Jede Bestätigung beschreibt eine Station auf dem Weg.

Angenommen, aber nicht zugestellt erklärt, wie diese Stationen in einer Anwendung erscheinen.

Was kann ich über Bird beobachten?

Sie können die Übergabe an den Carrier und die gemeldete Zustellung einsehen, ohne sich selbst mit einem Nachrichtenzentrum zu verbinden.

Das Feld sent_at in der Nachrichtenantwort erfasst, wann Bird die Nachricht an den Carrier übergibt. delivered_at erfasst die bestätigte Zustellung. Beide Felder enthalten einen Zeitstempel oder null. Eine fehlende Zustellzeit bedeutet nicht, dass das Telefon die Nachricht abgelehnt hat.

Der Sende-Endpunkt von Bird lehnt validity_period mit HTTP 422 SMSUnsupportedFeature ab. Sie können das Aufbewahrungsfenster des Carriers über dieses Feld nicht setzen. Die Antwort gibt dieses Feld nicht zurück.

Bird gibt sms.expired aus, wenn der Carrier einen Ablauf meldet. Eine gepufferte Empfangsbestätigung, bei der der Carrier die Nachricht hält, erzeugt keine öffentliche Statusänderung. Zustellbestätigungen erklärt, welche Netzwerkmeldungen Ihre Anwendung erreichen.

Was ändert das in einem Sende-Workflow?

Ihre Anwendung muss die Zustellung als späteres Ereignis behandeln, dessen Ergebnis unabhängig vom Absenden ist.

Unterscheiden Sie ein ausstehendes Ergebnis klar von einem Fehler. Setzen Sie in Ihrer Anwendung Fristen für Bestätigungscodes und andere zeitkritische Aktionen durch. Verwenden Sie eine Zustellbestätigung als Zustellbericht des Netzwerks. Sie beweist nicht, dass jemand die Nachricht gelesen hat.

Kurz gesagt

  1. Annahme und Zustellung sind getrennt.

    Ein Nachrichtenzentrum kann eine Textnachricht annehmen, bevor das Telefon des Empfängers erreichbar ist.

  2. Speicherung ermöglicht einen weiteren Zustellversuch.

    Eine wartende Textnachricht kann zugestellt werden, nachdem sich das Telefon wieder verbindet, sofern das Zustellfenster noch offen ist.

  3. Das Zustellfenster ist begrenzt.

    Das Netzwerk kann einen Ablauf melden, wenn seine Wartezeit endet.

  4. Ihre Integration muss sich nicht direkt verbinden.

    Ein Messaging-Anbieter kann die Verbindung zwischen Ihrer Anwendung und dem Carriernetzwerk übernehmen.

Bauen Sie auf demselben Netzwerk auf.

Ein Test-API-Schlüssel steht Ihnen sofort zur Verfügung. Der Produktivbetrieb wird freigeschaltet, sobald Sie eine Zahlungsmethode hinzufügen und einen Absender verifizieren.

Ihre nächste Idee.
Bereit zur Verbindung.