Hi,

I have been doing some investigation into tighter integration of my application with kannel. As such I have been writing some applications that communicate directly with bearerbox, connecting to the smsbox port. For sake of simplicity lets call my app mysmsbox.

What I noticed was that when a message is sent from bearebox it stays in the storefile until an ack is sent back. This is great if mysmsbox dies before it has done processing the message.

But I also notice that if you send ack_success or ack_failed back to bearerbox it seems to make no difference.

Ideally I think it would be better if you sent back ack_failed for bearebox to requeue the message (possibly after some small time delay). This way if you were unable to process the message for some reason a different mysmsbox has the chance to do it. Under the current situation you have to wait for the current box to be in a situation where it can now process the message, or it needs to restart in order to allow another mysmsbox a chance.

In the situation where you only have 1 smsbox type app connected it really makes no difference. But if you are looking for a more resilient solution then multiple smsbox apps on different servers is the way forward, but only if you have a way of failing messages over from one smsbox to another.

I'd be interested in peoples comments, and how easy they think it will be to implement.

Regards

Ben


Reply via email to