Fejlesztők

POST/v3/smslength

Az SMS kódolásának és szegmensszámának kiszámítása

A végleges üzenetszöveg elemzése elküldés és a kézbesítési díjak becslése nélkül.

Ezen az oldalon
  1. A pontos üzenetszöveg elemzése
  2. Kérés
  3. Válasz
  4. Kódolás és szegmenskorlátok
  5. Hibák és üres szöveg
  6. Az eredmény felhasználása küldés előtt

A pontos üzenetszöveg elemzése

Számítsa ki az elküldeni kívánt szöveg kódolását, kódolt hosszát és SMS-szegmenseinek számát. Ez a végpont nem küld SMS-t, nem foglal le útvonalat, és nem ad kézbesítési árajánlatot. A teljes, végleges szöveget adja meg, beleértve a küldési munkafolyamat által hozzáadott láblécet, hivatkozást vagy leiratkozási szöveget is.

Kérés

A hitelesítéshez használja engedélyezett API-fiókját és az ahhoz engedélyezett forrás-IP-címet. A hitelesítési adatokat szerveroldali titoktárolóban tárolja. Küldjön egy UTF-8 kódolású karakterláncot a text mezőben; a példa környezeti változókat használ.

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

Az űrlapkódolt bemenet támogatott. Egy JSON objektum, például {"text":"Your message here"} is elfogadható, ha nincsenek megadva űrlapmezők vagy lekérdezési mezők. Lehetőleg a POST metódust használja, hogy az üzenetszöveg ne jelenjen meg az URL-ben. Ha űrlapadatok és lekérdezési adatok is jelen vannak, a rendszer az űrlapadatokat használja. Ne keverje a kérésformátumokat.

Válasz

{
  "status": {
    "code": "200",
    "msg": ""
  },
  "response": {
    "charset": 0,
    "encoding": "GSM-7",
    "count": 1,
    "parts": 1,
    "chars": 17,
    "units": 17,
    "single_limit": 160,
    "multipart_limit": 153
  }
}
A kalkulátor eredménymezői
MezőJelentés
charset0 a GSM-7 esetén, vagy 2 az UTF-16 esetén.
encodingGSM-7 vagy UTF-16.
parts, countAz SMS-szegmensek kiszámított számának két elnevezése. Üres szövegnél mindkettő értéke nulla.
units, charsA kódolt egységek számának két elnevezése. Ez nem feltétlenül egyezik meg a látható karakterek számával.
single_limitA kódolt egységek felső határa egyetlen szegmens esetén, a kiválasztott kódolással.
multipart_limitA kódolt egységek szegmensenként alkalmazott felső határa az összefűzés többlethelyigényének levonása után.

Kódolás és szegmenskorlátok

A kalkulátor által alkalmazott korlátok
KódolásEgyetlen szegmensTöbbrészes üzenet egy szegmense
GSM-7160 szeptett153 szeptett
UTF-1670 kódegység67 kódegység

A GSM-7 bővített karakterei, például a ^, a kapcsos és szögletes zárójelek, a fordított törtvonal, a függőleges vonal, a hullámjel és az eurójel két szeptettet foglalnak el. Egy, a GSM-7 karakterkészletén kívüli karakter az egész üzenet számlálását UTF-16 alapúra váltja. Az alap többnyelvű síkon kívüli emodzsi két UTF-16 egységet használ; egy látható emodzsisorozat több kódpontot is tartalmazhat.

Például 160 szokásos GSM-7 betű elfér egy szegmensben, míg 161 már két szegmenst igényel. Nyolcvan ^ karakter 160 egységet használ, és elfér egy szegmensben; nyolcvanegy 162 egységet használ, és két szegmenst igényel. Harmincöt egyszerű, a BMP-n kívüli emodzsi 70 UTF-16 egységet használ, és elfér egy szegmensben; harminchat 72 egységet használ, és két szegmenst igényel. A kombináló jelek és az összekapcsolt emodzsik módosíthatják ezeket az értékeket.

Hibák és üres szöveg

A hiányzó text mező, a skalárérték helyett megadott tömb vagy objektum, illetve az érvénytelen UTF-8 kódolás 403 API-kódot eredményez. A HTTP-állapot mellett olvassa ki a JSON válasz status.code és status.msg mezőit is; ez a végpont karakterláncként adja vissza a kódot. Az üres karakterlánc érvényes, és nulla egységet és nulla szegmenst eredményez.

Az eredmény felhasználása küldés előtt

Az ellenőrzött kalkulátor nem küld üzenetet, nem indít hívást a szolgáltató felé, és nem terheli meg a fiókot. Eredménye a beküldött szöveg elemzése, nem kézbesítési garancia vagy végleges számla. A küldésre célállomásonkénti tarifák, szolgáltatói díjak, kampánykövetelmények és további szövegátalakítások vonatkozhatnak. Az üzenet módosítása után végezze el újra a számítást, majd használja a jóváhagyott küldési munkafolyamatot és a fiók aktuális díjszabását.