Hi,

i'm trying to run the following scenario:

1. A smpp-Client connects to my opensmppbox and sends a message.
2. The opensmppbox accepts the connection and also accepts the message.
3. The opensmppbox routes the message to a generic http-smsc.

Now the question:

How can I send an DLR for statuses 1 or 2 back to kannel?

I tried with:
http://192.168.0.6:13015/dlr?username=xxxxxx&password=xxxxxx&from=0815&to=xxxxx&dlr_mask=1&dlr-mid=a09885da-43c2-4553-af29-ac52a4952191

But the Problem here is, that it accepts the dlr but at the conncted opensmppbox the status is always REJECTD. It doesn't matter which value the dlr-mask-parameter is set to.

Heres the log for the dlr-request which is originated by the generic http:

[...] DEBUG: DLR[internal]: Looking for DLR smsc=SMPP, ts=a09885da, dst=xxxxx, type=-1
[...] DEBUG: DLR[internal]: created DLR message for URL <a09885da>
[...] DEBUG: DLR[internal]: DLR not destroyed, still waiting for other delivery report
[...] DEBUG: SMPP[SMPP]: Sending PDU:
[...] DEBUG: SMPP PDU 0x86e6038 dump:
[...] DEBUG:   type_name: deliver_sm
[...] DEBUG:   command_id: 5 = 0x00000005
[...] DEBUG:   command_status: 0 = 0x00000000
[...] DEBUG:   sequence_number: 1 = 0x00000001
[...] DEBUG:   service_type: NULL
[...] DEBUG:   source_addr_ton: 2 = 0x00000002
[...] DEBUG:   source_addr_npi: 1 = 0x00000001
[...] DEBUG:   source_addr: "0815"
[...] DEBUG:   dest_addr_ton: 1 = 0x00000001
[...] DEBUG:   dest_addr_npi: 1 = 0x00000001
[...] DEBUG:   destination_addr: "xxxxx"
[...] DEBUG:   esm_class: 4 = 0x00000004
[...] DEBUG:   protocol_id: 0 = 0x00000000
[...] DEBUG:   priority_flag: 0 = 0x00000000
[...] DEBUG:   schedule_delivery_time: NULL
[...] DEBUG:   validity_period: NULL
[...] DEBUG:   registered_delivery: 0 = 0x00000000
[...] DEBUG:   replace_if_present_flag: 0 = 0x00000000
[...] DEBUG:   data_coding: 0 = 0x00000000
[...] DEBUG:   sm_default_msg_id: 0 = 0x00000000
[...] DEBUG:   sm_length: 0 = 0x00000000
[...] DEBUG:   short_message:
[...] DEBUG:    Octet string at 0x86dfe58:
[...] DEBUG:      len:  112
[...] DEBUG:      size: 1024
[...] DEBUG:      immutable: 0
[...] DEBUG: data: 69 64 3a 61 30 39 38 38 35 64 61 20 73 75 62 3a id:a09885da sub: [...] DEBUG: data: 30 30 31 20 64 6c 76 72 64 3a 30 30 30 20 73 75 001 dlvrd:000 su [...] DEBUG: data: 62 6d 69 74 20 64 61 74 65 3a 31 31 31 30 32 30 bmit date:111020 [...] DEBUG: data: 30 39 35 30 20 64 6f 6e 65 20 64 61 74 65 3a 31 0950 done date:1 [...] DEBUG: data: 31 31 30 32 30 30 39 35 31 20 73 74 61 74 3a 52 110200951 stat:R [...] DEBUG: data: 45 4a 45 43 54 44 20 65 72 72 3a 30 30 30 20 74 EJECTD err:000 t [...] DEBUG: data: 65 78 74 3a 20 20 20 20 20 20 20 20 20 20 20 20 ext:
[...] DEBUG:    Octet string dump ends.
[...] DEBUG:   message_state: 8 = 0x00000008
[...] DEBUG:   receipted_message_id: "a09885da"
[...] DEBUG: SMPP PDU dump ends.

The next thing is, if I connect a smsbox instead of opensmppbox to bearerbox and manually send an message over smsbox with dlr-mask = 31, all generic http originated dlrs send to the above url work fine.

Can anyone help me please and tell me the right url-parameters or another solution for generating dlrs originated by the generic http smsc?

here are my confs:

kannel.conf:

group = core
admin-port = 13000
smsbox-port = 13001
admin-password = bar
log-file = "/var/log/kannel/kannel-core.log"
log-level = 0
access-log = "/var/log/kannel/kannel-access.log"
store-file = "/var/spool/kannel/kannel_core.store"
box-deny-ip = "*.*.*.*"
box-allow-ip = "127.0.0.1"

group = sendsms-user
username = xxxxx
password = xxxxx

group = sms-service
keyword = default
text = "No service specified"

group = smsbox-route
smsbox-id = test1
smsc-id = "smsc1"


group = smsc
smsc = http
system-type = generic
port = 13015
smsc-id=smsc1
send-url = "http://192.168.0.99/gsm/sendtest.php?username=xxxxx&password=xxxxx&from=%P&to=%p&text=%b&dcs=%O&udh=%u&charset=%C&foreignId=%F&dlrReply=%A&dlrurl=%R&dlrval=%d&msgid=%I&cmsgid=%i";
status-success-regex = "Sent."
status-permfail-regex = "failure"
status-tempfail-regex = "retry later"
generic-status-sent = 200
generic-status-error = 404


and my opensmppbox.conf:

group = core
dlr-storage = internal

group = opensmppbox
opensmppbox-id = test1
opensmppbox-port = 2346
bearerbox-host = localhost
bearerbox-port = 13001
log-level = 0
log-file = /var/log/kannel/opensmppbox.log
our-system-id = test1
smpp-logins = "/etc/kannel/smpplogins.txt"





Thanks,
Steven

Reply via email to