Lorsque vous créez un message SMS, il est important de tenir compte du nombre de fragments que contient votre message. En effet, le coût d’envoi d’un SMS est variable et dépend du nombre de fragments requis pour transmettre le message. Ainsi, plus un SMS comporte de fragments, plus il sera coûteux. Le système va envoyer le SMS de la manière la plus efficace, mais idéalement, un SMS devrait comporter un seul fragment.
Ce nombre de fragments dépend de deux facteurs : la longueur du message et le format d'encodage dans lequel il est transmis.
- Le format GSM-x permet plus de caractères par fragment que le format UCS-2, mais supporte une étendue limitée de caractères.
- Un format variable indique que le contenu statique de votre message supporte le format GSM mais que l’ajout d’éléments personnalisés pourrait forcer l’utilisation du format UCS-2.
Longueur maximale
Bien que le protocole SMS autorise 160 caractères, le nombre réel de caractères acceptés pour un fragment va dépendre du fournisseur SMS. Par exemple, avec Twillio, le nombre de caractères est de 140 par fragment, en raison de l’encodage utilisé (format GSM).
Ainsi, si l’utilisateur saisit un 141e caractère dans son message, cela va créer un 2e fragment (un premier de 140 caractères et un autre de 1 caractère seulement). Ceci va donc doubler le coût de ce SMS.
Pour vérifier le nombre de caractères et de fragments, rendez-vous dans Test et repérez la section Analyse du SMS (à gauche) :
Type d'encodage
Lorsqu’on dit qu’un SMS autorise 140 caractères, cela sous-entend que chaque caractère est encodé sur 1 octet. Or, certains caractères spéciaux ont besoin d’être encodés sur 2 octets. Dans ce cas, le message au complet est encodé dans un format où chaque caractère est sur 2 octets. Par conséquent, le nombre de caractères autorisé n’est plus 140, mais sera 70.
Dans l’exemple ci-dessous, le message fait 131 caractères, où chaque caractère est encodé sur 1 seul octet (format GSM). Le message fera donc 1 seul fragment.
Toutefois, si on ajoute un symbole (copyright dans cet exemple), qui nécessite un encodage sur 2 octets, le message au complet est alors encodé en UCS et chaque caractère compte pour 2 octets. Le message comportera donc 2 fragments, car 132 caractères excèdent le maximum de 70 autorisés dans un fragment UCS.
Impact de la personnalisation
Si votre message comporte des éléments de personnalisation, par exemple, le nom du destinataire, il faudra tenir compte du nombre de caractères que le champ du prénom peut contenir. Comme le contenu du champ n'est défini qu'à l'envoi du message, l'analyse ne présente qu'une estimation du nombre minimal et maximal de caractères que peut contenir le message.
L'analyse approximative tient compte de deux facteurs :
1. Le nombre de caractères
L'analyse tient compte du nombre minimal de caractères (sans valeur dans le champ) et du nombre maximal de caractères autorisés dans le champ.
2. Le nombre de fragments
Le nombre de fragments est établi séparément pour chaque contact en fonction de la valeur précise contenue dans le champ. Le type de valeur détermine le format d'encodage utilisé.
- Si la valeur du champ ne comporte aucun caractère spécial, on utilisera le format GSM, qui accepte 140 caractères par fragment.
- Si la valeur comporte au moins un caractère spécial, comme le signe de copyright © par exemple, on utilisera le format UCS, lequel réduit à 70 le nombre de caractères par fragment.
Donc, si le champ contient des caractères spéciaux, une longueur de 124 caractères donnera 2 fragments en UCS, alors que, si le message était encodé en GSM, il ne prendrait qu'un seul fragment.
Par exemple, si on envoie un SMS à 100 contacts, il se peut que certains soient encodés en GSM et d'autres en UCS, selon que la valeur du champ de personnalisation contient des caractères spéciaux ou non. Les messages n'auront pas tous le même nombre de fragments.