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.


Reply via email to