Well I figured out a solution that I believe is full proof for 1 receiver and 1 transmitter. If you set transceiver to false on both of them and then set receiver-port = (not zero) and port = (zero) for the the reciever and then set the receiver-port = (zero) and port = (not zero) for the transmitter then kannel will connect with a "bind_transmitter" and "bind_receiver" for the appropriate smsc connection. note that the "port" directive acts like a transmitter-port although it is not labeled that.
-Jon Jon David Koon wrote: > I have a problem where I need to exclusively receive on one smsc and > send on another. For sending I have tried to set the "default-smsc" and > "forced-smsc" directives in the "sendsms-user" group. I am baffled > concerning routing on the receiving side. I have tried putting 0 for > the "recieve-port" for the one that only sends and this seems to work, > but it is hard to confirm. > > I have included a truncated log as well as the kannel configuration. > > Kannel bearerbox version `1.4.1-mblox'. Build `Jun 6 2007 17:29:30', > compiler `3.4.6 20060404 (Red Hat 3.4.6-8)'. System Linux, release > 2.6.9-55.ELsmp, version #1 SMP Wed May 2 14:28:44 EDT 2007, machine > i686. Hostname localhost, IP 127.0.0.1. Libxml version 2.6.16. Using > OpenSSL 0.9.7a Feb 19 2003. Compiled with MySQL 4.1.20, using MySQL > 4.1.20. Using native malloc. > > SMSC: MBlox (PSMS for receiving MT for sending) > > *Please do not explain the 42a error (Fixing this will fix that) > > Thanks in advance, > Jon > > > ------------------------------------------------------------------------ > > group = core > admin-port = 13000 > admin-password = f00bar > smsbox-port = 13003 > log-file = "kannel-mblox.log" > access-log = "kannel-mblox.access" > log-level = 0 > #unified-prefix = "1,0" > dlr-storage = mysql > #dlr-storage = internal > > group = mysql-connection > id = mydlr > host = ************** > username = ****** > password = ************ > database = ******** > max-connections = 1 > > group = dlr-db > id = mydlr > table = DLR_Reports > field-smsc = smsc > field-timestamp = timestamp > field-destination = destination > field-source = source > field-service = service > field-url = url > field-mask = mask > field-status = status > field-boxc-id = boxcid > > group = smsc > smsc = smpp > log-level = 0 > #used for reference within kannel > smsc-id = psms > host = *************** > port = ****** > smsc-username = ************** > smsc-password = ************ > system-type = ************** > service-type = **** > transceiver-mode = true > #0x01 means: deliver_sm decimal, submit_sm_resp hex > msg-id-type = 0x01 > source-addr-ton = 3 > > group = smsc > smsc = smpp > log-level = 0 > #used for reference within kannel > smsc-id = mt > host = ************** > port = ******** > smsc-username = *********** > smsc-password = ********* > system-type = ********** > service-type = ********** > transceiver-mode = true > receive-port = 0 > #0x01 means: deliver_sm decimal, submit_sm_resp hex > msg-id-type = 0x01 > source-addr-ton = 3 > > group = smsbox > bearerbox-host = 127.0.0.1 > sendsms-port = 13013 > #global-sender should be the short code > global-sender = ****** > log-level = 0 > > group = sendsms-user > username = ***** > password = ******** > forced-smsc = mt > default-smsc = mt > > group = sms-service > keyword = > keyword-regex = .* > catch-all = yes > max-messages = 0 > get-url = > http://*************/inbound.php?timestamp=%t&sender=%p&recipient=%P&body=%a > > > ------------------------------------------------------------------------ > > 2007-06-19 17:53:13 [21887] [0] INFO: Added logfile `kannel-mblox.log' with > level `0'. > 2007-06-19 17:53:13 [21887] [0] INFO: Started access logfile > `kannel-mblox.access'. > 2007-06-19 17:53:13 [21887] [0] INFO: HTTP: Opening server at port 13000. > 2007-06-19 17:53:13 [21887] [0] DEBUG: Started thread 1 (gwlib/fdset.c:poller) > 2007-06-19 17:53:13 [21887] [0] DEBUG: Started thread 2 > (gwlib/http.c:server_thread) > 2007-06-19 17:53:13 [21887] [0] DEBUG: Started thread 3 > (gw/bb_http.c:httpadmin_run) > 2007-06-19 17:53:13 [21887] [0] DEBUG: starting smsbox connection module > 2007-06-19 17:53:13 [21887] [0] INFO: BOXC: 'smsbox-max-pending' not set, > using default (100). > 2007-06-19 17:53:13 [21887] [0] DEBUG: Started thread 4 > (gw/bb_boxc.c:sms_to_smsboxes) > 2007-06-19 17:53:13 [21887] [0] DEBUG: Started thread 5 > (gw/bb_boxc.c:smsboxc_run) > 2007-06-19 17:53:13 [21887] [0] INFO: Set SMS resend frequency to 60 seconds. > 2007-06-19 17:53:13 [21887] [0] INFO: SMS resend retry set to unlimited. > 2007-06-19 17:53:13 [21887] [0] INFO: DLR rerouting for smsc id <psms> > disabled. > 2007-06-19 17:53:13 [21887] [0] DEBUG: Started thread 6 > (gw/smsc/smsc_smpp.c:io_thread) > 2007-06-19 17:53:13 [21887] [0] INFO: DLR rerouting for smsc id <mt> disabled. > 2007-06-19 17:53:13 [21887] [0] DEBUG: Started thread 7 > (gw/smsc/smsc_smpp.c:io_thread) > 2007-06-19 17:53:13 [21887] [0] DEBUG: Started thread 8 > (gw/bb_smscconn.c:sms_router) > 2007-06-19 17:53:13 [21887] [0] INFO: ---------------------------------------- > 2007-06-19 17:53:13 [21887] [0] INFO: Kannel bearerbox II version 1.4.1-mblox > starting > 2007-06-19 17:53:13 [21887] [1] DEBUG: Thread 1 (gwlib/fdset.c:poller) maps > to pid 21887. > 2007-06-19 17:53:13 [21887] [2] DEBUG: Thread 2 (gwlib/http.c:server_thread) > maps to pid 21887. > 2007-06-19 17:53:13 [21887] [3] DEBUG: Thread 3 (gw/bb_http.c:httpadmin_run) > maps to pid 21887. > 2007-06-19 17:53:13 [21887] [4] DEBUG: Thread 4 > (gw/bb_boxc.c:sms_to_smsboxes) maps to pid 21887. > 2007-06-19 17:53:13 [21887] [5] DEBUG: Thread 5 (gw/bb_boxc.c:smsboxc_run) > maps to pid 21887. > 2007-06-19 17:53:13 [21887] [6] DEBUG: Thread 6 > (gw/smsc/smsc_smpp.c:io_thread) maps to pid 21887. > 2007-06-19 17:53:13 [21887] [0] INFO: MAIN: Start-up done, entering mainloop > 2007-06-19 17:53:13 [21887] [7] DEBUG: Thread 7 > (gw/smsc/smsc_smpp.c:io_thread) maps to pid 21887. > 2007-06-19 17:53:13 [21887] [8] DEBUG: Thread 8 (gw/bb_smscconn.c:sms_router) > maps to pid 21887. > 2007-06-19 17:53:13 [21887] [8] DEBUG: sms_router: time to sleep 30.00 secs. > 2007-06-19 17:53:13 [21887] [8] DEBUG: sms_router: gwlist_len = 0 > 2007-06-19 17:53:13 [21887] [7] DEBUG: SMPP[mt]: Sending PDU: > 2007-06-19 17:53:13 [21887] [7] DEBUG: SMPP PDU 0x94c91f8 dump: > 2007-06-19 17:53:13 [21887] [7] DEBUG: type_name: bind_transceiver > 2007-06-19 17:53:13 [21887] [7] DEBUG: command_id: 9 = 0x00000009 > 2007-06-19 17:53:13 [21887] [7] DEBUG: command_status: 0 = 0x00000000 > 2007-06-19 17:53:13 [21887] [7] DEBUG: sequence_number: 1 = 0x00000001 > 2007-06-19 17:53:13 [21887] [7] DEBUG: system_id: "******" > 2007-06-19 17:53:13 [21887] [7] DEBUG: password: "**********" > 2007-06-19 17:53:13 [21887] [7] DEBUG: system_type: "***********" > 2007-06-19 17:53:13 [21887] [7] DEBUG: interface_version: 52 = 0x00000034 > 2007-06-19 17:53:13 [21887] [7] DEBUG: addr_ton: 0 = 0x00000000 > 2007-06-19 17:53:13 [21887] [7] DEBUG: addr_npi: 0 = 0x00000000 > 2007-06-19 17:53:13 [21887] [7] DEBUG: address_range: NULL > 2007-06-19 17:53:13 [21887] [7] DEBUG: SMPP PDU dump ends. > 2007-06-19 17:53:13 [21887] [6] DEBUG: SMPP[psms]: Sending PDU: > 2007-06-19 17:53:13 [21887] [6] DEBUG: SMPP PDU 0x94d4538 dump: > 2007-06-19 17:53:13 [21887] [6] DEBUG: type_name: bind_transceiver > 2007-06-19 17:53:13 [21887] [6] DEBUG: command_id: 9 = 0x00000009 > 2007-06-19 17:53:13 [21887] [6] DEBUG: command_status: 0 = 0x00000000 > 2007-06-19 17:53:13 [21887] [6] DEBUG: sequence_number: 1 = 0x00000001 > 2007-06-19 17:53:13 [21887] [6] DEBUG: system_id: "**********" > 2007-06-19 17:53:13 [21887] [6] DEBUG: password: "***********" > 2007-06-19 17:53:13 [21887] [6] DEBUG: system_type: "*********" > 2007-06-19 17:53:13 [21887] [6] DEBUG: interface_version: 52 = 0x00000034 > 2007-06-19 17:53:13 [21887] [6] DEBUG: addr_ton: 0 = 0x00000000 > 2007-06-19 17:53:13 [21887] [6] DEBUG: addr_npi: 0 = 0x00000000 > 2007-06-19 17:53:13 [21887] [6] DEBUG: address_range: NULL > 2007-06-19 17:53:13 [21887] [6] DEBUG: SMPP PDU dump ends. > 2007-06-19 17:53:13 [21887] [6] DEBUG: SMPP[psms]: Got PDU: > 2007-06-19 17:53:13 [21887] [6] DEBUG: SMPP PDU 0x94ce280 dump: > 2007-06-19 17:53:13 [21887] [6] DEBUG: type_name: bind_transceiver_resp > 2007-06-19 17:53:13 [21887] [6] DEBUG: command_id: 2147483657 = 0x80000009 > 2007-06-19 17:53:13 [21887] [6] DEBUG: command_status: 0 = 0x00000000 > 2007-06-19 17:53:13 [21887] [6] DEBUG: sequence_number: 1 = 0x00000001 > 2007-06-19 17:53:13 [21887] [6] DEBUG: system_id: "3.53" > 2007-06-19 17:53:13 [21887] [6] DEBUG: SMPP PDU dump ends. > 2007-06-19 17:53:13 [21887] [7] DEBUG: SMPP[mt]: Got PDU: > 2007-06-19 17:53:13 [21887] [7] DEBUG: SMPP PDU 0x94ce280 dump: > 2007-06-19 17:53:13 [21887] [7] DEBUG: type_name: bind_transceiver_resp > 2007-06-19 17:53:13 [21887] [7] DEBUG: command_id: 2147483657 = 0x80000009 > 2007-06-19 17:53:13 [21887] [7] DEBUG: command_status: 0 = 0x00000000 > 2007-06-19 17:53:13 [21887] [7] DEBUG: sequence_number: 1 = 0x00000001 > 2007-06-19 17:53:13 [21887] [7] DEBUG: system_id: "3.52" > 2007-06-19 17:53:13 [21887] [7] DEBUG: SMPP PDU dump ends. > 2007-06-19 17:53:14 [21887] [7] DEBUG: SMPP[mt]: Got PDU: > 2007-06-19 17:53:14 [21887] [7] DEBUG: SMPP PDU 0x94ce370 dump: > 2007-06-19 17:53:14 [21887] [7] DEBUG: type_name: deliver_sm > 2007-06-19 17:53:14 [21887] [7] DEBUG: command_id: 5 = 0x00000005 > 2007-06-19 17:53:14 [21887] [7] DEBUG: command_status: 0 = 0x00000000 > 2007-06-19 17:53:14 [21887] [7] DEBUG: sequence_number: 1 = 0x00000001 > 2007-06-19 17:53:14 [21887] [7] DEBUG: service_type: NULL > 2007-06-19 17:53:14 [21887] [7] DEBUG: source_addr_ton: 0 = 0x00000000 > 2007-06-19 17:53:14 [21887] [7] DEBUG: source_addr_npi: 0 = 0x00000000 > 2007-06-19 17:53:14 [21887] [7] DEBUG: source_addr: "*************" > 2007-06-19 17:53:14 [21887] [7] DEBUG: dest_addr_ton: 0 = 0x00000000 > 2007-06-19 17:53:14 [21887] [7] DEBUG: dest_addr_npi: 0 = 0x00000000 > 2007-06-19 17:53:14 [21887] [7] DEBUG: destination_addr: "*****" > 2007-06-19 17:53:14 [21887] [7] DEBUG: esm_class: 4 = 0x00000004 > 2007-06-19 17:53:14 [21887] [7] DEBUG: protocol_id: 0 = 0x00000000 > 2007-06-19 17:53:14 [21887] [7] DEBUG: priority_flag: 0 = 0x00000000 > 2007-06-19 17:53:14 [21887] [7] DEBUG: schedule_delivery_time: NULL > 2007-06-19 17:53:14 [21887] [7] DEBUG: validity_period: NULL > 2007-06-19 17:53:14 [21887] [7] DEBUG: registered_delivery: 0 = 0x00000000 > 2007-06-19 17:53:14 [21887] [7] DEBUG: replace_if_present_flag: 0 = > 0x00000000 > 2007-06-19 17:53:14 [21887] [7] DEBUG: data_coding: 0 = 0x00000000 > 2007-06-19 17:53:14 [21887] [7] DEBUG: sm_default_msg_id: 0 = 0x00000000 > 2007-06-19 17:53:14 [21887] [7] DEBUG: sm_length: 103 = 0x00000067 > 2007-06-19 17:53:14 [21887] [7] DEBUG: short_message: > 2007-06-19 17:53:14 [21887] [7] DEBUG: Octet string at 0x94ce448: > 2007-06-19 17:53:14 [21887] [7] DEBUG: len: 103 > 2007-06-19 17:53:14 [21887] [7] DEBUG: size: 104 > 2007-06-19 17:53:14 [21887] [7] DEBUG: immutable: 0 > 2007-06-19 17:53:14 [21887] [7] DEBUG: data: 69 64 3a 32 32 38 31 34 38 > 36 30 30 20 73 75 62 id:228148600 sub > 2007-06-19 17:53:14 [21887] [7] DEBUG: data: 3a 30 30 31 20 64 6c 76 72 > 64 3a 30 30 31 20 73 :001 dlvrd:001 s > 2007-06-19 17:53:14 [21887] [7] DEBUG: data: 75 62 6d 69 74 20 64 61 74 > 65 3a 30 37 30 36 31 ubmit date:07061 > 2007-06-19 17:53:14 [21887] [7] DEBUG: data: 39 32 31 35 36 20 64 6f 6e > 65 20 64 61 74 65 3a 92156 done date: > 2007-06-19 17:53:14 [21887] [7] DEBUG: data: 30 37 30 36 31 39 32 31 35 > 36 20 73 74 61 74 3a 0706192156 stat: > 2007-06-19 17:53:14 [21887] [7] DEBUG: data: 44 45 4c 49 56 52 44 20 65 > 72 72 3a 30 30 34 20 DELIVRD err:004 > 2007-06-19 17:53:14 [21887] [7] DEBUG: data: 74 65 78 74 3a 20 00 > text: . > 2007-06-19 17:53:14 [21887] [7] DEBUG: Octet string dump ends. > 2007-06-19 17:53:14 [21887] [7] DEBUG: SMPP PDU dump ends. > 2007-06-19 17:53:14 [21887] [7] DEBUG: SMPP[mt] handle_pdu, got DLR > 2007-06-19 17:53:14 [21887] [7] DEBUG: DLR[mysql]: Looking for DLR smsc=mt, > ts=228148600, dst=*********, type=1 > 2007-06-19 17:53:14 [21887] [7] DEBUG: sql: SELECT mask, service, url, > source, destination, boxcid FROM DLR_Reports WHERE smsc='mt' AND > timestamp='228148600'; > 2007-06-19 17:53:14 [21887] [7] DEBUG: Found entry, row[0]=1, row[1]=user, > row[2]=, row[3]=*******, row[4]=********** row[5]= > 2007-06-19 17:53:14 [21887] [7] DEBUG: DLR[mysql]: created DLR message for > URL <> > 2007-06-19 17:53:14 [21887] [7] DEBUG: removing DLR from database > 2007-06-19 17:53:14 [21887] [7] DEBUG: sql: DELETE FROM DLR_Reports WHERE > smsc='mt' AND timestamp='228148600' LIMIT 1; > 2007-06-19 17:53:14 [21887] [5] INFO: Client connected from <127.0.0.1> > 2007-06-19 17:53:14 [21887] [5] DEBUG: Started thread 9 > (gw/bb_boxc.c:function) > 2007-06-19 17:53:14 [21887] [9] DEBUG: Thread 9 (gw/bb_boxc.c:function) maps > to pid 21887. > 2007-06-19 17:53:14 [21887] [9] DEBUG: Started thread 10 > (gw/bb_boxc.c:boxc_sender) > 2007-06-19 17:53:14 [21887] [10] DEBUG: Thread 10 (gw/bb_boxc.c:boxc_sender) > maps to pid 21887. > 2007-06-19 17:53:14 [21887] [7] DEBUG: SMPP[mt]: Sending PDU: > 2007-06-19 17:53:14 [21887] [7] DEBUG: SMPP PDU 0x94d7160 dump: > 2007-06-19 17:53:14 [21887] [7] DEBUG: type_name: deliver_sm_resp > 2007-06-19 17:53:14 [21887] [7] DEBUG: command_id: 2147483653 = 0x80000005 > 2007-06-19 17:53:14 [21887] [7] DEBUG: command_status: 0 = 0x00000000 > 2007-06-19 17:53:14 [21887] [7] DEBUG: sequence_number: 1 = 0x00000001 > 2007-06-19 17:53:14 [21887] [7] DEBUG: message_id: NULL > 2007-06-19 17:53:14 [21887] [7] DEBUG: SMPP PDU dump ends. > 2007-06-19 17:53:14 [21887] [10] DEBUG: send_msg: sending msg to box: > <127.0.0.1> > 2007-06-19 17:53:14 [21887] [10] DEBUG: boxc_sender: sent message to > <127.0.0.1> > 2007-06-19 17:53:14 [21887] [9] DEBUG: boxc_receiver: got ack > 2007-06-19 17:53:23 [21887] [9] DEBUG: boxc_receiver: sms received > 2007-06-19 17:53:23 [21887] [9] DEBUG: send_msg: sending msg to box: > <127.0.0.1> > 2007-06-19 17:53:23 [21887] [6] DEBUG: SMPP[psms]: Sending PDU: > 2007-06-19 17:53:23 [21887] [6] DEBUG: SMPP PDU 0x94d0120 dump: > 2007-06-19 17:53:23 [21887] [6] DEBUG: type_name: submit_sm > 2007-06-19 17:53:23 [21887] [6] DEBUG: command_id: 4 = 0x00000004 > 2007-06-19 17:53:23 [21887] [6] DEBUG: command_status: 0 = 0x00000000 > 2007-06-19 17:53:23 [21887] [6] DEBUG: sequence_number: 2 = 0x00000002 > 2007-06-19 17:53:23 [21887] [6] DEBUG: service_type: "*****" > 2007-06-19 17:53:23 [21887] [6] DEBUG: source_addr_ton: 2 = 0x00000002 > 2007-06-19 17:53:23 [21887] [6] DEBUG: source_addr_npi: 1 = 0x00000001 > 2007-06-19 17:53:23 [21887] [6] DEBUG: source_addr: "*******" > 2007-06-19 17:53:23 [21887] [6] DEBUG: dest_addr_ton: 2 = 0x00000002 > 2007-06-19 17:53:23 [21887] [6] DEBUG: dest_addr_npi: 1 = 0x00000001 > 2007-06-19 17:53:23 [21887] [6] DEBUG: destination_addr: "************" > 2007-06-19 17:53:23 [21887] [6] DEBUG: esm_class: 3 = 0x00000003 > 2007-06-19 17:53:23 [21887] [6] DEBUG: protocol_id: 0 = 0x00000000 > 2007-06-19 17:53:23 [21887] [6] DEBUG: priority_flag: 0 = 0x00000000 > 2007-06-19 17:53:23 [21887] [6] DEBUG: schedule_delivery_time: NULL > 2007-06-19 17:53:23 [21887] [6] DEBUG: validity_period: NULL > 2007-06-19 17:53:23 [21887] [6] DEBUG: registered_delivery: 1 = 0x00000001 > 2007-06-19 17:53:23 [21887] [6] DEBUG: replace_if_present_flag: 0 = > 0x00000000 > 2007-06-19 17:53:23 [21887] [6] DEBUG: data_coding: 0 = 0x00000000 > 2007-06-19 17:53:23 [21887] [6] DEBUG: sm_default_msg_id: 0 = 0x00000000 > 2007-06-19 17:53:23 [21887] [6] DEBUG: sm_length: 11 = 0x0000000b > 2007-06-19 17:53:23 [21887] [6] DEBUG: short_message: "Hello World" > 2007-06-19 17:53:23 [21887] [6] DEBUG: SMPP PDU dump ends. > 2007-06-19 17:53:23 [21887] [6] WARNING: SMPP: PDU NULL terminated string has > no NULL. > 2007-06-19 17:53:23 [21887] [6] DEBUG: SMPP[psms]: Got PDU: > 2007-06-19 17:53:23 [21887] [6] DEBUG: SMPP PDU 0x94d0120 dump: > 2007-06-19 17:53:23 [21887] [6] DEBUG: type_name: submit_sm_resp > 2007-06-19 17:53:23 [21887] [6] DEBUG: command_id: 2147483652 = 0x80000004 > 2007-06-19 17:53:23 [21887] [6] DEBUG: command_status: 1066 = 0x0000042a > 2007-06-19 17:53:23 [21887] [6] DEBUG: sequence_number: 2 = 0x00000002 > 2007-06-19 17:53:23 [21887] [6] DEBUG: message_id: NULL > 2007-06-19 17:53:23 [21887] [6] DEBUG: SMPP PDU dump ends. > 2007-06-19 17:53:23 [21887] [6] ERROR: SMPP[psms]: SMSC returned error code > 0x0000042a (Vendor-specific error, please refer to your SMPP provider) in > response to submit_sm. > 2007-06-19 17:57:19 [21887] [9] INFO: Connection closed by the box <127.0.0.1> > 2007-06-19 17:57:19 [21887] [10] DEBUG: send_msg: sending msg to box: > <127.0.0.1> > 2007-06-19 17:57:19 [21887] [10] DEBUG: Thread 10 (gw/bb_boxc.c:boxc_sender) > terminates. > 2007-06-19 17:57:19 [21887] [9] DEBUG: Thread 9 (gw/bb_boxc.c:function) > terminates.