On Mon, 2002-04-29 at 18:46, Damjan wrote:
> > > Anyone know how to do it?
> > 
> > You can use PID 41(0x65)-4? (0x6?) to overwrite message 1-?.
> > Check 3gpp documentation 23040/23038.
> > 
> > But basically, you'll send a normal message + &pid=65 and
> > when you send another message from the same number and with
> > the same pid, new message replaces old message in mobile
> > memory.
> 
> I just tried this, and doesn't work.
> 
> I use Kannel 1.1.6, compiled from source on a Linux machine.
> I have also enabled the "dump PDU" feature in "gw/smsc_smpp.c"
> file. I have an SMPP connection with my SMSC (they use Comverse).
> 
> What happens is that although I set pid=65 in the url, the log
> file says "DEBUG:   protocol_id: 0 = 0x00000000".
> 
> Is this a bug in Kannel?

It looks like smpp module lacks pid support.

This is a patch hopefully to enable pid support (MO and MT) and
MO dcs support (setting mclass, coding, etc)

As I don't have access to SMPP SMSC's neither I know smpp, 
please someone test this and tell me if it works so I could commit,
or the SMPP people check, fix and commit themselves


Index: gw/smsc_smpp.c
===================================================================
RCS file: /home/cvs/gateway/gw/smsc_smpp.c,v
retrieving revision 1.56
diff -u -r1.56 smsc_smpp.c
--- gw/smsc_smpp.c      24 Apr 2002 08:13:36 -0000      1.56
+++ gw/smsc_smpp.c      30 Apr 2002 01:21:02 -0000
@@ -199,6 +199,8 @@
     msg->sms.msgdata = pdu->u.deliver_sm.short_message;
     pdu->u.deliver_sm.short_message = NULL;
     charset_gsm_to_latin1(msg->sms.msgdata);
+    msg->sms.pid = pdu->u.deliver_sm.protocol_id;
+    dcs_to_fields(&msg, pdu->u.deliver_sm.data_coding);

     return msg;
 }
@@ -276,6 +278,8 @@
     }

     pdu->u.submit_sm.data_coding = fields_to_dcs(msg, 0);
+    if(msg->sms.pid)
+       pdu->u.submit_sm.protocol_id = msg->sms.pid;

     if (octstr_len(msg->sms.udhdata)) {
         pdu->u.submit_sm.short_message =



Reply via email to