Ozeki SMS delivery message status values
Introduction
This document presents the SMS delivery status values that can be specified in the status column of the ozekimessageout database table, and explains what they mean. You can learn about how the status of the text message changes during the process of sending the SMS.
What is sms sequence diagram
The SMS sequence diagram depicts the interactions between the components involved in the process of sending and receiving SMS messages.
It shows how the user starts an SMS request, which is processed by the Ozeki SMS gateway, then sent to the SMSC, and finally, the SMS message reaches the recipient.
Components involved in sending the text message: SMS client, Ozeki SMS Gateway, SMSC and the receiving mobile phone.
Status | Description |
send |
The message has been inserted into the database table (ozekimessageout), but not yet processed by Ozeki NG. This is the status to be specified when inserting a new message. |
sending | The message has been processed by Ozeki NG, and inserted into the Database user's Outbox folder, where it is waiting to be sent out. |
sent | The message has been sent out to the SMS Center of a specified service provider, which has accepted the message for delivery. |
notsent | The message has not been sent out to the SMS Center of a specified service provider. Some error has caused the sending to fail. |
delivered | The specified service provider has reported that the message has been delivered to the recipient. |
undelivered | The specified service provider has reported that the delivery of the message to the recipient has failed. |
SMS Status changing
The next time SMS sequence diagram presents how and when the status of an SMS message changes.
#2: SQL select: "SELECT id,sender,receiver,msg,msgtype,operator FROM ozekimessageout WHERE status='send'". This query is executed when the message polling is due. The frequency of polling can be specified for Ozeki NG during the configuration of the Database user, in the SQL for sending tab. Picture help
#3: SQL update: "UPDATE ozekimessageout SET status='sending' WHERE id='$id'". This query is executed when the message has been polled and it has been inserted into the sender user's Outbox folder. The status of the message has to be set to 'sending' to stop it from being sent out again if a row of the table has already been read but not yet sent.
#4: SQL update: "UPDATE ozekimessageout SET status='sent', senttime='$senttime' WHERE id='$id'". This query is executed when the message has been accepted by the SMS center for delivery.
#5: SQL update: "UPDATE ozekimessageout SET status='delivered' WHERE id='$id'". This query is executed when the message has been delivered to the recipient.
#6: SQL update: "UPDATE ozekimessageout SET status='notsent' WHERE id='$id'". This query is executed when the message has failed to be sent out to the SMS Center. This may be due to several reasons, e.g. insufficient balance, incorrect settings etc.
#7: SQL update: "UPDATE ozekimessageout SET status='undelivered' WHERE id='$id'". This query is executed when the message has been accepted by the SMS Center, but it has failed to deliver it to the recipient, e.g. because they are never available (their phone is never switched on).
Note
The SQL statements above can be "freely" modified in the SQL for sending tab of the Database user's configuration form. Picture help
More information