Could you display the insert statement that you are using? It must be similar to the one that Mike suggested.
=-= Rene From: [email protected] [mailto:[email protected]] On Behalf Of Tania Petsouka Sent: Friday, 13 May, 2011 22:02 To: Mike Nakos Cc: [email protected] Subject: Re: sqlbox greek gsm-7 If i send url encoded chars like %00%10%12%13%14' from url , http request, there is no problem at all. The issue occurs only with sql box. So.. i tried to change table send_sms to utf8, no luck. I turned it back to latin. Did you change default settings of send_sms table? 2011/5/13 Tania Petsouka <[email protected]> I tried it, but i receive the exact string i insert to the database: %00%10%12%13%14. short_message: "%00%10%12%13%14" Obviously, i have wrong settings somewhere... but my config is like yours.. Have you got any idea? 2011/5/13 Mike Nakos <[email protected]> You are wrong when you put to DB value 0x00 because this indicates the end of the string. You see, null terminated string. You did also misunderstand the purpose of php hexdec() function. To make this function work you should use it this way: hexdec('00') But this is not the point. D O N ' T use chr() function. To correctly insert data to msgdata field and overcome the 0x00 (NULL problem - which is not kannel's problem) is this: INSERT INTO send_sms (momt, sender, receiver, msgdata, sms_type, dlr_mask, coding) VALUES('MT', 'mike', '3069112345', '%00%10%12%13%14', 2, 31, 0); And again, URL-ENCODE the characters Give it a shoot! On 13/05/11 11:35, Πετσούκα Τάνια wrote: It didn't work. i replace '@' with chr(hexdec( '%00' )) If i send a message with text " [email protected]" , I receive "user" . In kannel logs too : short_message: "user". I've tried to send all gsm charecters, but none turned to '@'. I guess it may be represented by two chars, like euro, but i have no idea. '0x00' is the null character, so kannel confuses somewhere and thinks that this is the end of the sms?? I was thinking that it might be SMSC's issue but it is not since logs from submit_sm give short_message: "user" . Mike, if you really send '@' , could you send me a db insert for a message with this symbol to try? (ps: your patch for concatenation works perfectly) ----- Original Message ----- From: "Mike Nakos" <[email protected]> To: "Πετσούκα Τάνια" <[email protected]> Cc: <[email protected]> Sent: Thursday, May 12, 2011 7:39 PM Subject: Re: sqlbox greek gsm-7 Hi again. %00 is the answer. All the alphabet is here: http://en.wikipedia.org/wiki/GSM_03.38 Best regards Mike Nakos On 12/05/11 14:08, Πετσούκα Τάνια wrote: Thank you Mike, i send greek properly using your settings. The only problem i came up with is symbol '@'. E.g : For greek letter Phi, Φ, i use : chr(hexdec( '0x12' )) ( or chr(hexdec( '%12') ) For greek letter Lamda, Λ, i use : chr(hexdec( '0x14' )) ( or chr(hexdec( '%14') ) For euro sign ¤ i use : chr(hexdec('0x1B')).chr(hexdec('0x65')) .....etc When it comes to '@' if i replace it to chr(hexdec( '0x00' )) according to gsm mapping, http://www.cardboardfish.com/support/bin/view/Main/GSMEncoding the message after this character disappears. I tried to replace it with chr(hexdec( '%40' )) , and i got 'i' in its position to the received message. So, do you know which is the proper way to send '@'? ----- Original Message ----- From: "Mike Nakos" <[email protected]> To: <[email protected]> Cc: <[email protected]> Sent: Wednesday, May 11, 2011 8:14 PM Subject: Re: Re: sqlbox greek gsm-7 Hello Tania. I use the below settings on my kannel.conf file group = smsc smsc = smpp smsc-id = <myprovider> host = <ip address> port = <smsc port> receive-port = <smsc port> smsc-username = <username> smsc-password = <password> source-addr-ton = 0 source-addr-npi = 1 dest-addr-ton = 1 #dest-addr-np = 1 bind-addr-ton = 0 bind-addr-npi = 1 system-type = "VMA" enquire-link-interval = 30 reconnect-delay = 10 throughput = 20 validityperiod = 1340 alt-charset = "UTF-8" I don't use alt_dcs and set charset field on sms_send table to UTF-8 also. Of course, any Greek character like Δ must be written %10 to msgdata field. Personally, I encode every single character to its gsm value. Always with % in front of it. DB field and table encoding is utf-8 also. Try these settings and follow the thread with title SMS from sqlbox - Problem when sending more that 160 char with greek letters on May 2011. I think this will help you. Best Regards Mike Nakos
smime.p7s
Description: S/MIME cryptographic signature
