Hi,

Have you read my response? Please read and reread until you understand. I 
cannot explain it any more clear.

BR,
Nikos
  ----- Original Message ----- 
  From: [email protected] 
  To: Nikos Balkanas 
  Cc: [email protected] 
  Sent: Friday, January 01, 2010 1:49 PM
  Subject: Re: MySql Script for kannel for storing response from SMPP


  Hi Nikos,

  I am totally confused with MySql DLR part. :-( 

  Please find the attached kannel configuration.  if  any mistake please tell 
me what is wrong.

  what is the use of dlr-storage = internal ?
  what is the use of dlr-storage = mysql ?

  I am using dlr-storage = mysql

  I have created mysql table as below but when i push messages delivery report 
is not getting stored in the table.

  CREATE TABLE dlr (
       smsc varchar(40),
       ts varchar(40),
       destination varchar(40),
       source varchar(40),
       service varchar(40),
       url varchar(255),
       mask int(10),
       status int(10),
       boxc varchar(40)
     )

  for this 

  I added dlr configuration in kannel as below 

  #--- mysql connection

  group = mysql-connection
  id = mydlr
  host = localhost
  port = 3306
  username = root
  password = xxxxx
  database = kannel
  max-connections = 1
   
  #---- DLR table structure

  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




  Warm Regards, 
  Kiran Reddy




  Nikos Balkanas wrote: 
    Hi,

    DLRs are biding proof of receipt of an SMS. It is generated from the SIM of 
the destination phone and propagated throughout the chain to reach you. That's 
what you need to bill your customer.

    As Jovan mentioned, kannel can process DLRs in memory or using an external 
DB. This is just for internal processing by kannel and are deleted after SMS 
delivery or failure. External DB is slower, but preserves DLRs during a server 
crash, and are necessary if you load balance among various bearerboxes. DLRs 
are recorded permanenetly in access logs. Kannel gives the option of an 
additional HTTP API to store them permanently into an externally defined 
storage. That's what dlr-url does for you. Upon receipt of a DLR kannel will 
call the dlr-url if defined. Mind you it is your responsibility to provide the 
external webserver and database for the storage.

    You can define default dlr-url in group sendsms-user (read user guide). Or 
you can give it directly in the push URL (must be urlencoded).

    There are various types of DLRs you can request from the SMSc, i.e. SMS 
buffered, SMS accepted by SMSc, etc. dlr-mask specifies which of these reports 
you want. To get all use 63 - in latest CVS. You can give dlr-mask only in the 
push url of each message. You should read User's guide to learn about the 
different DLR types and how are defined in dlr-mask.

    Hope this helps,

    Happy New Year,
    Nikos

      ----- Original Message ----- 
      From: naryam smith 
      To: [email protected] 
      Sent: Friday, January 01, 2010 12:48 AM
      Subject: Re: MySql Script for kannel for storing response from SMPP


            Hi

            I have the same problem as Kiran. I do not understand where to set 
the dlr-url and dlr-mask and what are the formats of these parameters. I could 
not understand from the documentation.

            Also, from Debian (without gnome/kde or similar how do I access a 
URL such as:
            > 
http://192.168.1.93:13013/cgi-bin/sendsms?username=kiran&password=kiran&to=919036971573&text=This+is+testfor
            > priority and message response&dlr-mask=31&priority=3
            Where would you use such url?

            Thanks,

            Naryam

            --- On Wed, 12/30/09, Jovan Kostovski <[email protected]> wrote:


              From: Jovan Kostovski <[email protected]>
              Subject: Re: MySql Script for kannel for storing response from 
SMPP
              To: "[email protected]" <[email protected]>
              Cc: [email protected]
              Date: Wednesday, December 30, 2009, 10:35 AM


              On Wed, Dec 30, 2009 at 2:07 PM, [email protected]
              <[email protected]> wrote:
              > Hi Jovan,
              >
              > I created Mysql tables a below.And also can any one please 
check my kannel
              > configuration if any mistake is there please let me know what 
is wrong. I
              > want to test message priority and message response (dlr-mask).

              The dlr table is a temporary table used by Kannel to store dlr 
data
              for the message for which it hasn't received delivery status.
              If you want to check the DRL statuses, you should define dlr-url 
and
              dlr-mask for the messages that you are sending.

              >
              > Database name kannel:
              >
              >    CREATE TABLE dlr (
              >      smsc varchar(40),
              >      ts varchar(40),
              >      destination varchar(40),
              >      source varchar(40),
              >      service varchar(40),
              >      url varchar(255),
              >      mask int(10),
              >      status int(10),
              >      boxc varchar(40)
              >    )

              The correct configuration for the dlr table which you have 
created is:

              #---- DLR table structure
              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

              > Send SMS URL
              >
              > 
http://192.168.1.93:13013/cgi-bin/sendsms?username=kiran&password=kiran&to=919036971573&text=This+is+testfor
              > priority and message response&dlr-mask=31&priority=3

              The dlr-url is missing in the request.
              This url is called when kannel receives the message status. Set 
the
              parameters of the dlr-url which you are interested in
              and set some messageid. Check the userguide for details ;)

              BR, Jovan

           




------------------------------------------------------------------------------


  Database name kannel:

  CREATE DATABASE kannel;
  USE DATABASE kannel;
    CREATE TABLE dlr (
       smsc varchar(40),
       ts varchar(40),
       destination varchar(40),
       source varchar(40),
       service varchar(40),
       url varchar(255),
       mask int(10),
       status int(10),
       boxc varchar(40)
     )



  My Kannel.conf

  #------ Kannel Box Admin Conf

  group = core
  admin-port = 13000
  smsbox-port = 13001
  admin-password = xxxxx
  dlr-storage = mysql
  log-file = "/var/log/kannel/bearerbox.log"
  store-file = "/var/log/kannel/kannel.store"
  access-log = "/var/log/kannel/access.log"
  log-level = 0

  #--- mysql connection

  group = mysql-connection
  id = mydlr
  host = localhost
  port = 3306
  username = root
  password = xxxxx
  database = kannel
  max-connections = 1
   
  #---- DLR table structure

  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

  #---- This is connection to smpp simulater
  #group = smsc
  #smsc = smpp
  #smsc-id = testsmsc
  #host = <a href="http://test.host.com"; target="_blank">test.host.com</a>
  #port = 2775
  #receive-port = 2775
  #smsc-username = 'smppclient'
  #smsc-password = password
  #system-type = 'VMA'
  #service-type = 'test'
  #interface-version = 34
  #address-range = ''
  #msg-id-type = 0

  group = smsc
  smsc = fake
  smsc-id = test
  port = 13005
  allowed-prefix = 07
  log-file = "/var/log/kannel/fake.log"
  log-level = 0
  #connect-allow-ip = 127.0.0.1

  group = smsbox
  bearerbox-host = localhost
  sendsms-port = 13013
  global-sender = xxxxx
  mo-recode=true
  log-file = "/var/log/kannel/smsbox.log"
  log-level = 0
  access-log = "/var/log/kannel/access.log"

  group = sendsms-user
  username = xxxxx
  password = xxxxx
  dlr-url = "http://someurl?";
  default-smsc = test
  concatenation= true
  max-messages = 3
  forced-smsc = "test"

  # SMS SERVICE 'default'
  group = sms-service
  keyword = nop
  text = "You asked nothing and I did it!"
  catch-all = true # Catch all incoming messages
                   # regarding the keyword. If you
                   # define other services, remove
                   # this line.
  # SMS SERVICE for receiving sms messages
  # If you're about to implement service to receive sms messages.
  # group = sms-service
  # keyword = yourkeyword
  # get-url = 
http://server.domain/moodle/receivesms.php?q=%k&sender=%p&message=%a



  Send SMS URL

  
http://192.168.1.93:13013/cgi-bin/sendsms?username=xxxxx&password=xxxxx&to=919xxxxxxxxxx&text=This
 Txt message&dlr-mask=31&priority=3

Reply via email to