Hi Amit,Stumbled upon this use case when testing direct dialing of USSD String from Simulator like *123*2#When this direct dialing string was used and dialed from the simulator , Ussd string parsed and given to SB comes as *123*2#@I saw this problem at GSMCharsetEncoder.java// The final one if total bits are not LCM of 8//if (bitpos % 8 != 0) {out.put((byte) (b & 0xFF));//}To over come this problem, i replaced GSMCharsetEncoder and Decoder in USSDStringimpl by JCharset and the jar is replaced both at Simulator and Gateway and now when i dial USSD String from Simulator as *123*2# it is coming to Parent SBB as *123*2# as the encoder and decoder are replaced but when i view the same via wireshark it is coming as different characters... this is not right...Any pointers to the same would be appreciatedREgardsArav
If the total number of characters to be sent equals (8n-1) where n=1,2,3 etc. then there are 7 spare bits at the end of the
message. To avoid the situation where the receiving entity confuses 7 binary zero pad bits as the @ character, the
carriage return or <CR> character (defined in subclause 7.1.1) shall be used for padding in this situation, just as for Cell
Broadcast.
If <CR> is intended to be the last character and the message (including the wanted <CR>) ends on an octet boundary,
then another <CR> must be added together with a padding bit 0. The receiving entity will perform the carriage return
function twice, but this will not result in misoperation as the definition of <CR> in subclause 7.1.1 is identical to the
definition of <CR><CR>.