ESME_RMSGQFUL in SMPP
What is ESME_RMSGQFUL?
ESME_RMSGQFUL (Error Code: 0x00000014) is an SMPP error indicating that the message queue at the SMSC is full, preventing new messages from being accepted.
Possible Causes
- The SMSC's message queue has reached its capacity.
- There is high traffic or congestion at the SMSC.
- The ESME has exceeded its allowed message submission rate.
- System limitations prevent further messages from being stored.
- The SMSC has imposed temporary restrictions on message processing.
When Does It Happen?
This error occurs when sending a submit_sm
PDU, and the SMSC is unable to accept the message due to queue overflow.
Example SMPP PDU Transaction
Example submit_sm
PDU
00000033 (Length) 00000004 (Command ID for submit_sm) 00000000 (Command Status) 00000001 (Sequence Number) 00 (Service Type) 01 (Source Address TON) 01 (Source Address NPI) 31323334 00 (Source Address: "1234") 01 (Destination Address TON) 01 (Destination Address NPI) 39383736 00 (Destination Address: "9876") 00 (ESM Class) 00 (Protocol ID) 00 (Priority Flag) 00000000 (Schedule Delivery Time - Not Set) 00000000 (Validity Period - Not Set) 00 (Registered Delivery) 00 (Replace If Present Flag) 00 (Sm Default Msg ID) 0005 (Message Length) 48656C6C 6F (Message: "Hello")
Response PDU (submit_sm_resp
) with ESME_RMSGQFUL
00000010 (Length) 80000004 (Command ID for submit_sm_resp) 00000014 (Command Status - ESME_RMSGQFUL) 00000001 (Sequence Number)
Issue: The SMSC is unable to process the message due to a full queue.
How to Solve It?
- Reduce the message submission rate to avoid overloading the SMSC.
- Implement message queuing on the ESME side to retry later.
- Check with the SMSC provider to see if capacity limits can be increased.
- Ensure that messages are being dequeued and processed correctly.
- Monitor traffic patterns and adjust sending strategies to avoid congestion.
- Enable debugging logs to inspect the exact values being sent in the PDU.
If the issue persists, contact the SMSC provider for further troubleshooting and potential capacity adjustments.