RE: [FYI] HTTP request queueing of sms-services
Mauricio Ramos <[email protected]>
| Newsgroups | gmane.comp.mobile.kannel.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi Stipe and all, I sounds very good but I have some questions: 1) What will happen if Kannel has been gracefuly shut down and still there are get-urls queued? Kannel would recover the queue from store-file and keep requesting the remaining times? 2) Shouldn't this mechanism be in sms-service group configuration rather than smsbox group? So http queueing would be configured on a per-application basis. 3) Now, not in regards of the get-urls but dlr-urls, is there a way this queueing mechanism be available for DLR http requests? I realized that dlr-url requests are retried just one time and than they are left in store-file. When I restart Kannel it just retry them more two times and so far every time I restart Kannel. Isn't it wrong? 4) Why MySQL hasn't been used to store get-urls like dlr-urls? -----Original Message----- From: Stipe Tolj [mailto:[email protected]] Sent: quinta-feira, 1 de agosto de 2002 12:02 To: [email protected] Subject: [FYI] HTTP request queueing of sms-services Hi all, first of all, beware this is experimental, but it works very well for me! Today I implemented the HTTP request queueing that was necessary to have a more sophisticated buffering of outgoing HTTP requests when sms-services use get-url or post-url. By this feature the messages does not get lost if the corresponding HTTP server on the other side is down or return an error HTTP response code (ie. 500 for internal server error). This is very essential when you do forwarding of incoming sms messages to customers HTTP server and they require you not to drop the messages if the HTTP server is at the specific time smsbox tries to connect unavaialble. Ok, here is a description what is done: Added another List 'smsbox_http_requests' which represents the qeuue of failing HTTP requests to be retried. Withing 'url_result_thread' we identify failed HTTP requests and queue them using the extended 'remember_receiver' and 'get_receiver' mappers into the 'smsbox_http_requests'. The queue is consumed by the 'http_queue_thread' and injected into the HTTPCaller list again. BTW, the commited patch does not change current behaviour, which means by default HTTP request queueing inside smsbox is turned off. To activate the HTTP request queueing add the following config directives to the smsbox group: group = smsbox ... http-request-retry = 10 http-queue-delay = 10 which means try to resend every HTTP request 10 times in total and delay 10 sec. for every loop inside the queueing thread. See the user's guide for the config directives. Keep in mind that the queue is held in memory, hence don't mess with the retry and delay parameters. Please do update you test systems with the a fresh cvs snapshot and try the new feature, we need comments on this, please. Stipe [email protected] ------------------------------------------------------------------- Wapme Systems AG Vogelsanger Weg 80 40470 Düsseldorf Tel: +49-211-74845-0 Fax: +49-211-74845-299 E-Mail: [email protected] Internet: http://www.wapme-systems.de ------------------------------------------------------------------- wapme.net - wherever you are