Tutto ciò che vale la pena sapere, niente di superfluo.
Il divario tra 160 e 70
Se il tuo messaggio rientra nello spazio GSM a 7 bit, hai a disposizione 160 caratteri per segmento. Se aggiungi un singolo trattino lungo (—), una virgoletta curva ("") o qualsiasi carattere arabo/cinese/emoji, l'intero messaggio diventa UCS-2 e hai a disposizione 70 caratteri per segmento. Un messaggio di 150 caratteri che rientra in un segmento GSM diventa un messaggio di 150 caratteri che richiede 3 segmenti UCS-2, triplicando i costi. Per invii ad alto volume, normalizza la punteggiatura ai corrispondenti caratteri ASCII GSM-7 in fase di composizione.
Concatenazione (SMS multiparte)
I messaggi più lunghi di un segmento vengono suddivisi lato client e ricomposti dal dispositivo del destinatario utilizzando l'intestazione dati utente (UDH). I segmenti concatenati tramite UDH sono di 153 caratteri (GSM-7) o 67 caratteri (UCS-2): tre byte per segmento vengono consumati dall'UDH stesso. La maggior parte degli aggregatori fattura per segmento, non per messaggio: un messaggio GSM-7 di 320 caratteri viene fatturato come 3 segmenti.
Quando utilizzare deliberatamente UCS-2
Sempre per contenuti in arabo, cinese, giapponese, coreano, cirillico o emoji. Sempre per le lingue europee con segni diacritici non presenti nell'estensione GSM-7 (polacco ł, ceco ř, vietnamita ă). Gli SMS in lingua araba nella regione MENA sono essenzialmente al 100% UCS-2: tenetene conto nel budget (i messaggi OTP in arabo in genere sono composti da 2 segmenti).
L'opzione a 8 bit (usata raramente)
SMPP supporta anche la codifica binaria raw a 8 bit per i dati binari, utilizzata per i comandi SIM OTA, la consegna di suonerie (anni '90) e scenari M2M di nicchia. Quasi mai vista nel traffico A2P commerciale.