Comment configurer le champ Priorité SMPP
Qu'est-ce que le champ Priorité ?
Le drapeau de Priorité dans SMPP (Short Message Peer-to-Peer Protocol) est un champ de 1 octet dans les PDU SMPP comme submit_sm
et deliver_sm
.
Il indique l'urgence d'un message, influençant la manière dont les SMSC (Short Message Service Centers) gèrent la mise en file d'attente, les nouvelles tentatives de livraison et le routage.
Les principaux cas d'utilisation incluent :
- Prioriser les alertes d'urgence par rapport aux SMS promotionnels
- Optimiser l'allocation des ressources réseau
- Répondre aux exigences SLA pour les messages haute priorité
Valeurs et interprétation du champ Priorité
Défini dans SMPP v3.4, le drapeau de priorité utilise une valeur de 4 bits (bien que seules les valeurs 0-3 soient généralement utilisées) :
Priorité (Hex) | Décimal | Description |
---|---|---|
0x00 | 0 | Priorité la plus basse (messages en masse) |
0x01 | 1 | Priorité normale (SMS standard) |
0x02 | 2 | Priorité interactive (sensibilité au temps) |
0x03 | 3 | Priorité la plus haute (alertes d'urgence) |
Comment la priorité affecte le traitement des messages
1. Comportement de mise en file d'attente
Les messages haute priorité passent devant dans les files d'attente des SMSC. Exemple :
Priorité 3 : Livré avant les messages de Priorité 0
2. Nouvelles tentatives de livraison
Les priorités plus élevées peuvent obtenir plus de tentatives de nouvelle livraison. Exemple de politique SMSC :
Priorité 3 : 5 tentatives sur 24 heures Priorité 0 : 2 tentatives sur 2 heures
3. Routage réseau
Certains SMSC routent les messages haute priorité via des canaux dédiés.
Exemples de PDU SMPP
Exemple 1 : SMS en masse (Priorité=0x00)
0000001D // Longueur de commande (29 octets) 00000004 // ID de commande (SubmitSM) 00000001 // Numéro de séquence 00 // TON source 00 // NPI source 736F7572636500 // Adresse source ("source") 00 // TON destination 00 // NPI destination 36353433323100 // Adresse de destination ("654321") 00 // Classe ESM 00 // ID de protocole (PID) 00 // Drapeau de priorité (0x00 : Plus basse) 00 // Heure de livraison planifiée 00 // Période de validité 00 // Livraison enregistrée 00 // Remplacer-si-présent 00 // Codage des données (DCS=0x00) 00 // ID de message par défaut SM 07 // Longueur SM (7 septets) C8329BFD06DDDF72 // Charge utile ("Hello!")
Exemple 2 : Alerte d'urgence (Priorité=0x03)
0000001D // Longueur de commande (29 octets) 00000004 // ID de commande (SubmitSM) 00000002 // Numéro de séquence 00 // TON source 00 // NPI source 736F7572636500 // Adresse source ("source") 00 // TON destination 00 // NPI destination 36353433323100 // Adresse de destination ("654321") 00 // Classe ESM 00 // ID de protocole (PID) 03 // Drapeau de priorité (0x03 : Plus haute) 00 // Heure de livraison planifiée FF // Période de validité (max) 01 // Livraison enregistrée (reçu) 00 // Remplacer-si-présent 00 // Codage des données (DCS=0x00) 00 // ID de message par défaut SM 0A // Longueur SM (10 septets) E8329BFD0E... // Charge utile ("ALERTE : Inondation !")
Interactions avec d'autres champs
- Bits de priorité de la classe ESM : Les bits 3-2 de la classe ESM peuvent remplacer ce champ sur certains SMSC.
- validity_period : Les messages haute priorité ont souvent une validité plus courte (par exemple, 1 heure contre 3 jours).
- registered_delivery : Les messages de Priorité 3 nécessitent fréquemment des reçus de livraison.
Pièges courants
- Supposer que tous les SMSC respectent les niveaux de priorité (vérifier avec le fournisseur)
- Confondre la Priorité SMPP avec
TP-Status-Report-Indication
GSM - Définir Priorité=3 pour du contenu non urgent (peut violer les réglementations)
- Incompatibilité entre Priorité et validity_period (par exemple, Priorité=3 avec validity=7 jours)
Certains pays restreignent l'utilisation de Priorité=3 aux entités autorisées (par exemple, alertes gouvernementales).
Priorité vs Bits de priorité de la classe ESM
Champ | Bits | Niveaux de priorité | Utilisation typique |
---|---|---|---|
Drapeau de Priorité SMPP | Octet entier | 0-3 | Priorité de bout en bout |
Classe ESM (bits 3-2) | 2 bits | 00=Normal, 01=Interactif, 10=Urgent, 11=Urgence | Priorisation au niveau réseau |
Conclusion
Le champ Priorité est crucial pour gérer l'urgence de la livraison des SMS, mais nécessite une coordination minutieuse avec les capacités des SMSC et les réglementations. Testez toujours le comportement de priorité avec votre fournisseur et alignez les paramètres avec les directives locales des télécoms. Pour des implémentations détaillées, reportez-vous à la section 5.2.12 de SMPP v3.4 et à la documentation GSM 03.40.
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