我正在尝试设置一个系统来自动接收和处理短信。该系统旨在用于资金和系统管理员技能都极其受限的环境(印度一个没有资金的移民工人工会)(在不久的将来,我将是唯一一个管理该系统的人)。目的是使一些功能(会员注册、身份证生成、警报和其他信息的通信)更容易实现。
但是,对于接收和发送短信,我找不到任何可以在印度使用的电子邮件转短信或其他类型的网关。也许有一个(编辑:显然 Clickatell 确实有印度服务,但价格似乎高得离谱。如果没有,是否可以依靠 USB 移动调制解调器(例如印度许多移动提供商提供的调制解调器)?似乎使用 gammu 或 bitpim 等实用程序,可以编写此类调制解调器上的 SMS 操作脚本。但这真的可行吗?
提前感谢您的想法和建议。
编辑:原始第一个问题被删除,因为这两个问题几乎没有关系。原始第一个问题被单独提出这里
答案1
我发现最好的工具是运行在 Linux 服务器或 Windows 上的 cygwin 上的开源软件包。和 Randolph 一样,我使用 (三个) 串行连接的 GSM 调制解调器运行它。
http://smstools3.kekekasvi.com/index.php?p=
这短信服务器工具 3是一款短信网关软件,可以通过 GSM 调制解调器和手机发送和接收短信。
只需将文本文件存储到特殊的假脱机目录中,即可发送短信。程序会监视此目录并自动发送新文件。它还将收到的短信作为文本文件存储到另一个目录中。还支持二进制消息(包括 Unicode 文本),例如铃声消息。还可以向支持 WAP / MMS 的手机发送 WAP 推送消息。
该程序可以作为 SMS 守护程序运行,可在操作系统启动时自动启动。通过使用多个 GSM 设备(目前最多 64 个,此限制很容易更改),可以确保高可用性。
程序可以在收到新消息、成功发送以及检测到问题等事件后运行其他外部程序或脚本。这些程序可以检查相关文本文件并执行自动操作,例如将信息存储到数据库(例如 MySQL 或 Microsoft SQL Server)、发送自动回复、通过电子邮件转发消息(短信到电子邮件网关)......以及任何你喜欢的操作。
SMS 服务器工具可在 Microsoft Windows(带 CygWin)和任何 Unix(包括 Solaris、BSD、FreeBSD 和 GNU/Linux)上运行。此软件需要 GSM 调制解调器(或移动电话),其 SMS 命令集符合欧洲规范 GSM 07.05(=ETSI TS 300 585)和 GSM 03.38(=ETSI TS 100 900)。支持 AT 命令集。设备可使用插座与串行端口、红外、USB 或网络调制解调器连接。
答案2
现在我已经基本实现了该应用程序,我也可以回答这个问题了 :)。gammu 和 gnokii 都是可选的(如前所述,SMS 服务器工具没有维护),它们在不同的实际手机上的性能差异很大。我不得不对五部手机进行测试,才找到一款可以持续工作的手机。我现在使用带有 sqlite 后端的 gammu-smsd,它会触发 bash 脚本来处理短信并处理回复的发送。数据的使用和操作是通过 Python 编码的 Web 应用程序进行的。
我发现 gammu-smsd 比 gnokii 附带的 smsd 更加广泛和强大;它提供了一系列配置选项,您可以找到这里。它还提供了一个名为 gammu-smsd-inject 的实用工具,使发送短信变得非常容易。应该注意的是,gnokii 的人也非常友好和乐于助人。希望这些信息将来能帮助到别人。