ESME_RINVSCHED en SMPP

¿Qué es ESME_RINVSCHED?

ESME_RINVSCHED (Código de Error: 0x00000061) es un error de SMPP que indica que el campo schedule_delivery_time en una solicitud submit_sm contiene un formato o valor inválido.

Posibles Causas

  • El campo schedule_delivery_time no tiene el formato correcto.
  • La fecha y hora proporcionadas están en un formato no soportado.
  • El SMSC no soporta la entrega programada de mensajes.
  • La hora programada está en el pasado.

¿Cuándo Ocurre?

Este error ocurre cuando un ESME envía un SMS con un campo schedule_delivery_time mal formateado.

Ejemplo de Transacción SMPP PDU

PDU submit_sm Incorrecta (Hora de Entrega Programada Inválida)

0000003F (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 (Bandera de Prioridad)
31323039 3031303030303030 00 (Hora de Entrega Programada Inválida)
00000000 (Período de Validez - No Establecido)
00 (Bandera Reemplazar Si Presente)
00 (ID de Mensaje Predeterminado)
0005 (Longitud del Mensaje)
48656C6C 6F (Mensaje: "Hello")

PDU de Respuesta (submit_sm_resp) con ESME_RINVSCHED

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

Problema: El campo schedule_delivery_time está mal formateado, lo que provoca el rechazo por parte del SMSC.

¿Cómo Solucionarlo?

  • Asegúrate de que el campo schedule_delivery_time siga el formato de tiempo absoluto o relativo de SMPP:
    • Formato de Tiempo Absoluto: YYMMDDhhmmss000R (ej., 240211153000000R para 11 de Feb, 2024, 15:30:00 UTC)
    • Formato de Tiempo Relativo: 000001000000000R (entrega en 1 hora a partir de ahora)
  • Asegúrate de que la hora programada sea en el futuro.
  • Verifica con el proveedor del SMSC si soporta entrega programada.
  • Usa caracteres de terminación correctos (ej., 00 para cadenas terminadas en NULL).

Si el problema persiste, revisa los logs de SMPP y asegúrate de usar el formato de programación correcto.

More information