Hello,

I am using Mac OS X 10.5.2 with a Sierra 881U GSM modem, AT&T service provider. I have configured Kannel with the following conf file. Everything seem to work fine but no messages are sent or received.

I am using this URL for sending a message (note I have scrubbed the complete phone numbers):

http://enterprise.local:13013/cgi-bin/sendsms?username=tester&password=foobar&to=1716xxxxxxx&text=testmessage-2

Based on the log files everything seems to work fine but no message is sent. I installed the Sierra Aircard on a Windows XP machine and was able to send and receive sms, so modem works fine from Windows.

Any help with this would be appreciated.

Cheers,

Mark



I have Apache 2 running with cgi-bin enabled and the python scripts seems to be working fine but I will list the text here anyway:

#!/usr/bin/python

import os, string, sys, urllib

HOST = "localhost"
PORT = 13013
USERNAME = "tester"
PASSWORD = "foobar"

NUMBERS = "~/.sendsms.dat"

def is_a_phone_number(str):
   if not str:
       return 0
   for c in str:
       if not c in "0123456789+- ":
           return 0
   return 1

def recipient(arg):
   if is_a_phone_number(arg):
       return arg
   f = open(os.path.expanduser(NUMBERS), "r")
   arg = string.lower(arg)
   number = None
   for line in f.readlines():
       parts = string.split(line)
       if len(parts) == 2 and string.lower(parts[0]) == arg:
           number = parts[1]
           break
   f.close()
   if number:
       return number
   print "Unknown recipient", arg
   sys.exit(1)

def sendsms():
   to = urllib.quote_plus(recipient(sys.argv[1]))
   text = urllib.quote_plus(string.join(sys.argv[2:], " "))
url="http://%s:%d/cgi-bin/sendsms?username=%s&password=%s&to= %s&text=%s" \
       % (HOST, PORT, USERNAME, PASSWORD, to, text)
   f = urllib.urlopen(url)
   print f.read()
   f.close()

if __name__ == "__main__":
   sendsms()


With log-level=0 the following logs are created:

bearerbox log:

2008-05-12 15:35:32 [19950] [0] INFO: Debug_lvl = -1, log_file = <none>, log_lvl = 0 2008-05-12 15:35:32 [19950] [0] WARNING: DLR: using default 'internal' for storage type.
2008-05-12 15:35:32 [19950] [0] INFO: DLR using storage type: internal
2008-05-12 15:35:32 [19950] [0] DEBUG: Kannel bearerbox version `1.4.1'.
Build `May 11 2008 14:14:17', compiler `4.0.1 (Apple Inc. build 5465)'.
System Darwin, release 9.2.2, version Darwin Kernel Version 9.2.2: Tue Mar 4 21:17:34 PST 2008; root:xnu-1228.4.31~1/RELEASE_I386, machine i386.
Hostname enterprise.local, IP 192.168.1.117.
Libxml version 2.6.16.
Using OpenSSL 0.9.7l 28 Sep 2006.
Using native malloc.

2008-05-12 15:35:32 [19950] [0] INFO: Added logfile `/tmp/kannel.log' with level `0'. 2008-05-12 15:35:32 [19950] [0] INFO: Started access logfile `/tmp/ access.log'. 2008-05-12 15:35:32 [19950] [0] INFO: HTTP: Opening server at port 13000. 2008-05-12 15:35:32 [19950] [0] DEBUG: Started thread 1 (gwlib/ fdset.c:poller) 2008-05-12 15:35:32 [19950] [1] DEBUG: Thread 1 (gwlib/fdset.c:poller) maps to pid 19950. 2008-05-12 15:35:32 [19950] [0] DEBUG: Started thread 2 (gwlib/ http.c:server_thread) 2008-05-12 15:35:32 [19950] [2] DEBUG: Thread 2 (gwlib/ http.c:server_thread) maps to pid 19950. 2008-05-12 15:35:32 [19950] [0] DEBUG: Started thread 3 (gw/ bb_http.c:httpadmin_run)
2008-05-12 15:35:32 [19950] [0] DEBUG: starting smsbox connection module
2008-05-12 15:35:32 [19950] [3] DEBUG: Thread 3 (gw/ bb_http.c:httpadmin_run) maps to pid 19950. 2008-05-12 15:35:32 [19950] [0] INFO: BOXC: 'smsbox-max-pending' not set, using default (100). 2008-05-12 15:35:32 [19950] [0] DEBUG: Started thread 4 (gw/ bb_boxc.c:sms_to_smsboxes) 2008-05-12 15:35:32 [19950] [4] DEBUG: Thread 4 (gw/ bb_boxc.c:sms_to_smsboxes) maps to pid 19950. 2008-05-12 15:35:32 [19950] [0] DEBUG: Started thread 5 (gw/ bb_boxc.c:smsboxc_run) 2008-05-12 15:35:32 [19950] [0] INFO: Set SMS resend frequency to 60 seconds.
2008-05-12 15:35:32 [19950] [0] INFO: SMS resend retry set to unlimited.
2008-05-12 15:35:32 [19950] [0] INFO: DLR rerouting for smsc id <sierra> disabled. 2008-05-12 15:35:32 [19950] [0] INFO: AT2[sierra]: configuration doesn't show modemtype. will autodetect 2008-05-12 15:35:32 [19950] [5] DEBUG: Thread 5 (gw/ bb_boxc.c:smsboxc_run) maps to pid 19950. 2008-05-12 15:35:32 [19950] [0] DEBUG: Started thread 6 (gw/smsc/ smsc_at.c:at2_device_thread) 2008-05-12 15:35:32 [19950] [6] DEBUG: Thread 6 (gw/smsc/ smsc_at.c:at2_device_thread) maps to pid 19950.
2008-05-12 15:35:32 [19950] [6] DEBUG: AT2[sierra]: detecting modem type
2008-05-12 15:35:32 [19950] [6] INFO: AT2[sierra]: opening device
2008-05-12 15:35:32 [19950] [0] DEBUG: Started thread 7 (gw/ bb_smscconn.c:sms_router) 2008-05-12 15:35:32 [19950] [7] DEBUG: Thread 7 (gw/ bb_smscconn.c:sms_router) maps to pid 19950. 2008-05-12 15:35:32 [19950] [0] INFO: ----------------------------------------
2008-05-12 15:35:32 [19950] [6] DEBUG: AT2[sierra]: device opened
2008-05-12 15:35:32 [19950] [7] DEBUG: sms_router: time to sleep 30.00 secs. 2008-05-12 15:35:32 [19950] [0] INFO: Kannel bearerbox II version 1.4.1 starting 2008-05-12 15:35:32 [19950] [0] INFO: MAIN: Start-up done, entering mainloop
2008-05-12 15:35:32 [19950] [0] DEBUG: AT2[sierra]: start called
2008-05-12 15:35:32 [19950] [7] DEBUG: sms_router: gwlist_len = 0
2008-05-12 15:35:33 [19950] [6] DEBUG: AT2[sierra]: device opened
2008-05-12 15:35:33 [19950] [6] INFO: AT2[sierra]: speed set to 115200
2008-05-12 15:35:33 [19950] [6] DEBUG: AT2[sierra]: --> ^M
2008-05-12 15:35:35 [19950] [6] DEBUG: AT2[sierra]: --> AT^M
2008-05-12 15:35:35 [19950] [6] DEBUG: AT2[sierra]: <-- OK
2008-05-12 15:35:35 [19950] [6] DEBUG: AT2[sierra]: --> AT&F^M
2008-05-12 15:35:35 [19950] [6] DEBUG: AT2[sierra]: <-- OK
2008-05-12 15:35:35 [19950] [6] DEBUG: AT2[sierra]: --> ATE0^M
2008-05-12 15:35:35 [19950] [6] DEBUG: AT2[sierra]: <-- OK
2008-05-12 15:35:35 [19950] [6] DEBUG: AT2[sierra]: --> ATI^M
2008-05-12 15:35:35 [19950] [6] DEBUG: AT2[sierra]: <-- Sierra Wireless, Inc.
2008-05-12 15:35:35 [19950] [6] DEBUG: AT2[sierra]: <-- MC8781
2008-05-12 15:35:35 [19950] [6] DEBUG: AT2[sierra]: <-- APP1
2008-05-12 15:35:35 [19950] [6] DEBUG: AT2[sierra]: <-- OK
2008-05-12 15:35:35 [19950] [6] DEBUG: AT2[sierra]: found string <Sierra Wireless, Inc.>, using modem definition <Sierra Wireless Aircard 881>
2008-05-12 15:35:35 [19950] [6] DEBUG: AT2[sierra]: --> AT+CSMS=?^M
2008-05-12 15:35:35 [19950] [6] DEBUG: AT2[sierra]: <-- OK
2008-05-12 15:35:35 [19950] [6] INFO: AT2[sierra]: closing device
2008-05-12 15:35:35 [19950] [6] INFO: AT2[sierra]: opening device
2008-05-12 15:35:37 [19950] [6] DEBUG: AT2[sierra]: device opened
2008-05-12 15:35:37 [19950] [6] DEBUG: AT2[sierra]: device opened
2008-05-12 15:35:37 [19950] [6] INFO: AT2[sierra]: init device
2008-05-12 15:35:37 [19950] [6] INFO: AT2[sierra]: speed set to 115200
2008-05-12 15:35:37 [19950] [6] DEBUG: AT2[sierra]: --> ATZ^M
2008-05-12 15:35:37 [19950] [6] DEBUG: AT2[sierra]: <-- OK
2008-05-12 15:35:37 [19950] [6] DEBUG: AT2[sierra]: --> AT^M
2008-05-12 15:35:37 [19950] [6] DEBUG: AT2[sierra]: <-- OK
2008-05-12 15:35:37 [19950] [6] DEBUG: AT2[sierra]: --> AT&F^M
2008-05-12 15:35:38 [19950] [6] DEBUG: AT2[sierra]: <-- OK
2008-05-12 15:35:38 [19950] [6] DEBUG: AT2[sierra]: --> ATE0^M
2008-05-12 15:35:38 [19950] [6] DEBUG: AT2[sierra]: <-- OK
2008-05-12 15:35:38 [19950] [6] DEBUG: AT2[sierra]: --> AT+IFC=2,2^M
2008-05-12 15:35:38 [19950] [6] DEBUG: AT2[sierra]: <-- OK
2008-05-12 15:35:38 [19950] [6] DEBUG: AT2[sierra]: --> AT+CPIN?^M
2008-05-12 15:35:38 [19950] [6] DEBUG: AT2[sierra]: <-- +CPIN: READY
2008-05-12 15:35:38 [19950] [6] DEBUG: AT2[sierra]: <-- OK
2008-05-12 15:35:38 [19950] [6] DEBUG: AT2[sierra]: --> AT+CMGF=0^M
2008-05-12 15:35:38 [19950] [6] DEBUG: AT2[sierra]: <-- OK
2008-05-12 15:35:38 [19950] [6] DEBUG: AT2[sierra]: --> AT+CSMS=?^M
2008-05-12 15:35:38 [19950] [6] DEBUG: AT2[sierra]: <-- OK
2008-05-12 15:35:38 [19950] [6] DEBUG: AT2[sierra]: --> AT +CGDCONT=1,"IP","ISP.CINGULAR"^M
2008-05-12 15:35:38 [19950] [6] DEBUG: AT2[sierra]: <-- OK
2008-05-12 15:35:38 [19950] [6] INFO: AT2[sierra]: AT SMSC successfully opened.
2008-05-12 15:35:45 [19950] [5] INFO: Client connected from <127.0.0.1>
2008-05-12 15:35:45 [19950] [5] DEBUG: Started thread 8 (gw/ bb_boxc.c:function) 2008-05-12 15:35:45 [19950] [8] DEBUG: Thread 8 (gw/ bb_boxc.c:function) maps to pid 19950. 2008-05-12 15:35:45 [19950] [8] DEBUG: Started thread 9 (gw/ bb_boxc.c:boxc_sender) 2008-05-12 15:35:45 [19950] [9] DEBUG: Thread 9 (gw/ bb_boxc.c:boxc_sender) maps to pid 19950.
2008-05-12 15:35:57 [19950] [8] DEBUG: boxc_receiver: sms received
2008-05-12 15:35:57 [19950] [8] DEBUG: send_msg: sending msg to box: <127.0.0.1> 2008-05-12 15:35:58 [19950] [6] DEBUG: AT2[sierra]: TP-Validity- Period: 24.0 hours
2008-05-12 15:35:58 [19950] [6] DEBUG: AT2[sierra]: --> AT+CMGS=26^M
2008-05-12 15:35:58 [19950] [6] DEBUG: AT2[sierra]: <--
2008-05-12 15:35:58 [19950] [6] DEBUG: AT2[sierra]: <-- OK
2008-05-12 15:35:58 [19950] [6] DEBUG: AT2[sierra]: send command status: 0

smsbox log:

2008-05-12 15:35:45 [19951] [0] INFO: Debug_lvl = -1, log_file = <none>, log_lvl = 0
2008-05-12 15:35:45 [19951] [0] DEBUG: Kannel smsbox version `1.4.1'.
Build `May 11 2008 14:14:17', compiler `4.0.1 (Apple Inc. build 5465)'.
System Darwin, release 9.2.2, version Darwin Kernel Version 9.2.2: Tue Mar 4 21:17:34 PST 2008; root:xnu-1228.4.31~1/RELEASE_I386, machine i386.
Hostname enterprise.local, IP 192.168.1.117.
Libxml version 2.6.16.
Using OpenSSL 0.9.7l 28 Sep 2006.
Using native malloc.

2008-05-12 15:35:45 [19951] [0] INFO: Starting to log to file /tmp/ smsbox.log level 0 2008-05-12 15:35:45 [19951] [0] INFO: Added logfile `/tmp/smsbox.log' with level `0'. 2008-05-12 15:35:45 [19951] [0] INFO: Service global sender set as '17168668377' 2008-05-12 15:35:45 [19951] [0] INFO: Logging accesses to '/tmp/ access.log'. 2008-05-12 15:35:45 [19951] [0] INFO: Started access logfile `/tmp/ access.log'. 2008-05-12 15:35:45 [19951] [0] INFO: HTTP: Opening server at port 13013. 2008-05-12 15:35:45 [19951] [0] DEBUG: Started thread 1 (gwlib/ fdset.c:poller) 2008-05-12 15:35:45 [19951] [1] DEBUG: Thread 1 (gwlib/fdset.c:poller) maps to pid 19951. 2008-05-12 15:35:45 [19951] [0] DEBUG: Started thread 2 (gwlib/ http.c:server_thread) 2008-05-12 15:35:45 [19951] [2] DEBUG: Thread 2 (gwlib/ http.c:server_thread) maps to pid 19951. 2008-05-12 15:35:45 [19951] [0] INFO: Set up send sms service at port 13013 2008-05-12 15:35:45 [19951] [0] DEBUG: Started thread 3 (gw/ smsbox.c:sendsms_thread) 2008-05-12 15:35:45 [19951] [0] DEBUG: ---------------------------------------------- 2008-05-12 15:35:45 [19951] [0] DEBUG: Kannel smsbox version 1.4.1 starting 2008-05-12 15:35:45 [19951] [3] DEBUG: Thread 3 (gw/ smsbox.c:sendsms_thread) maps to pid 19951. 2008-05-12 15:35:45 [19951] [0] DEBUG: Started thread 4 (gw/ smsbox.c:obey_request_thread) 2008-05-12 15:35:45 [19951] [4] DEBUG: Thread 4 (gw/ smsbox.c:obey_request_thread) maps to pid 19951. 2008-05-12 15:35:45 [19951] [0] DEBUG: Started thread 5 (gw/ smsbox.c:url_result_thread) 2008-05-12 15:35:45 [19951] [5] DEBUG: Thread 5 (gw/ smsbox.c:url_result_thread) maps to pid 19951. 2008-05-12 15:35:45 [19951] [0] DEBUG: Started thread 6 (gw/ smsbox.c:http_queue_thread) 2008-05-12 15:35:45 [19951] [6] DEBUG: Thread 6 (gw/ smsbox.c:http_queue_thread) maps to pid 19951. 2008-05-12 15:35:45 [19951] [0] INFO: Connected to bearerbox at localhost port 13001. 2008-05-12 15:35:45 [19951] [0] DEBUG: Started thread 7 (gw/ heartbeat.c:heartbeat_thread) 2008-05-12 15:35:45 [19951] [7] DEBUG: Thread 7 (gw/ heartbeat.c:heartbeat_thread) maps to pid 19951. 2008-05-12 15:35:57 [19951] [2] DEBUG: HTTP: Creating HTTPClient for `192.168.1.117'. 2008-05-12 15:35:57 [19951] [2] DEBUG: HTTP: Created HTTPClient area 0x110a40. 2008-05-12 15:35:57 [19951] [3] INFO: smsbox: Got HTTP request </cgi- bin/sendsms> from <192.168.1.117>
2008-05-12 15:35:57 [19951] [3] INFO: sendsms used by <tester>
2008-05-12 15:35:57 [19951] [3] INFO: sendsms sender:<tester: 1716xxxxxxx> (192.168.1.117) to:<1716xxxxxxx> msg:<testmessage-2> 2008-05-12 15:35:57 [19951] [3] DEBUG: Stored UUID 75f7c77a-3189-47ff- bd29-54d0a126bfd9 2008-05-12 15:35:57 [19951] [3] DEBUG: message length 13, sending 1 messages
2008-05-12 15:35:57 [19951] [3] DEBUG: Status: 202 Answer: <Sent.>
2008-05-12 15:35:57 [19951] [3] DEBUG: Delayed reply - wait for bearerbox 2008-05-12 15:35:57 [19951] [0] DEBUG: Got ACK (0) of 75f7c77a-3189-47ff-bd29-54d0a126bfd9 2008-05-12 15:35:57 [19951] [0] DEBUG: HTTP: Resetting HTTPClient for `192.168.1.117'. 2008-05-12 15:36:27 [19951] [1] DEBUG: HTTP: Destroying HTTPClient area 0x110a40. 2008-05-12 15:36:27 [19951] [1] DEBUG: HTTP: Destroying HTTPClient for `192.168.1.117'.

kannel conf:

#---------------------------------------------
# CORE
#
# There is only one core group and it sets all basic settings
# of the bearerbox (and system). You should take extra notes on
# configuration variables like 'store-file' (or 'store-dir'),
# 'admin-allow-ip' and 'access.log'


group = core
admin-port = 13000
smsbox-port = 13001
admin-password = foobar
status-password = foobar
log-file = "/tmp/kannel.log"
log-level = 0
box-deny-ip = "*.*.*.*"
box-allow-ip = "*.*.*.*"
access-log = "/tmp/access.log"
#unified-prefix = "+358,00358,0;+,00"
#admin-deny-ip = ""
#admin-allow-ip = ""
#store-file = "kannel.store"
#ssl-server-cert-file = "cert.pem"
#ssl-server-key-file = "key.pem"
#ssl-certkey-file = "mycertandprivkeyfile.pem"

#---------------------------------------------
# SMSC CONNECTIONS
#
# SMSC connections are created in bearerbox and they handle SMSC specific # protocol and message relying. You need these to actually receive and send
# messages to handset, but can use GSM modems as virtual SMSCs


# This is a fake smsc connection, _only_ used to test the system and services.
# It really cannot relay messages to actual handsets!

group = smsc
smsc = at
smsc-id = sierra
device = /dev/cu.wwan
speed = 115200
my-number = 17168668377
modemtype = auto
connect-allow-ip = "*.*.*.*"
#port = 10000

# GSM Modem

group = modems
id = sierra
name = "Sierra Wireless Aircard 881"
detect-string = "Sierra Wireless, Inc."
init-string = AT+CGDCONT=1,"IP","ISP.CINGULAR"

#---------------------------------------------
# SMSBOX SETUP
#
# Smsbox(es) do higher-level SMS handling after they have been received from # SMS centers by bearerbox, or before they are given to bearerbox for delivery

group = smsbox
bearerbox-host = localhost
sendsms-port = 13013
global-sender = 17168668377
sendsms-chars = "0123456789 +-"
log-file = "/tmp/smsbox.log"
log-level = 0
access-log = "/tmp/access.log"

#---------------------------------------------
# SEND-SMS USERS
#
# These users are used when Kannel smsbox sendsms interface is used to
# send PUSH sms messages, i.e. calling URL like
# http://kannel.machine:13013/cgi-bin/sendsms?username=tester&password=foobar ...

group = sendsms-user
username = tester
password = foobar
user-allow-ip = "*.*.*.*"
concatenation = true
#max-messages = 10
#user-deny-ip = ""

#---------------------------------------------
# SERVICES
#
# These are 'responses' to sms PULL messages, i.e. messages arriving from # handsets. The response is based on message content. Only one sms- service is
# applied, using the first one to match.

group = sms-service
keyword = nop
text = "You asked nothing and I did it!"

# There should be always a 'default' service. This service is used when no
# other 'sms-service' is applied.

# Default service - receive messages from client

group = sms-service
keyword = default
get-url = "http://enterprise-local/~marklgreen/receive-sms.php?from= %p&text=%a"
accept-x-kannel-headers = true
max-messages = 0
accepted-smsc = sierra
#keyword-regex=^(.)+$

# Reply to client

group = sms-service
keyword = www
get-url = "http://localhost:13013/cgi-bin/sendsms?username=tester&password=foobar&from= %p&to=%P&text=%r"
#keyword-regex=^(.)+$


Reply via email to