Hi

Your pdu dump is incorrect, if it was converted to GSM to message data should 
be 1b 29.
Check your bind configuration, you might have alt-charset set to "Latin1" or 
something similar (eg ASCII, or ISO-8859-1).
The reason why Vodacom is asking you to use data-coding 3 is because you are 
submitting your data in Latin1.

We send a lot of messages to Vodacom daily, and don't have this issue.
I just tested a message "{test}" and it was correctly delivered to the phone.  
Here is my pdu dump (msisdns are hidden)

SMPP PDU 0x2aaad0244160 dump:
  type_name: submit_sm
  command_id: 4 = 0x00000004
  command_status: 0 = 0x00000000
  sequence_number: 27063026 = 0x019cf2f2
  service_type: NULL
  source_addr_ton: 1 = 0x00000001
  source_addr_npi: 1 = 0x00000001
  source_addr: "2782xxxxxxx"
  dest_addr_ton: 1 = 0x00000001
  dest_addr_npi: 1 = 0x00000001
  destination_addr: "2782xxxxxxx"
  esm_class: 0 = 0x00000000
  protocol_id: 0 = 0x00000000
  priority_flag: 1 = 0x00000001
  schedule_delivery_time: NULL
  validity_period: NULL
  registered_delivery: 1 = 0x00000001
  replace_if_present_flag: 0 = 0x00000000
  data_coding: 0 = 0x00000000
  sm_default_msg_id: 0 = 0x00000000
  sm_length: 8 = 0x00000008
  short_message:
   Octet string at 0x2aaad003f6a0:
     len:  8
     size: 1024
     immutable: 0
     data: 1b 28 74 65 73 74 1b 29                           .(test.)
   Octet string dump ends.
SMPP PDU dump ends.

So I agree with Andreas and Alex, you shouldn't need to change anything.
Could you perhaps supply your bind configuration?

Regards
Werner Coetzee





Werner Coetzee - Senior C Developer / Message Engine Tech Lead

E: werner.coet...@clickatell.com<mailto:werner.coet...@clickatell.com>
T: (+27) 21 910 7700
[cid:image9994bb.PNG@f34fb7fb.4f9f254d]<http://www.clickatell.com>
Note: This disclaimer<http://www.clickatell.com/message-disclaimer-clickatell/> 
applies to this email and its attachments

[Twitter]<https://www.twitter.com/clickatell>   [LinkedIn] 
<https://www.linkedin.com/company/clickatell>        [Facebook] 
<https://www.facebook.com/pages/Clickatell/187073743959>



[cid:image7a502a.GIF@37a7e458.40beffa7]<https://www.clickatell.com/resources/white-papers-guides/101-business-uses-for-sms-2nd-edition/?utm_source=exclaimer%20&utm_medium=email&utm_campaign=whitepapers%20and%20guides>
From: devel [mailto:devel-boun...@kannel.org] On Behalf Of 
hbil...@ecommunicate.biz
Sent: 08 October 2015 14:06
To: amal...@kannel.org; af...@list.fink.org
Cc: devel@kannel.org
Subject: Re: patch to allow data_coding to be set to 3
Importance: High


Hi Alex and Andreas,



Vodacom says send Latin-1 characters and set your data_coding field to 3 to 
tell the SMSC to translate the characters from Latin-1 to GSM. So that if we 
want to display the curly bracket ‘}’ you have to send the escape character and 
the round bracket character: ESC + )  Data values:0x1B 0x29 and on the phone 
you will see curly bracket ‘}’



How do you send this via Kannel if we can’t touch  the data_coding field?

If we can't send this correctly via Kannel to Vodacom SIM cards, will you allow 
Kannel users to set the data_coding field?. (This means also allowing the 
Kannel user to bypass the internal Kannel conversion so you can send 0x1B 0x29 
and the external SMSC will convert it to the curly bracket ‘} )



Below is our attempt to send the curly bracket ‘}’ if we can get this to work 
we should be able to send all the other characters that are like this.

If you see http://www.developershome.com/sms/gsmAlphabet.asp

Right curly bracket is Hex 1B29 for GSM 7-bit default alphabet and 7D for ISO 
8859 Latin 1



lynx -dump 
"http://41.185.24.138:13013/cgi-bin/sendsms?username=x&password=y&to=27831234567&text=%7D&from=27821278120&smsc=vodacom
 
<http://41.185.24.138:13013/cgi-bin/sendsms?username=x&password=y&to=27831234567&text=%7D&from=27821278120&smsc=vodacom%20>
 "



In Smsbox it comes out as Right curly bracket:

2015-10-08 10:37:32 [28232] [3] INFO: sendsms sender:<x:27821278120> 
to:<27831234567> msg:<}>



In Bearerbox it comes out as Right curly bracket:

2015-10-08 10:37:32 [28165] [12] DEBUG: SMPP[vodacom]: Sending PDU:

2015-10-08 10:37:32 [28165] [12] DEBUG: SMPP PDU 0x7f10a4007020 dump:

2015-10-08 10:37:32 [28165] [12] DEBUG:   type_name: submit_sm

2015-10-08 10:37:32 [28165] [12] DEBUG:   command_id: 4 = 0x00000004

2015-10-08 10:37:32 [28165] [12] DEBUG:   command_status: 0 = 0x00000000

2015-10-08 10:37:32 [28165] [12] DEBUG:   sequence_number: 2309 = 0x00000905

2015-10-08 10:37:32 [28165] [12] DEBUG:   service_type: NULL

2015-10-08 10:37:32 [28165] [12] DEBUG:   source_addr_ton: 1 = 0x00000001

2015-10-08 10:37:32 [28165] [12] DEBUG:   source_addr_npi: 1 = 0x00000001

2015-10-08 10:37:32 [28165] [12] DEBUG:   source_addr: "27821278120"

2015-10-08 10:37:32 [28165] [12] DEBUG:   dest_addr_ton: 1 = 0x00000001

2015-10-08 10:37:32 [28165] [12] DEBUG:   dest_addr_npi: 1 = 0x00000001

2015-10-08 10:37:32 [28165] [12] DEBUG:   destination_addr: "27831234567"

2015-10-08 10:37:32 [28165] [12] DEBUG:   esm_class: 3 = 0x00000003

2015-10-08 10:37:32 [28165] [12] DEBUG:   protocol_id: 0 = 0x00000000

2015-10-08 10:37:32 [28165] [12] DEBUG:   priority_flag: 0 = 0x00000000

2015-10-08 10:37:32 [28165] [12] DEBUG:   schedule_delivery_time: NULL

2015-10-08 10:37:32 [28165] [12] DEBUG:   validity_period: "151011103732000+"

2015-10-08 10:37:32 [28165] [12] DEBUG:   registered_delivery: 0 = 0x00000000

2015-10-08 10:37:32 [28165] [12] DEBUG:   replace_if_present_flag: 0 = 
0x00000000

2015-10-08 10:37:32 [28165] [12] DEBUG:   data_coding: 0 = 0x00000000

2015-10-08 10:37:32 [28165] [12] DEBUG:   sm_default_msg_id: 0 = 0x00000000

2015-10-08 10:37:32 [28165] [12] DEBUG:   sm_length: 1 = 0x00000001

2015-10-08 10:37:32 [28165] [12] DEBUG:   short_message: "}"



But, on the cell phone it comes out as Small letter n with tilde.  Which is 7D 
for the GSM 7-bit default alphabet

This means Kannel is converting the 7D to }

But Vodacom is not converting the 7D to } , as its expects the data_coding to 
be 3 and to receive ESC + ) i.e. Data values:0x1B 0x29  so the cell phone gets 
the wrong character.



If we try another approach and send %1B%29 which is the Right curly bracket in 
GSM 7-bit default alphabet

we get ?) on the cell phone.

From bearerbox:   short_message: "?)"



Is there any way to send this via Kannel with its current internal encoding?


Kind Regards

Hillel Bilman
Manager eCommunicate
mailto: hbil...@ecommunicate.co.za<mailto:hbil...@ecommunicate.co.za>
Cell: 083-2300002
Landline: 011-443-6164
Fax: 088-011-443-6164

Mobile Wallets  - .mobi Sites – Mobile Apps(Android, iPhone, Blackberry, Nokia) 
-  Premium Rated SMSs and short codes - SMS competitions and campaigns – Lead 
Generation - opt-in subscription Billing – MMS campaigns - USSD campaigns - WAP 
- Outlook SMS – Bulk SMS and Bulk Email – Email 2 SMS 2 Email - Developer Kit 
for Mobile Services integration





Reply via email to