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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.