SMS

Cos'è un SMS concatenato?

Un testo SMS concatenato viaggia come più messaggi di rete che il telefono ricevente ricompone in uno solo.

Una notifica di consegna lunga può apparire come un unico testo sul telefono. Può comunque comportare più unità fatturabili. Ogni parte trasporta sia testo sia informazioni che identificano la sua posizione nel messaggio completo.

Come fa il telefono a sapere quali parti unire?

Ogni parte trasporta un riferimento condiviso, il numero totale di parti e la propria posizione nella sequenza.

Questi valori si trovano in un'intestazione accanto al testo. La specifica 23.040 del 3rd Generation Partnership Project definisce questo meccanismo. Il telefono verifica anche che le parti condividano lo stesso mittente e centro messaggi.

L'intestazione occupa parte della capacità di ogni parte. Bird usa quindi un limite di testo più piccolo per ogni parte di un messaggio concatenato.

Perché un carattere in più crea un altro segmento?

Superare il limite di un singolo segmento fa sì che Bird divida l'intero corpo usando il limite multipart più piccolo.

Un testo in caratteri latini semplici entra in 160 caratteri per segmento. Ogni parte di un messaggio più lungo ne contiene 153.

Un corpo di 160 lettere latine ordinarie entra in un segmento. Aggiungi un'altra lettera e il corpo di 161 lettere richiede due parti, contenenti 153 e otto lettere. Entrambe le parti riservano spazio per l'intestazione, compresa la prima.

Caratteri come le virgolette curve passano l'intero messaggio a un limite più piccolo: 70 caratteri, o 67 per parte. Un testo con 70 lettere latine e una virgoletta curva richiede quindi due parti.

Alcuni caratteri contano doppio rispetto a questi limiti. GSM-7 vs UCS-2 spiega perché il conteggio dei caratteri visibili può sottostimare lo spazio necessario.

Cosa succede se una parte va persa?

Il telefono non può ricostruire il testo completo finché non ha ogni parte.

La rete gestisce le parti come messaggi separati. La loro consegna può completarsi in modo indipendente. La consegna riuscita di una parte non garantisce la consegna dell'intero testo.

Un messaggio incompleto può quindi essere un problema di consegna anche quando la tua applicazione ha inviato il corpo completo. Mantieni un codice di verifica monouso entro un singolo segmento quando possibile. Il destinatario non avrà bisogno di più parti per leggerlo.

Quante parti accetta Bird?

Puoi inviare fino a dodici segmenti in una singola richiesta. Bird rifiuta un corpo più lungo.

Questo contiene 1.836 caratteri latini semplici: dodici parti da 153. L'alfabeto esteso contiene 804: dodici parti da 67. I caratteri che contano doppio, incluse alcune emoji, riducono la quantità di testo che entra.

Il campo text della richiesta accetta una stringa non vuota soggetta al limite di dodici segmenti. Superarlo restituisce HTTP 422, il che significa che la richiesta viene rifiutata per contenuto non valido. Bird non accorcia silenziosamente il testo.

Come verifico il risultato calcolato?

Leggi l'oggetto segments nella risposta del messaggio per vedere cosa ha calcolato Bird.

  • count è un intero di almeno 1. I messaggi in uscita non possono superare 12. Ogni parte contribuisce un'unità fatturabile.
  • encoding è GSM_7BIT o UCS2, e identifica quale capacità si applica.
  • characters conta i caratteri prima di applicare le regole del conteggio doppio. Usa count per verificare i segmenti fatturabili.

Per un template lungo, controlla il corpo finale dopo aver inserito nomi o altro testo variabile. Segmenti SMS spiega il calcolo della fatturazione, e la guida ai limiti dei caratteri documenta la risposta.

In breve

  1. Invii un solo messaggio.

    Bird divide un corpo troppo lungo in parti che il telefono ricevente può ricomporre.

  2. Ogni parte richiede un'intestazione.

    Le informazioni di riassemblaggio riducono la capacità testuale di ogni segmento, compreso il primo.

  3. Una parte mancante impedisce il riassemblaggio completo.

    Il telefono ha bisogno di tutte le parti per visualizzare il testo completo.

  4. Bird limita i messaggi in uscita a dodici segmenti.

    Un corpo più lungo viene rifiutato con una risposta HTTP 422 anziché essere troncato.

Costruisci sulla stessa rete.

Una chiave API di test è subito tua. L'accesso alla produzione si sblocca quando aggiungi un metodo di pagamento e verifichi un mittente.

La tua prossima idea.
Pronta a partire.