[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RFD: how to handle timeouts within SendSMS() [was: Re: --sendsms timed o
RFD: how to handle timeouts within SendSMS() [was: Re: --sendsms timed out]
Fri, 12 Jul 2002 00:27:18 +0200 (CEST)
On Thu, 11 Jul 2002, Pawel Kot wrote:
> On Thu, 11 Jul 2002, Jussi Aalto wrote:
> > On Thursday 11 July 2002 01:34, Pawel Kot wrote:
> > > On Thu, 11 Jul 2002, Jussi Aalto wrote:
> > > > (built from latest cvs)
> > >
> > > [...]
> > >
> > > > SMS Send failed (Command timed out.)
> > >
> > > Does message get sent or not?
> > Nope.
> Thanks for the report. I'll retest it and try to fix it tonight.
Well, I tested it with 6310 with model = AT. Works flawlessly.
Unfortunately no other phone (well, just 6210, 9210 refuses to work; hope
to try some Siemens tomorrow) here to test at the moment.
It is very strange that this message does not get sent. Could you please
try to give the commands you see in the dump manually with eg. minicom?
Now as we are on this topic, I'd like to start the discussion. Marcin
pointed many times that this timeout it one of the main gnokii flaws.
Let me tell the story again. When you send SMS it is pushed to SMSC.
Probably you noticed that the phone wait some time and blinks on the
screen with "SMS sent" or "SMS failed". This is the result of the SMSC
response. SMSC is some box that processes the incoming messages and
forwards them somewhere (or discards). You can imagine that when SMSC is
overloaded (or how they say these days DoSed ;-)) it will take more time
to process all messages. It means also that it may take more time to
receive the response from SMSC. Note that "SMS sent" means only that SMSC
confirms that it received given SMS message.
Gnokii now waits given timeout for the response. In some cases it is not
enough time for SMSC. Then we got "timeout" error. The alternative (used
by Marcin) is to wait forever unless the user cancels it. Looks good, but
has few disadvantages. It is completly useless for applications like
smsd. It requires giving control to the application for the issue that
should be handled by the lower level. It blocks the application (it needs
to check the responses from the phone regularly).
Any opinions on this?
mailto:address@hidden :: mailto:address@hidden
http://kt.linuxnews.pl/ :: Kernel Traffic po polsku