Hi All, I kept fighting with this problem and still haven't been able to
solve it, but noticed something weird, when I call the status page I see
that there are always two smsbox instances:

<boxes>
    <box>
        <type>smsbox</type>
        <id>sqlbox</id>
        <IP>127.0.0.1</IP>
        <queue>2128</queue>
        <status>on-line 0d 12h 30m 6s</status>
        <ssl>no</ssl>
    </box>
    <box>
    <type>smsbox</type>
        <id>smsbox</id>
        <IP>127.0.0.1</IP>
        <queue>0</queue>
        <status>on-line 0d 12h 30m 2s</status>
        <ssl>no</ssl>
    </box>
</boxes>

As you can see, only one of the two instances is queueing messages.

My configuration is

Bearerbox <-----> sqlbox <--------> smsbox

So in my init script I first start the bearerbox, next the sqlbox and then
the smsbox, but the problem is that in my kannel conf I have to include the
smsbox group configuration or it's going to FAIL with this error:

2012-01-11 21:13:25 [30555] [0] ERROR: No 'smsbox' group in configuration,
but smsbox-port set

I've also tried starting only the bearerbox and the sqlbox with no smsbox
and this time the status page shows me only one instance, but this instance
isn't "operational",  I can't use the send-sms interface (The port isn't
even opened).

What can I do to solve this problem? Or at least how can I have two smsbox
instances, but that all MOs are delivered to the smsbox instance defined on
the smsbox conf and not the one in kannel.conf?

My config files are as follow:

Kannel.conf:
> group = core
> admin-port = 13000
> admin-password = K4nn3lus3r
> status-password = K4nn3lst4ts
> admin-allow-ip = "*.*.*.*"
> smsbox-port = 13001
> log-file = "/var/log/kannel/bearerbox.log"
> #access-log = "/var/log/kannel/bearerbox.access.log"
> log-level = 0
> store-type= file
> store-location = "/var/kannel/queue"
> sms-resend-retry = 10
> #smsbox-max-pending = 500
> dlr-storage=mysql
> 
> group = mysql-connection
> id = sqlbox-db
> host = XXXXXXXXXXX
> port = 3306
> username = xxxxx
> password = xxxxx
> database = kannel
> #max-connections =1
> 
> 
> 
> group = dlr-db
> id = sqlbox-db
> table = dlr
> field-smsc = smsc
> field-timestamp = ts
> field-source = source
> field-destination = destination
> field-service = service
> field-url = url
> field-mask = mask
> field-status = status
> field-boxc-id = boxc
> 
> 
> group = smsbox
> bearerbox-host = localhost
> bearerbox-port = 13003
> sendsms-port = 13013
> mo-recode = 0
> #smsbox-max-pending = 10000
> log-file="/var/log/kannel/smsbox.log"
> log-level=0
> #immediate-sendsms-reply = true
> 
> group = sms-service
> keyword = default
> max-messages = 0
> get-url = 
> "http://xxxxxxxx/moprocessor.asp?phone=%p&text=%a&smscid=%i&receiver=%P&report
> e=%d"
> 
> include = "/etc/kannel/users-enabled"
> include = "/etc/kannel/carriers-enabled"
> 
Sqlbox.conf:
> group = sqlbox
> id = sqlbox-db
> bearerbox-host = localhost
> bearerbox-port = 13001
> smsbox-port = 13003
> sql-log-table = sent_sms
> sql-insert-table = send_sms
> log-file = "/var/log/kannel/kannel-sqlbox.log"
> log-level = 0
> 
> group = mysql-connection
> id = sqlbox-db
> host = xxxxxxxxxx
> port = 3306
> username = xxxxx
> password = xxxxxxx
> database = kannel
> max-connections =10

Smsbox.conf:
> include = "/etc/kannel/kannel.conf"
> 
> group = dlr-db
> id = sqlbox-db
> table = dlr
> field-smsc = smsc
> field-timestamp = ts
> field-source = source
> field-destination = destination
> field-service = service
> field-url = url
> field-mask = mask
> field-status = status
> field-boxc-id = boxc
> 
> 
> group = smsbox
> bearerbox-host = localhost
> bearerbox-port = 13003
> sendsms-port = 13013
> mo-recode = 0
> #smsbox-max-pending = 10000
> log-file="/var/log/kannel/smsbox.log"
> log-level=0
> #immediate-sendsms-reply = true
> 
> 
> group = sms-service
> keyword = default
> max-messages = 0
> get-url = 
> "http://xxxxxxxxxxxxx/moprocessor.asp?phone=%p&text=%a&smscid=%i&receiver=%P&r
> eporte=%d"
> 
> include = "/etc/kannel/users-enabled"
> include = "/etc/kannel/carriers-enabled"
> 
And my init script is this:
> #!/bin/sh
> 
> # Configuration file
> CONF=/etc/kannel/kannel.conf
> SQL_CONF=/etc/kannel/sqlbox.conf
> SMSBOX_CONF=/etc/kannel/smsbox.conf
> 
> # Kannel boxes
> BEARERBOX=/usr/local/sbin/bearerbox
> SMSBOX=/usr/local/sbin/smsbox
> #WAPBOX=/usr/local/sbin/wapbox
> SQLBOX=/usr/local/sbin/sqlbox
> 
> # Debug level: 0..4
> DEBUGLEVEL=4
> 
> # Kannel user account
> USER=kannel
> 
> # Check that boxes and config are ok
> [ -x $BEARERBOX ] || exit 0
> [ -x $SMSBOX ] || exit 0
> #[ -x $SQLBOX ] || exit 0
> [ -f $CONF ] || exit 0
> 
> case "$1" in
> start)
>        ulimit -n 8192
>        echo -n "Starting bearerbox... "
>        #$BEARERBOX -v $DEBUGLEVEL --daemonize --user $USER $CONF &
>        $BEARERBOX -v $DEBUGLEVEL --user $USER $CONF &
>        echo "done"
>        echo -n
>        sleep 3
> 
>        echo -n "Starting sqlbox... "
>        #$SMSBOX -v $DEBUGLEVEL --daemonize --user $USER $CONF &
>        $SQLBOX -v $DEBUGLEVEL --user $USER $SQL_CONF &
>        echo "done"
>        echo -n
>        sleep 3
> 
>        echo -n "Starting smsbox... "
>        #$SMSBOX -v $DEBUGLEVEL --daemonize --user $USER $SMSBOX_CONF &
>        $SMSBOX -v $DEBUGLEVEL --user $USER $SMSBOX_CONF &
>        echo "done"
> 
> stop)
>        echo -n "Shutting down smsbox... "
>        killall smsbox
>        echo "done"
>        #echo -n "Shutting down wapbox... "
>        #killall wapbox
>        #echo "done"
>        echo -n "Shutting down sqlbox... "
>        killall sqlbox
>        echo "done"
>        sleep 3
>        echo -n "Shutting down bearerbox... "
>        killall bearerbox
>        echo "done"
>        ;;
> restart)
>        $0 stop
>        sleep 3
>        $0 start
>        ;;
> *)
>        echo "Usage: kannel {start|stop|restart}"
>        exit 1
> esac
> 
> exit 0
> 
> 

From:  Juan Luis Gomez Correa <juanluis.go...@blipblip.com.co>
Date:  Fri, 06 Jan 2012 10:37:52 -0500
To:  <users@kannel.org>
Subject:  Queued MOs

Hi everyone, hope somebody could help me with this, I've reread the docs and
tried to look everywhere to no avail.

I'm currently having some issues with some MOs that are getting queued and
don't know why this is happening, just to note that this happens with some
messages, not all messages.

In my configuration file I have only one sms-service that looks like this:

group = sms-service
keyword = default 
max-messages = 0
get-url = 
"http://XXXXXXXXXXXXXX?phone=%p&text=%a&smscid=%i&receiver=%P&reporte=%d";

As far as I understand the docs, every message should be processed by the
above URL, but in my queue I have some messages that will stay there forever
and the queue will keep growing.

What could be the cause for this?

Thanks,

Juanele.


  • Queued MOs Juan Luis Gomez Correa
    • Re: Queued MOs Juan Luis Gomez Correa

Reply via email to