Your Partner uses a wrong command ID. Command ID 4 can only be sent from a client to a server. When a server wants to submit a message to a client Deliver_SM (Command ID 5) has to be used (see SMPP Spec 4.6 and 5.1.2.1)
2008/6/26 Monchanin Eric <[EMAIL PROTECTED]>: > Hello to all, > > I am having a serious problem here, trying to get MO from my SMPP > connection. > Basically, I have an SMPP bind to a provider. > I can send SMS to this bind, but when someone sends me an MO, my kannel > instance apparently doesn't know what to do with it. > > the logs in the bearerbox.log file show : > > 2008-06-18 18:50:19 [21941] [7] DEBUG: SMPP[provider-smsc]: Got PDU: > 2008-06-18 18:50:19 [21941] [7] DEBUG: SMPP PDU 0x8dbf9c8 dump: > 2008-06-18 18:50:19 [21941] [7] DEBUG: type_name: submit_sm > 2008-06-18 18:50:19 [21941] [7] DEBUG: command_id: 4 = 0x00000004 > 2008-06-18 18:50:19 [21941] [7] DEBUG: command_status: 0 = 0x00000000 > 2008-06-18 18:50:19 [21941] [7] DEBUG: sequence_number: 4464452 = > 0x00441f44 > 2008-06-18 18:50:19 [21941] [7] DEBUG: service_type: NULL > 2008-06-18 18:50:19 [21941] [7] DEBUG: source_addr_ton: 1 = 0x00000001 > 2008-06-18 18:50:19 [21941] [7] DEBUG: source_addr_npi: 1 = 0x00000001 > 2008-06-18 18:50:19 [21941] [7] DEBUG: source_addr: "277xxxxx000" > 2008-06-18 18:50:19 [21941] [7] DEBUG: dest_addr_ton: 1 = 0x00000001 > 2008-06-18 18:50:19 [21941] [7] DEBUG: dest_addr_npi: 1 = 0x00000001 > 2008-06-18 18:50:19 [21941] [7] DEBUG: destination_addr: "278xxxxxxx719" > 2008-06-18 18:50:19 [21941] [7] DEBUG: esm_class: 0 = 0x00000000 > 2008-06-18 18:50:19 [21941] [7] DEBUG: protocol_id: 223 = 0x000000df > 2008-06-18 18:50:19 [21941] [7] DEBUG: priority_flag: 0 = 0x00000000 > 2008-06-18 18:50:19 [21941] [7] DEBUG: schedule_delivery_time: NULL > 2008-06-18 18:50:19 [21941] [7] DEBUG: validity_period: NULL > 2008-06-18 18:50:19 [21941] [7] DEBUG: registered_delivery: 0 = 0x00000000 > 2008-06-18 18:50:19 [21941] [7] DEBUG: replace_if_present_flag: 0 = > 0x00000000 > 2008-06-18 18:50:19 [21941] [7] DEBUG: data_coding: 1 = 0x00000001 > 2008-06-18 18:50:19 [21941] [7] DEBUG: sm_default_msg_id: 0 = 0x00000000 > 2008-06-18 18:50:19 [21941] [7] DEBUG: sm_length: 4 = 0x00000004 > 2008-06-18 18:50:19 [21941] [7] DEBUG: short_message: "Stop" > 2008-06-18 18:50:19 [21941] [7] DEBUG: user_message_reference: 173 = > 0x000000ad > 2008-06-18 18:50:19 [21941] [7] DEBUG: SMPP PDU dump ends. > 2008-06-18 18:50:19 [21941] [7] ERROR: SMPP[provider-smsc]: Unknown PDU > type 0x00000004, ignored. > 2008-06-18 18:50:19 [21941] [7] DEBUG: SMPP[provider-smsc]: Sending PDU: > 2008-06-18 18:50:19 [21941] [7] DEBUG: SMPP PDU 0x8db9bd8 dump: > 2008-06-18 18:50:19 [21941] [7] DEBUG: type_name: generic_nack > 2008-06-18 18:50:19 [21941] [7] DEBUG: command_id: 2147483648 = 0x80000000 > 2008-06-18 18:50:19 [21941] [7] DEBUG: command_status: 3 = 0x00000003 > 2008-06-18 18:50:19 [21941] [7] DEBUG: sequence_number: 4464452 = > 0x00441f44 > 2008-06-18 18:50:19 [21941] [7] DEBUG: SMPP PDU dump ends. > > > My contact tells me he gets an: > ESME_RINVCMDID - Invalid Command ID - Generic Nack > > My kannel configuration is quite std, and I think I did enough to route > MOs correctly to my URL, I am joining it here. > > If you could please have a quick look at it and tell me what's wrong, > I spent quite a lot of time on the documentation without much success. > > Thank you for any help you can provide, > > Eric > > > > PS: sorry if this message appears twice, the 1st one doesn't seem to have > worked. > > # BEARERBOX SETUP, for Kannel core operations > group = core > admin-port = 13000 > smsbox-port = 13001 > wapbox-port = 13002 > admin-password = ********** > wdp-interface-name = "*" > log-file = "/var/log/kannel/bearerbox.log" > access-log = "/var/log/kannel/access.log" > log-level = 0 > box-deny-ip = "*.*.*.*" > box-allow-ip = 127.0.0.1; > dlr-storage = pgsql > smsbox-max-pending = 200 > > #pgsql group definition > group = pgsql-connection > id = mydlr > host = xxx.xxx.xxx.xxx > username = ********** > password = ********** > database = sms-dlr > max-connections = 5 > > group = dlr-db > id = mydlr > table = dlr > field-smsc = smsc > field-timestamp = ts > field-destination = destination > field-source = source > field-service = service > field-url = url > field-mask = mask > field-status = status > field-boxc-id = boxc > > # SMSC SMPP > group = smsc > smsc-id = smsc_01 > smsc = smpp > host = smpp.smsc.com > port = 2222 > transceiver-mode = true > smsc-username = ********** > smsc-password = ********** > throughput = 10 > system-type = "" > dest-addr-ton = 1 > dest-addr-npi = 1 > source-addr-ton = 0 > source-addr-npi = 0 > denied-smsc-id = smsc_02 > #max-messages = 0 > > # SMSC SMPP > group = smsc > smsc-id = smsc_02 > smsc = smpp > host = xxx.xxx.xxx.xxx > port = 1111 > transceiver-mode = true > smsc-username = ********** > smsc-password = ********** > throughput = 10 > system-type = "" > msg-id-type = 0x01 > dest-addr-ton = 1 > dest-addr-npi = 1 > source-addr-ton = 0 > source-addr-npi = 0 > denied-smsc-id = smsc_01 > > group = smsc > smsc = fake > port = 10000 > > group = sms-service > #accepted-smsc = smsc_02 > get-url = > "http://localhost/kannel_delivery.php?sender=%p&text=%a&smsc=%i" > keyword = > catch-all = yes > max-messages = 0 > > > # SMSBOX SETUP > group = smsbox > bearerbox-host = localhost > sendsms-port = 13013 > global-sender = 33563 > sendsms-chars = "0123456789 +-" > #sendsms-url = "http://localhost:13013/cgi-bin/sendsms" > log-level = 0 > log-file = "/var/log/kannel/smsbox.log" > > # SEND-SMS USERS > group = sendsms-user > username = ********** > password = ********** > user-allow-ip = 127.0.0.1; > concatenation = true > max-messages = 5 > forced-smsc = smsc_01 > > group = sendsms-user > username = ********** > password = ********** > user-allow-ip = 127.0.0.1; > concatenation = true > max-messages = 1 > forced-smsc = smsc_02 > > # WAPBOX > group = wapbox > bearerbox-host = localhost > log-file = "/var/log/kannel/wapbox.log" > access-log = "/var/log/kannel/wapbox-access.log" > log-level = 0 > smart-errors = true > timer-freq = 10 > map-url-max = 2 > map-url = "http://mmsc/* http://localhost:8071/*" > map-url = "http://mms1/* http://localhost:8071/*" > > >
