ESME_RTLVNOTALLWD en SMPP

¿Qué es ESME_RTLVNOTALLWD?

ESME_RTLVNOTALLWD (Código de Error: 0x00000068) es un error de SMPP que indica que un parámetro Tag-Length-Value (TLV) incluido en la solicitud no está permitido o no es compatible con el SMSC.

Causas Posibles

  • La solicitud contiene un parámetro TLV inválido o no soportado.
  • El TLV no es aplicable para el tipo de solicitud enviada.
  • El SMSC tiene políticas estrictas sobre qué TLVs pueden incluirse.
  • Formato o codificación incorrecta de los campos TLV.

¿Cuándo Ocurre?

Este error ocurre cuando un ESME incluye un TLV no soportado en una solicitud SMPP, y el SMSC rechaza la solicitud debido a limitaciones de políticas o capacidades.

Ejemplo de Transacción PDU en SMPP

PDU de Solicitud (submit_sm) Enviada por ESME con un TLV Inválido

00000040 (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)
00000000 (Tiempo de Entrega Programado - No Establecido)
00000000 (Período de Validez - No Establecido)
00 (Bandera de Reemplazo Si Presente)
00 (ID de Mensaje Predeterminado Sm)
0005 (Longitud del Mensaje)
48656C6C 6F (Mensaje: "Hello")
0421 0001 01 (TLV Inválido: Etiqueta 0x0421, Longitud 1, Valor 01)

PDU de Respuesta (submit_sm_resp) con ESME_RTLVNOTALLWD

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

Problema: El SMSC rechazó la solicitud debido a la presencia de un TLV no soportado (ej., Etiqueta 0x0421).

¿Cómo Solucionarlo?

  • Verifica la especificación SMPP para parámetros TLV válidos para la operación específica.
  • Elimina cualquier TLV innecesario de la solicitud.
  • Asegúrate de que los valores TLV estén correctamente formateados y dentro de los rangos permitidos.
  • Consulta con el proveedor del SMSC para obtener una lista de TLVs soportados.
  • Prueba sin el TLV para confirmar que es la causa del rechazo.

Resolver este problema requiere verificar el uso correcto del TLV y alinearse con las capacidades del SMSC.

More information