如何通过短信提供不同的字符集?

时间:2010-08-24 02:04:18

标签: java encoding sms

我们有一个用java编写的聚合器应用程序,它将来自第三方的基于xml的内容传送到不同的SMSC,而SMSC又将它传送到手机.xml内容大多是普通英语,而不是有效载荷,可以是GSM 03.38,IA5,ISO -8859-1,Unicode,二进制等。我们只有一个手机进行测试。我们发现除了iso-8859-1之外没有任何东西可以传递到其中,即一些角色丢失或者是胡言乱语。任何想法如何克服这一点? 问候, Subhendu

1 个答案:

答案 0 :(得分:1)

解决方案将取决于可能的事情,包括您如何将消息传递给SMSC。您使用的是SMPP还是某些HTTP API? SMSC的文档应该包括如何向他们提供SMS 7bit和16bit unicode的笨拙字符。除非你知道你要交付什么,否则8bit二进制文件将没有任何用处。

  • 您收到的XML是否表示有效负载的字符集和编码?
  • 您是否在将有效载荷传送到SMSC之前对其进行了转换?
  • 符合预期的[转换]有效载荷是否符合SMSC标准?
  • 仅在7位消息,或仅使用unicode,还是所有内容中都会出现这种情况?
  • 您是否尝试过将unicode和/或扩展的GSM字符短信发送到手机,以确保它能够显示您期望的所有内容?
  • 确认您的字节流是GSM 03.38 http://en.wikipedia.org/wiki/GSM_03.38
  • 的正确表示

使用更多详细信息更新您的问题,我们可能会找到解决方案。