SMS

Qu'est-ce qu'un SMS concaténé ?

Un texte SMS concaténé voyage en plusieurs messages réseau que le téléphone destinataire assemble en un seul.

Une longue notification de livraison peut apparaître comme un seul texte sur un téléphone. Elle peut tout de même engendrer plusieurs unités facturables. Chaque partie transporte à la fois du texte et des informations identifiant sa place dans le message complet.

Comment le téléphone sait-il quelles parties assembler ?

Chaque partie transporte une référence partagée, un nombre total de parties et sa position dans la séquence.

Ces valeurs se trouvent dans un en-tête aux côtés du texte. La spécification 23.040 du 3rd Generation Partnership Project définit ce mécanisme. Le téléphone vérifie aussi que les parties partagent le même expéditeur et le même centre de messagerie.

L'en-tête occupe une partie de la capacité de chaque segment. Bird utilise donc une capacité texte réduite pour chaque partie d'un message concaténé.

Pourquoi un seul caractère supplémentaire crée-t-il un segment de plus ?

Dépasser la limite d'un segment unique amène Bird à découper tout le corps en utilisant la capacité multipartie réduite.

Du texte latin simple tient en 160 caractères dans un segment. Chaque partie d'un message plus long en contient 153.

Un corps de 160 lettres latines ordinaires tient dans un segment. Ajoutez une lettre et le corps de 161 lettres nécessite deux parties, contenant 153 et huit lettres. Les deux parties réservent de l'espace pour l'en-tête, y compris la première.

Des caractères comme les guillemets courbes font passer tout le message à une capacité réduite : 70 caractères, ou 67 par partie. Un texte contenant 70 lettres latines et un guillemet courbe nécessite donc deux parties.

Certains caractères comptent double pour ces limites. GSM-7 vs UCS-2 explique pourquoi le nombre de caractères visibles peut sous-estimer l'espace nécessaire.

Que se passe-t-il si une partie est manquante ?

Le téléphone ne peut pas reconstituer le texte complet tant qu'il n'a pas reçu toutes les parties.

Le réseau traite les parties comme des messages distincts. Leur livraison peut aboutir indépendamment. La livraison réussie d'une partie ne garantit pas la livraison du texte entier.

Un message incomplet peut donc constituer un problème de livraison même si votre application a envoyé le corps complet. Gardez un code de vérification à usage unique dans un seul segment si possible. Le destinataire n'a alors pas besoin de plusieurs parties pour le lire.

Combien de parties Bird accepte-t-il ?

Vous pouvez envoyer jusqu'à douze segments dans une seule requête. Bird rejette un corps plus long.

Cela permet 1 836 caractères latins simples : douze parties de 153. L'alphabet élargi permet 804 : douze parties de 67. Les caractères comptés double, y compris certains emoji, réduisent la quantité de texte possible.

Le champ text de la requête accepte une chaîne non vide soumise à cette limite de douze segments. La dépasser renvoie HTTP 422, ce qui signifie que la requête est rejetée pour contenu invalide. Bird ne raccourcit pas le texte silencieusement.

Comment vérifier le résultat calculé ?

Vous lisez l'objet segments de la réponse du message pour voir ce que Bird a calculé.

  • count est un entier d'au moins 1. Les messages sortants ne peuvent pas dépasser 12. Chaque partie contribue une unité facturable.
  • encoding vaut GSM_7BIT ou UCS2, identifiant quelle capacité s'applique.
  • characters compte les caractères avant d'appliquer les règles de double comptage. Utilisez count pour vérifier les segments facturables.

Pour un modèle long, vérifiez le corps final après insertion des noms ou d'autres textes variables. Segments SMS explique le calcul de facturation, et le guide des limites de caractères documente la réponse.

En bref

  1. Vous envoyez un seul message.

    Bird découpe un corps trop long en parties que le téléphone destinataire peut assembler.

  2. Chaque partie nécessite un en-tête.

    Les informations de réassemblage réduisent la capacité texte de chaque segment, y compris le premier.

  3. Une partie manquante empêche le réassemblage complet.

    Le téléphone a besoin de toutes les parties pour afficher le texte complet.

  4. Bird limite les messages sortants à douze segments.

    Un corps plus long est rejeté avec une réponse HTTP 422 au lieu d'être tronqué.

Développez sur le même réseau.

Une clé API de test est disponible immédiatement. La production est activée dès que vous ajoutez un moyen de paiement et vérifiez un expéditeur.

Votre prochaine idée.
Prête à se connecter.