ESME_RINVPRTFLG en SMPP
¿Qué es ESME_RINVPRTFLG?
ESME_RINVPRTFLG (Código de Error: 0x0000000D) es un error de SMPP que indica que se especificó una bandera de prioridad inválida en la solicitud SMPP.
Posibles Causas
- El campo
priority_flag
en la PDU contiene un valor inválido. - Se utilizó un valor de prioridad no soportado que no es reconocido por el SMSC.
- PDU corrupta o malformada donde el
priority_flag
está configurado incorrectamente.
¿Cuándo Ocurre?
Este error ocurre al enviar una PDU SMPP (como submit_sm
) con un valor de bandera de prioridad incorrecto o no soportado.
Ejemplo de Transacción PDU SMPP
El siguiente es un ejemplo de una PDU submit_sm
incorrecta con un valor inválido en priority_flag
:
0000002C (Longitud) 00000004 (ID de Comando para submit_sm) 00000000 (Estado del Comando) 00000002 (Número de Secuencia) 00000000 (Tipo de Servicio) 35363137 38363530 30303000 (Dirección de Destino) FF (Banderera de Prioridad Inválida) 00000000 (Longitud del Mensaje) 48656C6C6F (Mensaje: "Hello")
Problema: El campo priority_flag
contiene 0xFF
, que es inválido.
Ejemplo correcto de PDU submit_sm
con una bandera de prioridad válida:
0000002C (Longitud) 00000004 (ID de Comando para submit_sm) 00000000 (Estado del Comando) 00000002 (Número de Secuencia) 00000000 (Tipo de Servicio) 35363137 38363530 30303000 (Dirección de Destino) 01 (Banderera de Prioridad Válida) 00000000 (Longitud del Mensaje) 48656C6C6F (Mensaje: "Hello")
¿Cómo Solucionarlo?
- Asegúrese de que el campo
priority_flag
tenga un valor válido: 0
– Nivel 0 (prioridad más baja, predeterminado)1
– Nivel 12
– Nivel 23
– Nivel 3 (prioridad más alta)- Consulte la documentación del SMSC para ver los valores de prioridad soportados.
- Valide la estructura de la PDU antes de enviarla.
- Habilite la depuración SMPP para registrar e inspeccionar las PDUs.
Si el problema persiste, contacte a su proveedor de SMSC para confirmar los valores permitidos de la bandera de prioridad.