Message queues

In Ozeki NG SMS Gateway message queues are used for scheduling messages coming from users to being sent out. Therefore, it can be ensured that messages of each user will be sent out even in cases when one user has a great number of messages waiting for sending in its message queue.

In Ozeki NG SMS Gateway each of the users has a separate message queue that is used only by the given user (Figure 1). If the user has any number of outgoing messages, they will be forwarded to the message queue of the given user. For example, messages from user admin are forwarded into the message queue of user admin.

At the other end of the message queue messages are polled out by so called round robin algorithm. In this case the algorithm selects one of the messages that has been stored the longest in each message queue within one round (First in, First out algorithm). The selected messages are forwarded to the outgoing route table.

The outgoing route table checks whether the properties of a message match the directives of a routing rule. If there is a match, the message will be delivered to the Service Provider in the way specified in the rule. In other words, if a Destination (Service Provider) is specified in the outgoing route, the message will be sent out according to it.

If the Destination is not specified (it is defined as ANY) the outgoing route table selects a service provider connection and sends out the message via that connection.

message queues
Figure 1 - Message queues

Round Robin algorithm
Inbound routing in Ozeki NG SMS Gateway
Outbound routing in Ozeki NG SMS Gateway

Persistent message queues

In Ozeki NG SMS Gateway you can use Persistent message queues option. If this option is enabled, message queues are stored in a file. If you do not use this option, then messages are only stored in the memory of the computer. By default, this option is enabled in the software. If you do not want to use this option you can disable it in Advanced tab of Server Preferences menu (Figure 2).

advanced tab
Figure 2 - Enable/Disable persistent message queues

If persistent message queues are used (and messages are stored in file) messages will be loaded back to the message queue of each user in case of restarting the service.

If you do not use persistent message queues option and restart the service, messages will be lost from the memory.

Example

For example, there are 1000 messages in the message queue.

Persistent message queues option is enabled: if you restart the service all the 1000 messages will be loaded back to the message queue and will be sent out.

Persistent message queues option is NOT enabled: if you restart the service all of the 1000 messages will be lost from the memory.

Dig deeper!
People who read this also read...


Round Robin algorithm
Inbound routing in Ozeki NG SMS Gateway
Outbound routing in Ozeki NG SMS Gateway

More information