Delphi 从gprs调制解调器接收短信

Delphi 从gprs调制解调器接收短信,delphi,sms,gprs,Delphi,Sms,Gprs,我已将华为Gprs调制解调器连接到我的计算机。我想通过我的delphi应用程序接收发送到此设备的sms消息 我不知道我该怎么做有人能给我指出正确的方向吗?你需要通过串行端口使用AT命令与调制解调器通信(在USB的情况下是物理/模拟的)。您可以搜索类似的程序以及阅读邮件所需的AT命令 十年前我写了一个完整的商业短信网关。所以我想我可以帮你:) 您需要熟悉sms消息的PDU编码,因为这将为您提供最大的灵活性。为了更好地理解PDU编码,我建议您访问。阅读调制解调器支持的AT命令集,从调制解调器手册开始

我已将华为Gprs调制解调器连接到我的计算机。我想通过我的delphi应用程序接收发送到此设备的sms消息


我不知道我该怎么做有人能给我指出正确的方向吗?你需要通过串行端口使用AT命令与调制解调器通信(在USB的情况下是物理/模拟的)。您可以搜索类似的程序以及阅读邮件所需的AT命令

十年前我写了一个完整的商业短信网关。所以我想我可以帮你:)

您需要熟悉sms消息的PDU编码,因为这将为您提供最大的灵活性。为了更好地理解PDU编码,我建议您访问。阅读调制解调器支持的AT命令集,从调制解调器手册开始,也是非常有用的。不过,大多数命令都是通用的,所有调制解调器品牌都支持这些命令

以下是一些让您开始使用的命令:

AT+CMGS : to send an sms
AT+CMGR : to read an sms
AT+CMGD : to delete an sms from the mobile
如果您想要了解如何与调制解调器通信、对消息进行解码/编码、转换字符集等信息,我建议从()中查看源代码。(提示:搜索文件夹gw\smsc下的文件smsc_at.c)。
代码是用c语言编写的,但理解起来应该不会太难(尽管有点c知识是受欢迎的)

使用ComPort或类似的库连接到调制解调器,然后使用以下扩展的Hayes命令:

要输入PIN码,请执行以下操作:

AT+CPIN=<pin_code> 
要开始在不轮询的情况下实时接收SMS并将其保存到SIM卡,请执行以下操作:

AT+CNMI=1,2,0,1,1
要发送短信息:

AT+CMGS="<recipient>"
Message body.<char #27>
AT+CMGS=“”
消息体。
这可能足以让您开始,如果您想要更多功能,您应该真正了解PDU语法,它非常强大

您还可以参考我几年前写的一个简单的SMS网关:

你能给我提供一些我能想出主意的来源吗。我以前使用过串行端口,但我需要设置,如波特率…设置将根据驱动程序进行,对于源代码,我知道一个API(smslib.org),它在内部处理所有内容,但目前仅适用于Java和.net。
AT+CMGS="<recipient>"
Message body.<char #27>