ESME_RINVREPFLAG en SMPP

¿Qué es ESME_RINVREPFLAG?

ESME_RINVREPFLAG (Código de Error: 0x00000054) es un error de SMPP que indica que el campo replace_if_present_flag en el PDU submit_sm contiene un valor inválido o no soportado.

Posibles Causas

  • El campo replace_if_present_flag contiene un valor incorrecto o no definido.
  • El SMSC no soporta el reemplazo de mensajes.
  • El ESME está intentando usar una configuración de bandera inválida.

¿Cuándo Ocurre?

Este error ocurre cuando un ESME envía una solicitud submit_sm con un valor inválido en replace_if_present_flag que no es reconocido por el SMSC.

Ejemplo de Transacción PDU en SMPP

PDU submit_sm Incorrecto (Banderá de Reemplazo Si Presente Inválida)

0000002F (Longitud)
00000004 (ID de Comando para submit_sm)
00000000 (Estado del Comando)
00000001 (Número de Secuencia)
00 (Tipo de Servicio)
01 (TON de Dirección de Origen - Internacional)
01 (NPI de Dirección de Origen - ISDN)
31323334 00 (Dirección de Origen: "1234")
01 (TON de Dirección de Destino - Internacional)
01 (NPI de Dirección de Destino - ISDN)
39383736 00 (Dirección de Destino: "9876")
00 (Clase ESM)
00 (ID de Protocolo)
00 (Banderá de Prioridad)
00000000 (Tiempo de Entrega Programado - No Establecido)
00000000 (Período de Validez - No Establecido)
FF (Banderá de Reemplazo Si Presente Inválida)
00 (ID de Mensaje Predeterminado)
0005 (Longitud del Mensaje)
48656C6C 6F (Mensaje: "Hello")

PDU de Respuesta (submit_sm_resp) con ESME_RINVREPFLAG

00000010 (Longitud)
80000004 (ID de Comando para submit_sm_resp)
00000054 (Estado del Comando - ESME_RINVREPFLAG)
00000001 (Número de Secuencia)

Problema: El campo replace_if_present_flag está configurado con un valor inválido (0xFF), que no es reconocido por el SMSC.

¿Cómo Solucionarlo?

  • Usa un valor válido para replace_if_present_flag:
    • 0x00 - No reemplazar si está presente
    • 0x01 - Reemplazar si está presente
  • Asegúrate de que el SMSC soporte el reemplazo de mensajes antes de usar la bandera.
  • Verifica la estructura del PDU y asegúrate de que todos los valores de los campos estén configurados correctamente.
  • Consulta con el proveedor del SMSC los valores soportados si el problema persiste.

Si el problema continúa, habilita el registro de depuración y revisa las transacciones SMPP en bruto para un diagnóstico más detallado.

More information