Re: Kannel deleting DLRs with "BUFFRED" status

Alexander Malysh <[email protected]>
Newsgroups gmane.comp.mobile.kannel.devel
Organization Centrium GmbH
Message-ID <[email protected]>
Hi Alex,

yet another workaround :)
please try attached patch against current cvs ...

On Monday 03 November 2003 20:53, Alex Kinch wrote:
> Just reading the SMPP specs, and BUFFRED doesn't technically exist as a DLR
> status. I'm not a C hacker at all, but would the attached do the trick?
>
> Alex
>
>   ----- Original Message -----
>   From: Alex Kinch
>   To: [email protected]
>   Sent: Monday, November 03, 2003 7:26 PM
>   Subject: Kannel deleting DLRs with "BUFFRED" status
>
>
>   Hi,
>
>   Noticed something interesting. Kannel seems to be deleting messages from
> the DLR db with a status of "BUFFRED". I would imagine it should be
> updating them to status = 4. By the way my dlr-mask is 31, and the messages
> are being sent via http using sendsms on Kannel.
>
>   Heres a DLR message:
>
>   2003-11-03 17:14:39 [34] DEBUG:      data: 69 64 3a 32 38 32 32 36 37 37
> 20 73 75 62 3a 30   id:2822677 sub:0 2003-11-03 17:14:39 [34] DEBUG:     
> data: 30 31 20 64 6c 76 72 64 3a 30 30 31 20 73 75 62   01 dlvrd:001 sub
> 2003-11-03 17:14:39 [34] DEBUG:      data: 6d 69 74 20 64 61 74 65 3a 30 33
> 31 31 30 33 31   mit date:0311031 2003-11-03 17:14:39 [34] DEBUG:     
> data: 37 31 34 20 64 6f 6e 65 20 64 61 74 65 3a 30 33   714 done date:03
> 2003-11-03 17:14:39 [34] DEBUG:      data: 31 31 30 33 31 37 31 34 20 73 74
> 61 74 3a 42 55   11031714 stat:BU 2003-11-03 17:14:39 [34] DEBUG:     
> data: 46 46 52 45 44 20 65 72 72 3a 30 30 34 20 74 65   FFRED err:004 te
> 2003-11-03 17:14:39 [34] DEBUG:      data: 78 74 3a 20 00                  
>                  xt: .
>
>   and here's what Kannel does with it:
>
>   2003-11-03 17:14:39 [34] DEBUG: sql: DELETE FROM dlr WHERE smsc='xxxx'
> AND ts='2822677' LIMIT 1;
>
>   So when we later get:
>
>   2003-11-03 18:30:41 [34] DEBUG:      data: 69 64 3a 32 38 32 32 36 37 37
> 20 73 75 62 3a 30   id:2822677 sub:0 2003-11-03 18:30:41 [34] DEBUG:     
> data: 30 31 20 64 6c 76 72 64 3a 30 30 31 20 73 75 62   01 dlvrd:001 sub
> 2003-11-03 18:30:41 [34] DEBUG:      data: 6d 69 74 20 64 61 74 65 3a 30 33
> 31 31 30 33 31   mit date:0311031 2003-11-03 18:30:41 [34] DEBUG:     
> data: 38 33 30 20 64 6f 6e 65 20 64 61 74 65 3a 30 33   830 done date:03
> 2003-11-03 18:30:41 [34] DEBUG:      data: 31 31 30 33 31 38 33 30 20 73 74
> 61 74 3a 44 45   11031830 stat:DE 2003-11-03 18:30:41 [34] DEBUG:     
> data: 4c 49 56 52 44 20 65 72 72 3a 30 30 30 20 74 65   LIVRD err:000 te
> 2003-11-03 18:30:41 [34] DEBUG:      data: 78 74 3a 20 00                  
>                  xt: .
>
>   Kannel can't find it, as it's already deleted it from the DLR db.
>
>   2003-11-03 18:30:41 [34] ERROR: SMPP[xxxx]: got DLR but could not find
> message or was not interested in it
>
>
>   Any thoughts?
>
>   Alex

-- 
Best regards / Mit besten Grüßen aus Düsseldorf

Dipl.-Ing.
Alexander Malysh
___________________________________

Centrium GmbH
Vogelsanger Weg 80
40470 Düsseldorf

Fon: +49 (0211) 74 84 51 80
Fax: +49 (0211) 277 49 109

email: a.malysh at centrium.de
web: http://www.centrium.de
msn: olek2002 at hotmail.com
icq: 98063111
___________________________________________

Please avoid sending me Word, Excel or PowerPoint attachments.
See http://www.fsf.org/philosophy/no-word-attachments.html
smsc_smpp.c-buffered.patch (text/x-diff, 897 B)
Index: gw/smsc/smsc_smpp.c
===================================================================
RCS file: /home/cvs/gateway/gw/smsc/smsc_smpp.c,v
retrieving revision 1.53
diff -a -u -r1.53 smsc_smpp.c
--- gw/smsc/smsc_smpp.c	17 Oct 2003 22:57:50 -0000	1.53
+++ gw/smsc/smsc_smpp.c	3 Nov 2003 20:47:21 -0000
@@ -943,7 +943,8 @@
                     dlrstat = DLR_SUCCESS;
                 else if (stat != NULL && (octstr_compare(stat, octstr_imm("ACKED")) == 0 ||
                              octstr_compare(stat, octstr_imm("ENROUTE")) == 0 ||
-                             octstr_compare(stat, octstr_imm("ACCEPTD")) == 0))
+                             octstr_compare(stat, octstr_imm("ACCEPTD")) == 0 ||
+                             octstr_compare(stat, octstr_imm("BUFFRED")) == 0))
                     dlrstat = DLR_BUFFERED;
                 else
                     dlrstat = DLR_FAIL;
signature.asc (application/pgp-signature, 189 B)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (GNU/Linux)

iD8DBQA/pr8WnX3e5W+uJ0ERAiZXAKDmNgLetb/dPcV6cnW7a1J5dBzR3QCfcdNv
DbEKABdo14xURn4BIeTXgUM=
=1YYm
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.