Cómo configurar el campo de Prioridad en SMPP

¿Qué es el campo de Prioridad?

La Bandera de Prioridad en SMPP (Protocolo de Mensajes Cortos entre Pares) es un campo de 1 byte en las PDUs de SMPP como submit_sm y deliver_sm. Indica la urgencia de un mensaje, influyendo en cómo los SMSCs (Centros de Servicio de Mensajes Cortos) manejan la cola, los reintentos de entrega y el enrutamiento. Los casos de uso clave incluyen:

  • Priorizar alertas de emergencia sobre SMS promocionales
  • Optimizar la asignación de recursos de red
  • Cumplir con los requisitos SLA para mensajes de alta prioridad

Valores del campo de Prioridad e interpretación

Definido en SMPP v3.4, la bandera de prioridad utiliza un valor de 4 bits (aunque normalmente solo se usan los valores 0-3):

Prioridad (Hex) Decimal Descripción
0x00 0 Prioridad más baja (mensajes masivos)
0x01 1 Prioridad normal (SMS estándar)
0x02 2 Prioridad interactiva (sensibles al tiempo)
0x03 3 Prioridad más alta (alertas de emergencia)
Nota: Los valores 0x04-0x0F están reservados. La mayoría de los SMSCs ignoran estos bits.

Cómo afecta la Prioridad al manejo de mensajes

1. Comportamiento en colas

Los mensajes de alta prioridad avanzan en las colas de los SMSC. Ejemplo:

Prioridad 3: Entregado antes que mensajes con Prioridad 0
    

2. Reintentos de entrega

Las prioridades más altas pueden obtener más intentos de reintento. Ejemplo de política de SMSC:

Prioridad 3: 5 reintentos en 24 horas
Prioridad 0: 2 reintentos en 2 horas
    

3. Enrutamiento de red

Algunos SMSCs enrutan mensajes de alta prioridad a través de canales dedicados.

Ejemplos de PDUs SMPP

Ejemplo 1: SMS masivo (Prioridad=0x00)

0000001D  // Longitud del comando (29 bytes)
00000004  // ID del comando (SubmitSM)
00000001  // Número de secuencia
00        // TON de origen
00        // NPI de origen
736F7572636500  // Dirección de origen ("source")
00        // TON de destino
00        // NPI de destino
36353433323100  // Dirección de destino ("654321")
00        // Clase ESM
00        // ID de protocolo (PID)
00        // Bandera de Prioridad (0x00: Más baja)
00        // Tiempo de entrega programada
00        // Período de validez
00        // Entrega registrada
00        // Reemplazar-si-presente
00        // Codificación de datos (DCS=0x00)
00        // ID de mensaje predeterminado SM
07        // Longitud SM (7 septetos)
C8329BFD06DDDF72  // Carga útil ("¡Hola!")
    

Ejemplo 2: Alerta de emergencia (Prioridad=0x03)

0000001D  // Longitud del comando (29 bytes)
00000004  // ID del comando (SubmitSM)
00000002  // Número de secuencia
00        // TON de origen
00        // NPI de origen
736F7572636500  // Dirección de origen ("source")
00        // TON de destino
00        // NPI de destino
36353433323100  // Dirección de destino ("654321")
00        // Clase ESM
00        // ID de protocolo (PID)
03        // Bandera de Prioridad (0x03: Más alta)
00        // Tiempo de entrega programada
FF        // Período de validez (máximo)
01        // Entrega registrada (recibo)
00        // Reemplazar-si-presente
00        // Codificación de datos (DCS=0x00)
00        // ID de mensaje predeterminado SM
0A        // Longitud SM (10 septetos)
E8329BFD0E...  // Carga útil ("ALERTA: ¡Inundación!")
    

Interacciones con otros campos

  • Bits de Prioridad en Clase ESM: Los bits 3-2 de la Clase ESM pueden anular este campo en algunos SMSCs.
  • validity_period: Los mensajes de alta prioridad suelen tener una validez más corta (ej., 1 hora vs 3 días).
  • registered_delivery: Los mensajes con Prioridad 3 frecuentemente requieren recibos de entrega.

Errores comunes

  • Asumir que todos los SMSCs respetan los niveles de prioridad (verificar con el proveedor)
  • Confundir la Prioridad SMPP con TP-Status-Report-Indication de GSM
  • Establecer Prioridad=3 para contenido no urgente (puede violar regulaciones)
  • Incompatibilidad entre Prioridad y validity_period (ej., Prioridad=3 con validez=7 días)
Nota regulatoria:
Algunos países restringen el uso de Prioridad=3 a entidades autorizadas (ej., alertas gubernamentales).

Prioridad vs Bits de Prioridad en Clase ESM

Campo Bits Niveles de Prioridad Uso típico
Bandera de Prioridad SMPP Octeto completo 0-3 Prioridad de extremo a extremo
Clase ESM (bits 3-2) 2 bits 00=Normal, 01=Interactivo, 10=Urgente, 11=Emergencia Priorización a nivel de red

Conclusión

El campo de Prioridad es crucial para gestionar la urgencia en la entrega de SMS, pero requiere coordinación cuidadosa con las capacidades del SMSC y las regulaciones. Siempre pruebe el comportamiento de prioridad con su proveedor y alinee la configuración con las pautas locales de telecomunicaciones. Para implementaciones detalladas, consulte la Sección 5.2.12 de SMPP v3.4 y la documentación de GSM 03.40.

More information