Comment configurer le champ sm_default_msg_id
Le champ sm_default_msg_id
fait partie des PDUs submit_sm
et deliver_sm
dans le protocole SMPP (Short Message Peer-to-Peer). Il est utilisé pour référencer des messages courts prédéfinis (intégrés) stockés sur le SMSC, généralement par un identifiant numérique.
Détails du champ
- Nom du champ : sm_default_msg_id
- Taille : 1 octet (entier non signé)
- Plage : 0–255
- Utilisation : Indique quel message par défaut envoyer (le cas échéant)
Description de l'utilisation
Le champ sm_default_msg_id
permet à un utilisateur de demander au SMSC d'envoyer un message prédéfini depuis son stockage de messages interne. Cela peut être utile dans des environnements contraints ou pour envoyer des messages système standard sans transmettre le texte complet à chaque fois.
Comportement par défaut
- Si
sm_default_msg_id = 0
, alors le contenu du message défini par l'utilisateur dansshort_message
est utilisé à la place. - Si
sm_default_msg_id > 0
, alors le message avec cet ID est utilisé, et le champshort_message
doit généralement être vide ou ignoré par le SMSC.
Pratique courante
Dans la plupart des systèmes SMS modernes et des API, sm_default_msg_id
n'est pas utilisé et est généralement défini sur 0
. Le contenu réel du message est envoyé via le champ short_message
.
Exemple de PDU avec valeur par défaut
0000003B // Longueur de commande (59 octets) 00000004 // ID de commande : submit_sm 00000000 // Statut de commande 00000001 // Numéro de séquence 00 // service_type 01 // source_addr_ton 01 // source_addr_npi 31323334 // source_addr ("1234") 00 01 // dest_addr_ton 01 // dest_addr_npi 35363738 // destination_addr ("5678") 00 00 // esm_class 00 // protocol_id 00 // priority_flag 00 // schedule_delivery_time 00 // validity_period 00 // registered_delivery 00 // replace_if_present_flag 00 // data_coding 00 // sm_default_msg_id = 0 (utiliser short_message) 05 // sm_length 48656C6C6F // short_message = "Hello"
Exemple de PDU avec ID de message prédéfini
... 00 // sm_default_msg_id = 1 (utiliser le message prédéfini 1) 00 // sm_length (vide) // short_message est vide ou ignoré
Quand l'utiliser
Bien que rare, vous pourriez utiliser sm_default_msg_id
lorsque :
- Vous travaillez avec des implémentations SMSC héritées qui prennent en charge les messages prédéfinis
- Vous envoyez des alertes ou modèles système répétitifs et volumineux stockés sur le SMSC
- Votre fournisseur SMS vous conseille d'utiliser cette fonctionnalité
Considérations importantes
- Si
sm_default_msg_id > 0
, certains SMSC peuvent ignorer complètementshort_message
. - Si les deux sont utilisés, le comportement dépend de l'implémentation. Testez toujours ou consultez la documentation.
- Définir une valeur non nulle sans un ID de message prédéfini valide peut entraîner un échec de livraison ou un rejet du message.
Conclusion
Le champ sm_default_msg_id
est une fonctionnalité héritée du protocole SMPP qui permet de référencer des modèles de messages par défaut stockés sur le SMSC. Bien qu'il soit largement inutilisé dans les systèmes modernes, comprendre son rôle aide à garantir la compatibilité lors du travail avec des passerelles héritées ou des implémentations SMSC personnalisées.
Références
- Spécification du protocole SMPP 3.4
- Documentation SMSC SMPP spécifique au fournisseur
More information
- How to configure the SMPP Service Type field
- How to configure the SMPP Phone Number fields
- How to configure the SMPP ESM Class field
- How to configure the SMPP PID field
- How to configure the SMPP Prioirity field
- How to configure the SMPP Scheduled Time field
- How to configure the SMPP Validity Period field
- How to configure the SMPP Registered Delivery field
- How to configure the SMPP Replace if Present field
- How to configure the sm_default_msg_id field
- How to configure the SMPP DCS field
- How to calculate the SMPP SM Length field
- How to put data into the SMPP SM field