Utviklere

POST/v3/smslength

Beregn SMS-koding og antall segmenter

Analyser den endelige meldingsteksten uten å sende den eller anslå leveringskostnader.

På denne siden
  1. Analyser den nøyaktige meldingsteksten
  2. Forespørsel
  3. Svar
  4. Koding og segmentgrenser
  5. Feil og tom tekst
  6. Bruk resultatet før utsending

Analyser den nøyaktige meldingsteksten

Beregn kodingen, den kodede lengden og antall SMS-segmenter for teksten du har tenkt å sende. Dette endepunktet sender ingen SMS, reserverer ingen rute og returnerer ikke noe pristilbud for levering. Send inn hele den endelige teksten, inkludert eventuell bunntekst, lenke eller formulering for avmelding som arbeidsflyten for utsending legger til.

Forespørsel

Autentiser deg med den aktiverte API-kontoen din og kilde-IP-adressen som er tillatt for kontoen. Oppbevar påloggingsopplysninger i et hemmelighetslager på serversiden. Send en UTF-8-streng i feltet text; eksemplet bruker miljøvariabler.

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

Skjemakodede inndata støttes. Et JSON-objekt som {"text":"Your message here"} godtas også når ingen skjema- eller spørringsfelt er angitt. Bruk helst POST slik at meldingsteksten ikke vises i en URL. Hvis både skjema- og spørringsdata er angitt, brukes skjemadataene. Ikke bland forespørselsformater.

Svar

{
  "status": {
    "code": "200",
    "msg": ""
  },
  "response": {
    "charset": 0,
    "encoding": "GSM-7",
    "count": 1,
    "parts": 1,
    "chars": 17,
    "units": 17,
    "single_limit": 160,
    "multipart_limit": 153
  }
}
Resultatfelter fra kalkulatoren
FeltBetydning
charset0 for GSM-7 eller 2 for UTF-16.
encodingGSM-7 eller UTF-16.
parts, countTo navn på det beregnede antallet SMS-segmenter. Begge er null for tom tekst.
units, charsTo navn på kodede enheter. De tilsvarer ikke nødvendigvis synlige tegn.
single_limitGrense for antall kodede enheter i ett enkelt segment med den valgte kodingen.
multipart_limitGrense for antall kodede enheter som brukes for hvert segment etter fratrekk for ekstra data som kreves for sammenkobling.

Koding og segmentgrenser

Grenser som kalkulatoren bruker
KodingEnkeltsegmentSegment i en flerdelt melding
GSM-7160 septetter153 septetter
UTF-1670 kodeenheter67 kodeenheter

Utvidelsestegn i GSM-7, som ^, krøllparenteser, hakeparenteser, omvendt skråstrek, loddrett strek, tilde og eurotegnet, bruker to septetter. Et tegn utenfor GSM-7 gjør at hele meldingen telles i UTF-16-enheter. En emoji utenfor det grunnleggende flerspråklige planet bruker to UTF-16-enheter; en synlig emojisekvens kan inneholde flere kodepunkter.

For eksempel får 160 vanlige GSM-7-bokstaver plass i ett segment, mens 161 krever to. Åtti ^-tegn bruker 160 enheter og får plass i ett segment; åttien bruker 162 enheter og krever to. Trettifem enkle emojier utenfor BMP bruker 70 UTF-16-enheter og får plass i ett segment; trettiseks bruker 72 enheter og krever to. Kombinerende tegn og sammenkoblede emojier kan endre disse tallene.

Feil og tom tekst

Et manglende text-felt, en tabell eller et objekt i stedet for en skalarverdi, eller ugyldig UTF-8 returnerer API-koden 403. Les JSON-feltene status.code og status.msg i tillegg til HTTP-statusen; dette endepunktet returnerer koden som en streng. En tom streng er gyldig og returnerer null enheter og null segmenter.

Bruk resultatet før utsending

Den gjennomgåtte kalkulatoren utfører ingen meldingsutsending, ingen kall til operatører og ingen belastning av kontoen. Resultatet er en analyse av den innsendte teksten, ikke en leveringsgaranti eller en endelig faktura. Utsending kan medføre destinasjonsavhengige priser, operatørgebyrer, kampanjekrav og ytterligere tekstendringer. Beregn på nytt etter at meldingen er endret, og bruk deretter den godkjente arbeidsflyten for utsending og gjeldende priser for kontoen.