Entwickler

POST/v3/smslength

SMS-Kodierung und Segmentanzahl berechnen

Analysieren Sie den endgültigen Nachrichtentext, ohne ihn zu senden oder Zustellgebühren zu schätzen.

Auf dieser Seite
  1. Den exakten Nachrichtentext analysieren
  2. Anfrage
  3. Antwort
  4. Kodierung und Segmentgrenzen
  5. Fehler und leerer Text
  6. Das Ergebnis vor dem Versand nutzen

Den exakten Nachrichtentext analysieren

Berechnen Sie die Kodierung, die kodierte Länge und die Anzahl der SMS-Segmente für den Text, den Sie senden möchten. Dieser Endpunkt sendet keine SMS, reserviert keine Route und liefert kein Preisangebot für die Zustellung. Übermitteln Sie den vollständigen endgültigen Text einschließlich aller Fußzeilen, Links oder Abmeldehinweise, die Ihr Versandablauf hinzufügt.

Anfrage

Authentifizieren Sie sich mit Ihrem freigeschalteten API-Konto und dessen zulässiger Quell-IP-Adresse. Bewahren Sie Zugangsdaten in einem serverseitigen Geheimnisspeicher auf. Senden Sie eine UTF-8-Zeichenfolge im Feld text; das Beispiel verwendet Umgebungsvariablen.

curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
  --data-urlencode 'text=Your message here' \
  https://api.multitel.net/v3/smslength

Formularkodierte Eingaben werden unterstützt. Ein JSON-Objekt wie {"text":"Your message here"} wird ebenfalls akzeptiert, wenn keine Formular- oder Abfragefelder übermittelt werden. Verwenden Sie vorzugsweise POST, damit der Nachrichtentext nicht in einer URL erscheint. Wenn sowohl Formular- als auch Abfrageeingaben vorliegen, werden die Formulareingaben verwendet. Mischen Sie keine Anfrageformate.

Antwort

{
  "status": {
    "code": "200",
    "msg": ""
  },
  "response": {
    "charset": 0,
    "encoding": "GSM-7",
    "count": 1,
    "parts": 1,
    "chars": 17,
    "units": 17,
    "single_limit": 160,
    "multipart_limit": 153
  }
}
Ergebnisfelder des Rechners
FeldBedeutung
charset0 für GSM-7 oder 2 für UTF-16.
encodingGSM-7 oder UTF-16.
parts, countZwei Bezeichnungen für die berechnete Anzahl der SMS-Segmente. Bei leerem Text sind beide Werte null.
units, charsZwei Bezeichnungen für kodierte Einheiten. Diese entsprechen nicht unbedingt den sichtbaren Zeichen.
single_limitHöchstzahl kodierter Einheiten für ein einzelnes Segment bei der gewählten Kodierung.
multipart_limitHöchstzahl kodierter Einheiten pro Segment nach Abzug des Zusatzbedarfs für die Verkettung.

Kodierung und Segmentgrenzen

Vom Rechner verwendete Grenzwerte
KodierungEinzelsegmentSegment einer mehrteiligen SMS
GSM-7160 Septette153 Septette
UTF-1670 Codeeinheiten67 Codeeinheiten

Erweiterungszeichen von GSM-7 wie ^, geschweifte Klammern, eckige Klammern, umgekehrter Schrägstrich, senkrechter Strich, Tilde und Eurozeichen belegen zwei Septette. Ein Zeichen außerhalb von GSM-7 stellt die Zählung für die gesamte Nachricht auf UTF-16 um. Ein Emoji außerhalb der mehrsprachigen Basisebene belegt zwei UTF-16-Einheiten; eine sichtbare Emoji-Sequenz kann mehrere Codepunkte enthalten.

Beispielsweise passen 160 gewöhnliche GSM-7-Buchstaben in ein Segment, während 161 zwei Segmente benötigen. Achtzig ^-Zeichen belegen 160 Einheiten und passen in ein Segment; einundachtzig belegen 162 Einheiten und benötigen zwei Segmente. Fünfunddreißig einfache Emojis außerhalb der BMP belegen 70 UTF-16-Einheiten und passen in ein Segment; sechsunddreißig belegen 72 Einheiten und benötigen zwei Segmente. Kombinierende Zeichen und verbundene Emojis können diese Anzahlen verändern.

Fehler und leerer Text

Ein fehlendes Feld text, ein Array oder Objekt anstelle eines skalaren Werts oder ungültiges UTF-8 führt zur Rückgabe des API-Codes 403. Lesen Sie in JSON die Felder status.code und status.msg sowie den HTTP-Status; dieser Endpunkt gibt den Code als Zeichenfolge zurück. Eine leere Zeichenfolge ist gültig und ergibt null Einheiten und null Segmente.

Das Ergebnis vor dem Versand nutzen

Der geprüfte Rechner führt weder einen Nachrichtenversand noch einen Aufruf beim Mobilfunkanbieter oder eine Kontobelastung aus. Sein Ergebnis ist eine Analyse des übermittelten Textes, keine Zustellgarantie und keine endgültige Rechnung. Beim Versand können zielabhängige Tarife, Gebühren der Mobilfunkanbieter, Kampagnenanforderungen und zusätzliche Textumwandlungen hinzukommen. Berechnen Sie nach Änderungen an der Nachricht erneut und verwenden Sie anschließend den freigegebenen Versandablauf und die aktuellen Preise Ihres Kontos.