Dear Kannel users, I changed to a Motorola U9 phone.
In minicom, I have this response from the phone: AT+CNMI=? +CNMI: (0,3),(0-2),(0),(0),(0) So, I set the init-string to: AT+CNMI = 3,2,0,0,0 I can also use minicom to send SMS out. My modem config file is as this: group = modems id = moto name = 'motorola phone' #init-string = "AT+CGDCONT=1" # init-string = "ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0" # detect-string = "MODEM" # detect-string2 = "" [Default] init-string = "AT+CNMI=3,2,0,0,0" # speed = 460800 [Default] # enable-hwhs = "AT+IFC=2,2" [Default] need-sleep = [Default] no-pin = false [Default] no-smsc = false [Default] sendline-sleep = 100 [Default, miliseconds] keepalive-cmd = "AT+CMEE=1" [Default] broken = false [Default] message-storage = "SM" enable-mms = false [Default] the smskannel.conf looks like this: # # THIS IS A SAMPLE CONFIGURATION FOR SMS KANNEL # # This basic version is used for system testing. It expects 'fakesmsc' to # send messages which are replied with simple fixed text message. # It is run like this: # # 1% gw/bearerbox gw/smskannel.conf # 2% gw/smsbox gw/smskannel.conf # 3% test/fakesmsc -i 0.1 -m 100 "123 345 text nop" # # ..all 3 commands in separate shells (or screen sessions) # Note that you can run them in different machines but have to # add certain command line argument and configuration variables then # # # For any modifications to this file, see Kannel User Guide # If that does not help, see Kannel web page (http://www.kannel.org) and # various online help and mailing list archives # # Notes on those who base their configuration on this: # 1) check security issues! (allowed IPs, passwords and ports) # 2) groups cannot have empty rows inside them! # 3) read the user guide # # Kalle Marjola for Kannel project 2001, 2004 #--------------------------------------------- # 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 = bar #status-password = foo #admin-deny-ip = "" #admin-allow-ip = "" #log-file = "/tmp/kannel.log" #log-level = 0 box-deny-ip = "*.*.*.*" box-allow-ip = "127.0.0.1" #unified-prefix = "+358,00358,0;+,00" #access-log = "/tmp/access.log" #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 = fake #smsc-id = FAKE #port = 10000 #connect-allow-ip = 127.0.0.1 group = smsc smsc = at modemtype = moto device=/dev/ttyACM0 my-number = 123123123123 connect-allow-ip = 127.0.0.1 log-level = 0 #--------------------------------------------- # 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 = 127.0.0.1 sendsms-port = 13013 global-sender = 13013 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-deny-ip = "" #user-allow-ip = "" concatenation= true max-messages = 10 #--------------------------------------------- # 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 = default keyword-regex = .* catch-all = yes max-messages = 0 get-url = "http://localhost/xxxxxxxxxxxxxxxxxxxxxxxx" #text = "default sms service no url" #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. #group = sms-service #keyword = default #text = "No service specified" include = "/usr/local/kannel/modems.conf" With thes I can start the bearer box and sms box. However, when i tried to send sms, i have generic error in bearer box. The response in bearer box looks like this: 2011-01-13 15:27:54 [8114] [0] INFO: ---------------------------------------- 2011-01-13 15:27:54 [8114] [0] INFO: Kannel bearerbox II version 1.4.3 starting 2011-01-13 15:27:54 [8114] [0] INFO: MAIN: Start-up done, entering mainloop 2011-01-13 15:27:54 [8114] [0] DEBUG: AT2[/dev/ttyACM0]: start called 2011-01-13 15:27:54 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: device opened. Telnet mode = 0 2011-01-13 15:27:55 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: device opened 2011-01-13 15:27:55 [8114] [6] INFO: AT2[/dev/ttyACM0]: speed set to 9600 2011-01-13 15:27:55 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: --> ^M 2011-01-13 15:27:57 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: --> AT^M 2011-01-13 15:27:57 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: <-- OK 2011-01-13 15:27:57 [8114] [6] INFO: AT2[/dev/ttyACM0]: Closing device 2011-01-13 15:27:57 [8114] [6] INFO: AT2[/dev/ttyACM0]: speed is 9600 2011-01-13 15:27:57 [8114] [6] INFO: AT2[/dev/ttyACM0]: opening device 2011-01-13 15:27:57 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: device opened. Telnet mode = 0 2011-01-13 15:27:58 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: device opened 2011-01-13 15:27:58 [8114] [6] INFO: AT2[/dev/ttyACM0]: Logging in 2011-01-13 15:27:58 [8114] [6] INFO: AT2[/dev/ttyACM0]: init device 2011-01-13 15:27:58 [8114] [6] INFO: AT2[/dev/ttyACM0]: speed set to 9600 2011-01-13 15:27:58 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: --> ATZ^M 2011-01-13 15:27:58 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: <-- OK 2011-01-13 15:27:58 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: --> AT^M 2011-01-13 15:27:59 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: <-- AT 2011-01-13 15:27:59 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: <-- OK 2011-01-13 15:27:59 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: --> AT&F^M 2011-01-13 15:27:59 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: <-- AT&F 2011-01-13 15:27:59 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: <-- OK 2011-01-13 15:27:59 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: --> ATE0^M 2011-01-13 15:27:59 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: <-- ATE0 2011-01-13 15:27:59 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: <-- OK 2011-01-13 15:27:59 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: --> AT+IFC=2,2^M 2011-01-13 15:27:59 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: <-- OK 2011-01-13 15:27:59 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: --> AT+CMGF=0^M 2011-01-13 15:27:59 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: <-- OK 2011-01-13 15:27:59 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: --> AT+CSMS=?^M 2011-01-13 15:27:59 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: <-- +CSMS: (128) 2011-01-13 15:27:59 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: <-- OK 2011-01-13 15:27:59 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: --> AT+CNMI=3,2,0,0,0^M 2011-01-13 15:27:59 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: <-- OK 2011-01-13 15:27:59 [8114] [6] INFO: AT2[/dev/ttyACM0]: AT SMSC successfully opened. 2011-01-13 15:28:39 [8114] [5] INFO: Client connected from <127.0.0.1> 2011-01-13 15:28:39 [8114] [5] DEBUG: Started thread 8 (gw/bb_boxc.c:function) 2011-01-13 15:28:39 [8114] [8] DEBUG: Thread 8 (gw/bb_boxc.c:function) maps to pid 8114. 2011-01-13 15:28:39 [8114] [8] DEBUG: Started thread 9 (gw/bb_boxc.c:boxc_sender) 2011-01-13 15:28:39 [8114] [9] DEBUG: Thread 9 (gw/bb_boxc.c:boxc_sender) maps to pid 8114. 2011-01-13 15:28:45 [8114] [8] DEBUG: boxc_receiver: sms received 2011-01-13 15:28:45 [8114] [8] DEBUG: send_msg: sending msg to box: <127.0.0.1> 2011-01-13 15:28:47 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: TP-Validity-Period: 24.0 hours 2011-01-13 15:28:47 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: --> AT+CMGS=19^M 2011-01-13 15:28:47 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: <-- > 2011-01-13 15:28:47 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: send command status: 1 2011-01-13 15:28:47 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: --> 11000881183274090000A707F4F29C9E769F01 2011-01-13 15:28:47 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: --> ^Z 2011-01-13 15:28:47 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: <-- > 2011-01-13 15:28:47 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: <-- ERROR 2011-01-13 15:28:47 [8114] [6] ERROR: AT2[/dev/ttyACM0]: Generic error: ERROR 2011-01-13 15:28:47 [8114] [6] DEBUG: AT2[/dev/ttyACM0]: send command status: -1 2011-01-13 15:28:47 [8114] [7] DEBUG: sms_router: handling message (0x8c332f8 vs 0x8c332f8) 2011-01-13 15:28:47 [8114] [7] DEBUG: re-queing SMS not-yet-to-be resent 2011-01-13 15:28:47 [8114] [7] DEBUG: sms_router: handling message (0x8c332f8 vs 0x8c332f8) 2011-01-13 15:28:47 [8114] [7] DEBUG: re-queing SMS not-yet-to-be resent 2011-01-13 15:28:47 [8114] [7] DEBUG: sms_router: time to sleep 30.00 secs. 2011-01-13 15:28:47 [8114] [7] DEBUG: sms_router: gwlist_len = 1 2011-01-13 15:28:47 [8114] [7] DEBUG: sms_router: handling message (0x8c332f8 vs 0x8c332f8) 2011-01-13 15:28:47 [8114] [7] DEBUG: re-queing SMS not-yet-to-be resent 2011-01-13 15:28:47 [8114] [7] DEBUG: sms_router: handling message (0x8c332f8 vs 0x8c332f8) 2011-01-13 15:28:47 [8114] [7] DEBUG: re-queing SMS not-yet-to-be resent 2011-01-13 15:28:47 [8114] [7] DEBUG: sms_router: time to sleep 30.00 secs. 2011-01-13 15:29:17 [8114] [7] DEBUG: sms_router: gwlist_len = 1 2011-01-13 15:29:17 [8114] [7] DEBUG: sms_router: handling message (0x8c332f8 vs 0x8c332f8) 2011-01-13 15:29:17 [8114] [7] DEBUG: re-queing SMS not-yet-to-be resent 2011-01-13 15:29:17 [8114] [7] DEBUG: sms_router: handling message (0x8c332f8 vs 0x8c332f8) 2011-01-13 15:29:17 [8114] [7] DEBUG: re-queing SMS not-yet-to-be resent 2011-01-13 15:29:17 [8114] [7] DEBUG: sms_router: time to sleep 30.00 secs. 2011-01-13 15:29:47 [8114] [7] DEBUG: sms_router: gwlist_len = 1 I understand that kannel use PDU mode, while I use text mode when manually key in command from minicom, but why one mode works while the other not? Please help. --- On Wed, 1/12/11, Emmanuel CHANSON <[email protected]> wrote: From: Emmanuel CHANSON <[email protected]> Subject: Re: Kannel do not receive SMS To: "Helen Sang" <[email protected]> Cc: [email protected] Date: Wednesday, January 12, 2011, 5:54 PM Is your phone able to use AT+CNMI command using minicom ? AT+CNMI? If ERROR then your phone won't be able to forward SMS to kannel BR Emmanuel 2011/1/12 Helen Sang <[email protected]> Dear Kannel users, I connect a Nokia E72 phone to my Fedora 7 box with a usb cable. The port is ttyACM0. mod for the device is changed to 666 with command chmod 666 ttyACM0 The setup is fine to send out SMS. When there is SMS being sent out, I can see the signal interaction in smsbox and bearer box. However, when the E72 received a SMS, bearer box has no action. It's as if no event happens. I have read users mail archives. Somebody has this problem before, but with a different phone model. The suggest given to him is to use minicom to check the phone AT command spec. I had tried minicom. But in minicom, the phone answer OK to AT^M and ERROR to all other queries. Frankly I don't understand much of it. Here is my modem.conf that I config the nokiaphone: group = modems id = nokiaphone name = "Nokia Phone" detect-string = "Nokia Mobile Phone" need-sleep = true keepalive-cmd = "AT+CBC;+CSQ" enable-mms = true # detect-string = "MODEM" # detect-string2 = "" [Default] init-string = "ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0" # init-string = "AT+CNMI=1,2,0,1,0;+CMEE=1" speed = 9600 # enable-hwhs = "AT+IFC=2,2" [Default] # need-sleep = false [Default] # no-pin = false [Default] # no-smsc = false [Default] # sendline-sleep = 100 [Default, miliseconds] # keepalive-cmd = "AT" [Default] # broken = false [Default] # message-storage = "SM" # enable-mms = false [Default] The init-string was directly copied from wvdial. I've stuck here for a week. Please someone help. thanks and regards.
