Kūrėjams

POST/v3/smslength

Apskaičiuokite SMS koduotę ir segmentų skaičių

Analizuokite galutinį žinutės tekstą jo nesiųsdami ir nevertindami pristatymo mokesčių.

Šiame puslapyje
  1. Analizuokite tikslų žinutės tekstą
  2. Užklausa
  3. Atsakas
  4. Koduotė ir segmentų ribos
  5. Klaidos ir tuščias tekstas
  6. Pasinaudokite rezultatu prieš siųsdami

Analizuokite tikslų žinutės tekstą

Apskaičiuokite teksto, kurį ketinate siųsti, koduotę, užkoduoto teksto ilgį ir SMS segmentų skaičių. Šis API galinis taškas nesiunčia SMS, nerezervuoja maršruto ir nepateikia pristatymo kainos pasiūlymo. Pateikite visą galutinį tekstą, įskaitant bet kokią poraštę, nuorodą ar atsisakymo gauti žinutes formuluotę, kurią prideda jūsų siuntimo procesas.

Užklausa

Autentifikuokitės naudodami savo įjungtą API paskyrą ir jai leidžiamą šaltinio IP adresą. Prisijungimo duomenis laikykite serverio pusėje esančioje slaptųjų duomenų saugykloje. Siųskite UTF-8 eilutę lauke text; pavyzdyje naudojami aplinkos kintamieji.

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

Palaikomi formos formatu užkoduoti įvesties duomenys. JSON objektas, pavyzdžiui, {"text":"Your message here"} taip pat priimamas, kai nepateikiama jokių formos ar užklausos eilutės laukų. Pirmenybę teikite POST, kad žinutės tekstas nebūtų įtrauktas į URL. Jei pateikti ir formos, ir užklausos eilutės duomenys, naudojami formos duomenys. Nemaišykite užklausų formatų.

Atsakas

{
  "status": {
    "code": "200",
    "msg": ""
  },
  "response": {
    "charset": 0,
    "encoding": "GSM-7",
    "count": 1,
    "parts": 1,
    "chars": 17,
    "units": 17,
    "single_limit": 160,
    "multipart_limit": 153
  }
}
Skaičiuoklės rezultato laukai
LaukasReikšmė
charset0, kai naudojama GSM-7, arba 2, kai naudojama UTF-16.
encodingGSM-7 arba UTF-16.
parts, countDu apskaičiuoto SMS segmentų skaičiaus pavadinimai. Kai tekstas tuščias, abiejų reikšmė yra nulis.
units, charsDu užkoduotų vienetų skaičiaus pavadinimai. Jų reikšmės nebūtinai sutampa su matomų simbolių skaičiumi.
single_limitVieno segmento užkoduotų vienetų riba naudojant pasirinktą koduotę.
multipart_limitKiekvienam segmentui taikoma užkoduotų vienetų riba, atskaičius segmentams sujungti reikalingą vietą.

Koduotė ir segmentų ribos

Skaičiuoklės taikomos ribos
KoduotėVienas segmentasKelių segmentų žinutės segmentas
GSM-7160 septetų153 septetai
UTF-1670 kodo vienetų67 kodo vienetai

GSM-7 plėtinio simboliai, tokie kaip ^, riestiniai skliaustai, laužtiniai skliaustai, kairinis brūkšnys, vertikalusis brūkšnys, tildė ir euro ženklas, užima po du septetus. Jei yra simbolis, nepriklausantis GSM-7, visa žinutė pradedama skaičiuoti pagal UTF-16. Jaustukas, nepriklausantis pagrindinei daugiakalbei plokštumai, užima du UTF-16 vienetus; matomą jaustukų seką gali sudaryti keli kodo taškai.

Pavyzdžiui, 160 įprastų GSM-7 raidžių telpa į vieną segmentą, o 161 reikia dviejų. Aštuoniasdešimt ^ simbolių užima 160 vienetų ir telpa į vieną segmentą; aštuoniasdešimt vienas užima 162 vienetus ir reikalauja dviejų segmentų. Trisdešimt penki paprasti jaustukai, nepriklausantys pagrindinei daugiakalbei plokštumai (BMP), užima 70 UTF-16 vienetų ir telpa į vieną segmentą; trisdešimt šeši užima 72 vienetus ir reikalauja dviejų segmentų. Kombinuojamieji ženklai ir sujungti jaustukai gali pakeisti šiuos skaičius.

Klaidos ir tuščias tekstas

Jei trūksta lauko text, vietoj skaliarinės reikšmės pateikiamas masyvas ar objektas arba pateikiami netaisyklingi UTF-8 duomenys, grąžinamas API kodas 403. Tikrinkite JSON laukus status.code ir status.msg, taip pat HTTP būseną; šis API galinis taškas kodą grąžina kaip eilutę. Tuščia eilutė yra tinkama: jai grąžinama nulis vienetų ir nulis segmentų.

Pasinaudokite rezultatu prieš siųsdami

Peržiūrėta skaičiuoklė nesiunčia žinučių, nesikreipia į operatorių ir nenurašo lėšų iš paskyros. Jos rezultatas yra pateikto teksto analizė, o ne pristatymo garantija ar galutinė sąskaita. Siuntimui gali būti taikomi paskirties vietos tarifai, operatorių mokesčiai, kampanijų reikalavimai ir papildomi teksto pakeitimai. Pakeitę žinutę, apskaičiuokite iš naujo, tada naudokite patvirtintą siuntimo procesą ir dabartinę paskyros kainodarą.