Hi,
Thanks for your comments...

1/
I saw that there is somewhere a possibility to set some priority for
sending, and after the queue is empty the receiveing process start...
But not able to find it again ? Was i dreamming ? 

About deferred time option, we can't use it as in our configuration, it
is another server that decides which server / when / how...


2/
We try with the exact copy of the whole conf on a faster server (u160
SCSI one, with huge RAM).
We get no trouble...any suggest except to change the others ..?
In fact here is the whole technical conf :
Distant DB server, on which we put the DB with DLR table and pending SMS
table.
Local servers with one modem each (for security reason )
One local server for asking the distant DB server if there's some SMS to
send.
If yes, takes these SMS and dispatch them locally. 
(we are trying to optimize all that by asking to each kannel servers the
queue state but get an error/or empty queue -this is wrong!- when doing
this dispatch).

Can the fact that the DLR DB server is distant (and the network is 5mb
from it, 128K to it) be a problem ?

After reading your message, we do not understand why it's working on one
server and not on the other ??

We can't desactivate the DLR so the only ways would be :
1/ trying with a replicate locate DB
2/ Setting the bearerbox to first send all the SMS, and only after to be
in "receive mode".

Will try the 1/ but have you any idea for the 2/  ?

Thanks a lot.
Marco.


-----Message d'origine-----
De : [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] De la
part de Davy Chan
Envoy� : lundi 21 f�vrier 2005 04:40
� : [email protected]
Objet : Re: Can't send more than 9 sms ! Help !!!


**>From: "JML" <[EMAIL PROTECTED]>
**>To: <[email protected]>
**>Subject: Can't send more than 9 sms ! Help !!!
**>Date: Sun, 20 Feb 2005 14:51:37 +0100
**>
**>Hi !
**>Using kannel 1.4.0, with wavecom modems, on mandrake 10.1. **>We use
a http interface for sending sms. **>Everything is ok with a one by one
SMS( sending, receiving, Mysql DLR's,
**>etc.)
**>
**>But as soon as we try more ( as few as 30!) we get errors : Here is
the **>debug : 
**>[...] 

  [ ... lines deleted ... ]

**>What's going wrong ???
**>Please heeeeeellllllp !!

Think about what is going on in the modem.  You are not only asking the
modem to send the SMS, but also to receive any DLRs coming from the
Operator at the same time.

What is most likely happening is that the bearerbox's sending out of SMS
is being interrupted by the unsolicited notifications caused by
reception of the DLR from the operator.

Here is how the bearerbox sends an SMS through the GSM modem:
  - When the bearerbox tries to send out an SMS, it issues an
    AT+CMGS command to the modem.
  - The bearerbox expects an '>' symbol to indicate the modem is ready
    to receive the hexadecimal representation of PDU.
  - The bearerbox sends the hexadecimal representation of the PDU and
    then a ^Z (ASCII character 0x1A) to indicate it is done with
    the PDU.
  - The bearerbox expects the GSM modem to respond back with:
      +CMGS: ##
    where ## is a number representing the current outgoing SMS count.

At any time the above sequence is interrupted (for example by
a reception of a DLR), then the bearerbox assumes the sending of the SMS
failed and will retry to submit the scenario specified about again (up
to 2 addition attempts).

When the DLR is sent by the Operator, the GSM modem will receive it and
interrupt anything currently happening and issue an unsolicited
notification (in this case a +CMT or +CMTI) to indicate it received
something from the operator.  This DLR can and does interfer with the
bearerbox's expected send/response sequence.

The only thing to do would be to:
  - Not request the DLR
  - Not send SMS until you received the DLR from the previous sent SMS
  - Send out the SMS but set the deferred delivery option so that you
    can send out all the SMS first and then get the DLR afterwards.
  - Re-write the AT driver to have a more robust state machine.

See ya...

d.c.






Reply via email to