【问题标题】:How to send long message using AT Commands, vb.Net如何使用 AT 命令发送长消息,vb.Net
【发布时间】:2019-11-26 06:11:46
【问题描述】:
        strMessage = SplitSMS(_dtMessageQueue.Rows(0)("Response"), 155)

        For i As Integer = 0 To strMessage.GetUpperBound(0)
            Try
                With SerialPort1
                    .Write("AT" & vbCrLf)
                    Threading.Thread.Sleep(2000)
                    .Write("AT+CMGF=1" & vbCrLf)
                    Threading.Thread.Sleep(2000)
                    .Write("AT+CMGS=" & Chr(34) & _dtMessageQueue.Rows(0)("MobileNo") & Chr(34) & vbCrLf)
                    .Write(strMessage(i) & Chr(26) & vbCrLf)
                    Threading.Thread.Sleep(3000)
                End With
            Catch ex As Exception
                MsgBox(ex.Message)
            End Try
        Next

我编写了上面的代码,以便从我的 vb.net 应用程序向手机发送短信。

是否可以在不拆分消息的情况下发送消息,

我想将消息作为一个发送。

【问题讨论】:

  • 发送带有单个 AT+CMGS 问题的 SMS 是否会出错?
  • 没有错误,但是当我尝试发送超过 160 个字符时,消息将拆分为多条消息。谢谢
  • 好的,所以您的设备的 +CMGS 实施可能存在限制。我可以提供最后一条建议:只需在 PDU 模式下编写短信,以便将多条消息作为一个单独的消息接收(有一个连接消息的标志)。我无法从中建立答案,因为我多年前就研究过它,老实说,我不记得细节(创建一致的 pdu 消息并非易事!)。恐怕你必须研究标准......
  • 好的,谢谢,你能给我一些网站吗?我可以在哪里研究这个主题。擅长在PDU模式下撰写短信。谢谢

标签: vb.net sms at-command


【解决方案1】:

短信长度限制为 160 个七位字符。它随后被编入用于传输 SMS 的 SMPP 信令协议中,并且被限制为精确的 140 字节(或 1120 位)。

尝试阅读this

【讨论】:

  • 感谢您提供的信息,但是女士/先生还有其他方法吗?就像使用 AT-Commands 发送长消息而不拆分成多条消息一样。谢谢
猜你喜欢
  • 2015-08-02
  • 2018-05-15
  • 2017-09-06
  • 1970-01-01
  • 1970-01-01
  • 2012-04-13
  • 1970-01-01
  • 1970-01-01
  • 2010-10-14
相关资源
最近更新 更多