LUNGHEZZA TESTO E CODIFICHE SUPPORTATE

SmsHosting.it supporta sia la codifica  GSM 7-bit standard che la codifica UCS-2 a 16-bit per coprire molti tipi di alfabeti.

L'invio in modalità mittente numerico supporta esclisivamente la codifica GSM 7-bit mentre l'invio in alta qualità permette anche l'ulizzo della codifica UCS-2 a 16-bit.

Codifica GSM 7 bit

Un messaggio SMS, così come specificato nei documenti GSM 03.40 e GSM 03.38, può essere lungo sino a 160 caratteri

Smshosting.it supporta anche gli sms lunghi o sms concatenati: se il testo supera i 160 caratteri vengono mandati più sms (fino a 5 sms concatenati) che però appaiono sul dispositivo di chi li riceve come un unico sms.

Nel caso degli sms concatenati il numero di caratteri consentiti per ogni sms è di 153 perchè i restanti 7 caratteri sono utilizzati dal protocollo GSM per consentire la concatenazione degli sms in modo trasparente all'utente finale.

Ogni carattere è codificato con 7 bit e fa parte di un set ristretto di 127 caratteri detto alfabeto di default a 7 bit.  Dalle tabelle sottostanti è possibile vedere tutti i caratteri supportati con evidenza nella tabella (Extension) dei simboli che occupano 2 caratteri.

alfabeto gsm 7 bit

Nel caso di sms che sforino la lunghezza standard di 160 caratteri solo a causa di alcuni caratteri estesi li rimpiazza con caratteri semplici mantendo il costo a 1 sms invece che 2. Sotto le tabelle dei caratteri è riportata la tabella di conversione eventualmente utilizzata.

Hex Dec Character name Character Sobstitution
0x1B04 27 10 FORM FEED

n/a

n/a

0x1B14 27 20 CIRCUMFLEX ACCENT ^ Λ (lambda)
0x1B28 27 40 LEFT CURLY BRACKET { (
0x1B29 27 41 RIGHT CURLY BRACKET } )
0x1B2F 27 47 REVERSE SOLIDUS (BACKSLASH) \ /
0x1B3C 27 60 LEFT SQUARE BRACKET [ (
0x1B3D 27 61 TILDE ~ -
0x1B3E 27 62 RIGHT SQUARE BRACKET ] )
0x1B40 27 64 VERTICAL BAR | I
0x1B65 27 101 EURO SIGN E


Nel caso quindi, ad esempio, di un messaggio di 50 caratteri contenente "{testo}" l'sms inviato conterrà effettivamente il testo "{testo}". Se lo stesso frammento "{testo}" è invece inserito in un sms di 160 caratteri questo verrà sostituito con "(testo)" per evitare il troncamento di 2 caratteri. La lunghezza effettiva in questo caso sarebbe infatti 162 = 158 caratteri normali + 2 caratteri da 2.

Codifica UCS2 16 bit

Un sms UNICODE consente l'invio di 70 caratteri e anche per questo tipo di sms vengono supportati i messaggi concatenati (fino a 5 sms concatenati) ogni parte del messaggio può contenere al massimo 67 caratteri in quanto 3 caratteri sono utilizzati dal protocollo per la concatenzazione degli sms.

Con questo tipo di encoding è possibile inviare sms nei seguenti alfabeti:

  • Latin
  • Greek
  • Cyrillic
  • Armenian
  • Hebrew
  • Arabic
  • Syriac
  • Thaana
  • Devanagari
  • Bengali
  • Gurmukhi
  • Oriya
  • Tamil
  • Telugu
  • Kannada
  • Malayalam
  • Sinhala
  • Thai
  • Lao
  • Tibetan
  • Myanmar
  • Georgian
  • Hangul
  • Ethiopic
  • Cherokee
  • Canadian-Aboriginal Syllabics
  • Ogham
  • Runic
  • Tagalog
  • Hanunó'o
  • Buhid
  • Tagbanwa
  • Khmer
  • Mongolian
  • Limbu
  • Tai Le
  • Han (Japanese, Chinese, Korean ideographs)
  • Hiragana
  • Katakana
  • Bopomofo
  • Yi
  • Linear B
  • Old Italic
  • Gothic
  • Ugaritic
  • Deseret
  • Shavian
  • Osmanya
  • Cypriot