well yes. You need get something back from your SMSC what can match the
message with the receipt explicitly. In SMPP you always get that ID. For
HTTP based SMSCs it may be tricky but you should be able to get
something in the HTTP response. Some of SMSC I've heard of, support
your own generated ID as one of HTTP-GET parameters.
You need to speak to your SMSC to get this solved.
gg me if you need any help: 105019
Cezary
On 12/08/2011 11:25, Mirosław Sołowiej wrote:
This is how my db is created:
group = dlr-db
id = tkanneldlr
table = t_kannel_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
Generally speaking, do I need to get foreign id to get my DLR working? Is it
mandatory to have it fetched?
Mirosław Sołowiej
-----Original Message-----
From: Cezary Siwek [mailto:[email protected]]
Sent: Friday, August 12, 2011 12:12 PM
To: Mirosław Sołowiej
Cc: [email protected]
Subject: Re: [Fwd: Re: Kannel issue]
as per your example DLR gets matched based on smsc name and the foreign ID:
2011-08-11 20:54:21 [3017] [21] DEBUG: DLR[pgsql]: Looking for DLR
smsc=smsc_op, ts=157511, dst=(null), type=1
2011-08-11 20:54:21 [3017] [21] DEBUG: sql: SELECT mask, service,
url, source, destination, boxc FROM tqm_kannel_dlr WHERE
smsc='smsc_op' AND ts='157511' LIMIT 1;
have a look into your logs what is being inserted into the dlr table when
you submit the message.
ps. Always CC the list
On 12/08/2011 11:02, Mirosław Sołowiej wrote:
Yes, I do. I do specify dlr-mask and dlr-url. Message gets partner's end.
For tracking purpose I am sending binfo, based on which I trust kannel
is going to match dlr.
I am not getting foreign ID. Is this impacting?
Regards,
Mirosław Sołowiej
-----Original Message-----
From: Cezary Siwek [mailto:[email protected]]
Sent: Friday, August 12, 2011 11:44 AM
To: Mirosław Sołowiej
Cc: [email protected]
Subject: Re: [Fwd: Re: Kannel issue]
ok, so how do you send your MT message? do you specify dlr-url and
dlr-mask in the url?
On 12/08/2011 10:41, Mirosław Sołowiej wrote:
Thanks for answer Czarek. I fully understand that DLR are for MT,
which is send out in all my cases. Second test (lynx) is made to invoke
DLR.
Here is what I send back to customer (partner)
http://XXX.XXX.XXX.XXX/keyword/qm.aspx?msisdn=%p&message=%a&mid=%B"
and here is sendsms invoke:
sendsms?user=zzz&pass=zzzqqq&to=11111111&smsc=smsc_io&text=Service is
working
OK!&from=9786&dlr-mask=31&dlr-url=URL/smsstatus?id_outbox=MYINTERNALID
&statu
s=%d&status_desc=%A&binfo=213685&account=PLUS&charset=UTF-8&coding=1
For some reason, I see that FID: field remains empty in the log file.
Does it matter?
Any thoughts?
Mirosław Sołowiej
Message: 2
Date: Fri, 12 Aug 2011 07:13:28 +0200
From: "Miros?aw So?owiej"<[email protected]>
To: [email protected]
Subject: [Fwd: Re: Kannel issue]
Message-ID:
<[email protected]>
Content-Type: text/plain; charset="iso-8859-2"
Hi Guys,
I am quite new in kannel business, but first steps went quite smooth.
I
have
~20 different smsc running and they are ok. The thing which makes my
life nightmare is DLR. Either I don't understand it well, or there is
something
I
cannot get just from reading manuals.
I have created two different SMSC, one for MO/MT and second one for
DLR.
# incoming/outgoing
group = smsc
smsc = http
port = 23091
system-type = generic
no-sep = true
smsc-id = smsc_io
smsc-admin-id = smsc_op
allowed-smsc-id = smsc_io
connect-allow-ip = "127.0.0.1;XXX.XXX.XXX.XXX "
send-url = "
http://XXX.XXX.XXX.XXX/keyword/qm.aspx?msisdn=%p&message=%a&mid=%B"
generic-foreign-id-regex = "mid=([0-9]+)"
status-success-regex = "1"
status-permfail-regex = "2"
generic-param-to = "sc"
generic-param-account = "operator"
generic-param-from = "msisdn"
generic-param-text = "message"
generic-param-binfo = "mid"
generic-status-sent = 200
generic-message-sent = "OK"
generic-status-error = 404
log-file = "/var/log/kannel/smsc_smscop.log"
log-level = 1
alt-charset = UTF-8
alt-addr-charset = UTF-8
# smsc Notifications #
group = smsc
smsc = http
smsc-id = smsc_dr
smsc-admin-id = smsc_op
allowed-smsc-id = smsc_dr
port = 23092
system-type = generic
no-sep = true
send-url = "http://www.url.com/tmp"
generic-param-dlr-mid = "mid"
generic-param-dlr-mask= "binfo"
generic-param-binfo= "binfo"
generic-param-text= "msisdn"
generic-message-sent = "OK"
status-success-regex = ".+"
generic-status-sent = 200
generic-status-error = 404
connect-allow-ip = "127.0.0.1;XXX.XXX.XXX.XXX "
log-file = "/var/log/kannel/smsc_smscop.log"
log-level = 0
alt-charset = UTF-8
alt-addr-charset = UTF-8
# Default Service for smsc
group = sms-service
keyword = default
catch-all = true
accepted-smsc = smsc_io
concatenation = true
omit-empty = true
get-url = "
http://url/smsgate?partner=smsc&keyword=%k&message=%r&from=%p&to=%P&sm
sc=%i&
coding=%c&charset=%C&binfo=%B&account=%o"
This is how I tested it:
lynx -dump ">
http://localhost:23091/sms?msisdn=11111111&sc=9786&operator=PLUS&messa
ge=TQM
1+TEST&mid=213685
and what I got
OK
lynx -dump
"http://localhost:23092/sms?msisdn=11111111&binfo=1&mid=213685"
and got
Unknown DLR, not accepted
Do you have any idea how to make kannel able to understand DLR? What
do I
do
wrong? I am getting this in the log
2011-08-11 20:54:21 [3017] [21] DEBUG: HTTP[smsc_dr]: Received an
HTTP request
2011-08-11 20:54:21 [3017] [21] DEBUG: DLR[pgsql]: Looking for DLR
smsc=smsc_op, ts=157511, dst=(null), type=1
2011-08-11 20:54:21 [3017] [21] DEBUG: sql: SELECT mask, service,
url, source, destination, boxc FROM tqm_kannel_dlr WHERE
smsc='smsc_op' AND ts='157511' LIMIT 1;
2011-08-11 20:54:21 [3017] [21] DEBUG: no rows found
2011-08-11 20:54:21 [3017] [21] WARNING: DLR[pgsql]: DLR from
SMSC<smsc_op>
for DST<(null)> not found.
2011-08-11 20:54:21 [3017] [21] ERROR: HTTP[smsc_dr]: Got DLR but
could
not
find message or was not interested in it id<157511> dst<(null)>,
type<1>
2011-08-11 20:54:21 [3017] [21] DEBUG: HTTP[smsc_dr]: Sending reply
2011-08-11 20:54:21 [3017] [21] DEBUG: HTTP: Destroying HTTPClient
area 0x7f288c002640.
2011-08-11 20:54:21 [3017] [21] DEBUG: HTTP: Destroying HTTPClient
for `127.0.0.1'.
2011-08-11 20:54:21 [3017] [21] DEBUG: HTTP[smsc_dr]: Destroying
client information
Best regards and thanks in advance,
Miroslaw
Operations Manager
Tequila Mobile S.A.
mobile:: +48 512 833 151
office:: +48 71 750 5402
fax:: +48 71 750 5419
skype:: msolowiej
web:: www.tequilamobile.com
address: ul. ?wi?tego Miko?aja 8-11
50-125 Wroc?aw
Operations Manager
Tequila Mobile S.A.
mobile:: +48 512 833 151
office:: +48 71 750 5402
fax:: +48 71 750 5419
skype:: msolowiej
web:: www.tequilamobile.com
address: ul. ?wi?tego Miko?aja 8-11
50-125 Wroc?aw
-------------- next part -------------- An HTML attachment was
scrubbed...
URL:
<http://www.kannel.org/pipermail/users/attachments/20110812/16ee3812/a
ttachm
ent-0001.html>
------------------------------
Message: 3
Date: Fri, 12 Aug 2011 10:25:13 +0100
From: Cezary Siwek<[email protected]>
To: [email protected]
Subject: Re: [Fwd: Re: Kannel issue]
Message-ID:<[email protected]>
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Hi Mirek,
Looking on your examples, you are sending a MO message to kannel and
then you you send a receipt.
Internal DLRs are only for MT messages (for those that you are
sending through sendsms-port ). Bear in mind that internal DLRs are
being written into the database only if you specify a correct dlr-mask.
Regards,
Cezary
On 12/08/2011 06:13, "Miros?aw So?owiej" wrote:
Hi Guys,
I am quite new in kannel business, but first steps went quite smooth.
I have ~20 different smsc running and they are ok. The thing which
makes my life nightmare is DLR. Either I don't understand it well,
or there is something I cannot get just from reading manuals.
I have created two different SMSC, one for MO/MT and second one
for
DLR.
# incoming/outgoing
group = smsc
smsc = http
port = 23091
system-type = generic
no-sep = true
smsc-id = smsc_io
smsc-admin-id = smsc_op
allowed-smsc-id = smsc_io
connect-allow-ip = "127.0.0.1;XXX.XXX.XXX.XXX "
send-url = "
http://XXX.XXX.XXX.XXX/keyword/qm.aspx?msisdn=%p&message=%a&mid=%B"
generic-foreign-id-regex = "mid=([0-9]+)"
status-success-regex = "1"
status-permfail-regex = "2"
generic-param-to = "sc"
generic-param-account = "operator"
generic-param-from = "msisdn"
generic-param-text = "message"
generic-param-binfo = "mid"
generic-status-sent = 200
generic-message-sent = "OK"
generic-status-error = 404
log-file = "/var/log/kannel/smsc_smscop.log"
log-level = 1
alt-charset = UTF-8
alt-addr-charset = UTF-8
# smsc Notifications #
group = smsc
smsc = http
smsc-id = smsc_dr
smsc-admin-id = smsc_op
allowed-smsc-id = smsc_dr
port = 23092
system-type = generic
no-sep = true
send-url = "http://www.url.com/tmp"
generic-param-dlr-mid = "mid"
generic-param-dlr-mask= "binfo"
generic-param-binfo= "binfo"
generic-param-text= "msisdn"
generic-message-sent = "OK"
status-success-regex = ".+"
generic-status-sent = 200
generic-status-error = 404
connect-allow-ip = "127.0.0.1;XXX.XXX.XXX.XXX "
log-file = "/var/log/kannel/smsc_smscop.log"
log-level = 0
alt-charset = UTF-8
alt-addr-charset = UTF-8
# Default Service for smsc
group = sms-service
keyword = default
catch-all = true
accepted-smsc = smsc_io
concatenation = true
omit-empty = true
get-url = "
http://url/smsgate?partner=smsc&keyword=%k&message=%r&from=%p&to=%P&sm
sc=%i&
coding=%c&charset=%C&binfo=%B&account=%o"
This is how I tested it:
lynx -dump ">
http://localhost:23091/sms?msisdn=11111111&sc=9786&operator=PLUS&mes
sa
ge=TQM1+TEST&mid=213685
and what I got
OK
lynx -dump
"http://localhost:23092/sms?msisdn=11111111&binfo=1&mid=213685"
and got
Unknown DLR, not accepted
Do you have any idea how to make kannel able to understand DLR? What
do I do wrong? I am getting this in the log
2011-08-11 20:54:21 [3017] [21] DEBUG: HTTP[smsc_dr]: Received an
HTTP request
2011-08-11 20:54:21 [3017] [21] DEBUG: DLR[pgsql]: Looking for DLR
smsc=smsc_op, ts=157511, dst=(null), type=1
2011-08-11 20:54:21 [3017] [21] DEBUG: sql: SELECT mask, service,
url, source, destination, boxc FROM tqm_kannel_dlr WHERE
smsc='smsc_op' AND ts='157511' LIMIT 1;
2011-08-11 20:54:21 [3017] [21] DEBUG: no rows found
2011-08-11 20:54:21 [3017] [21] WARNING: DLR[pgsql]: DLR from
SMSC<smsc_op> for DST<(null)> not found.
2011-08-11 20:54:21 [3017] [21] ERROR: HTTP[smsc_dr]: Got DLR but
could not find message or was not interested in it id<157511>
dst<(null)>, type<1>
2011-08-11 20:54:21 [3017] [21] DEBUG: HTTP[smsc_dr]: Sending reply
2011-08-11 20:54:21 [3017] [21] DEBUG: HTTP: Destroying HTTPClient
area 0x7f288c002640.
2011-08-11 20:54:21 [3017] [21] DEBUG: HTTP: Destroying HTTPClient
for `127.0.0.1'.
2011-08-11 20:54:21 [3017] [21] DEBUG: HTTP[smsc_dr]: Destroying
client information
Best regards and thanks in advance,
Miroslaw
Operations Manager
Tequila Mobile S.A.
mobile:: +48 512 833 151
office:: +48 71 750 5402
fax:: +48 71 750 5419
skype:: msolowiej
web:: www.tequilamobile.com
address: ul. ?wi?tego Miko?aja 8-11
50-125 Wroc?aw
Operations Manager
Tequila Mobile S.A.
mobile:: +48 512 833 151
office:: +48 71 750 5402
fax:: +48 71 750 5419
skype:: msolowiej
web:: www.tequilamobile.com
address: ul. ?wi?tego Miko?aja 8-11
50-125 Wroc?aw
------------------------------
_______________________________________________
users mailing list
[email protected]
http://www.kannel.org/mailman/listinfo/users
End of users Digest, Vol 60, Issue 16
*************************************