atefsaeed2010 / datacard

Automatically exported from code.google.com/p/datacard
Other
0 stars 1 forks source link

Encoding bug with english USSD (at least for MTS RUS) #80

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Get any SIM card from MTS RUS without activated VoiceMail feature
2. Send USSD request "*100#" to get balance (russian answer) - see that USSD 
reply works correctly
3. Send USSD request "*102#" and receive trash

What is the expected output? What do you see instead?
Expect to receive "YOU HAVE NOT SUBSCRIBED TO VOICE MESSAGING. CONTACT YOUR 
SERVICE PROVIDER." instead of trash

What version of the product are you using? On what operating system?
chan_datacard: Datacard Channel Driver, Version 1.0, Revision 318, Linux with 
2.6.32 kernel

Please provide any additional information below.
I don't know what encoding is used by other operators, but for MTS RUS 8bit 
encoding is used.

My proposal is:
1. To test what encoding is used for english USSD by other operators
1.1. If everyone use 8bit - make a permanent fix
1.2. If only MTS RUS use 8bit - add a configuration variable 
ussd_english_encoding with valies "7bit", "8bit", "auto". For auto - set 8bit 
for SIM cards 25001 (MTS RUS)

Way to do a permanent fix, that resolves this bug:
1. Open at_response.c
2. Find line ~1366
3. Change const "STR_ENCODING_7BIT_HEX" to "STR_ENCODING_8BIT_HEX"

Original issue reported on code.google.com by vitaly.p...@gmail.com on 10 May 2011 at 12:47

GoogleCodeExporter commented 9 years ago
Thanks for advice, pleas migrate to 
http://code.google.com/p/asterisk-chan-dongle

My response is 
Got USSD type 0 'USSD Notify': 'UNKNOWN APPLICATION'

USSD response provide ucs value but this not same for operators

Original comment by bg_...@mail.ru on 4 Aug 2011 at 11:37