【问题标题】:Is there any API for USSD requests for a usb modem是否有任何用于 USB 调制解调器的 USSD 请求的 API
【发布时间】:2019-02-03 16:19:55
【问题描述】:

我在我的国家开始了一个小型充值业务,出于不同的原因,我不得不使用 USB 调制解调器来发出我的业务所依赖的 USSD 请求

我找到的最好的调制解调器是Huwaui e3531usb 调制解调器

我考虑构建我的网站的方式是创建一个小型守护程序,它不断检查网站是否有新订单并使用 mmcli 执行 USSD 请求(这是我能找到的最好的实用程序,但我愿意接受建议)

这个解决方案的问题是 我必须编辑mmcli 源代码以仅输出 USSD 响应(正常响应中有很多额外的单词)而且 mmcli cancel USSD 请求不起作用(不知道为什么)更不用说可以去的不同的东西错误并停止影响业务的守护进程

我的第二个选择是使用Hilink 固件,它为我提供了一个 API,可以直接从我的网站发出 USSD 请求(正是我正在寻找的),但这也有 2 个小问题,第一个是它没有给我取消 USSD 请求的选项,第二个是发出请求有点慢

所以我正在寻找中间的东西,能够拥有一个 API,这样我就可以从我的网站运行 USSD 命令,它既快速又可靠

我能找到的最好的是project,但我在阅读源代码后发现它正在使用Hilink 固件 API 工作。

【问题讨论】:

    标签: usb modem sms-gateway


    【解决方案1】:

    我们必须在我们公司为此做一个“破解”解决方案。由于我们没有足够的时间学习 mmcli 库,我们的解决方案是使用 C++ 中的“popen”来管道 linux 终端命令,并对其进行解析以生成并充分响应我们传递的 USSD 命令; IE。我们通过“popen”发送 USSD 命令并解析响应并发送所需的响应。我们在默认安装了 mmcli lib 的 Ubuntu 上运行我们的服务器,这是我们使用的。所以我们不必查看源代码,只需使用简单的管道将我们的命令通过管道传输到终端。我应该注意到它只产生了我们期望的完美输出并且没有额外的信息,并且您可以设置重试计数以防出现错误。

    以下是我们设置架构的方式,以防万一:

    网络服务器

    • 有一个在专用端口上运行的开放式 websocket,它侦听来自服务器的传入请求,并向与其连接的所有客户端(本地服务器)推送。

    本地 linux 终端

    • 有一个 websocket 客户端正在等待来自服务器的消息
    • 当它收到一条消息时,它会解析并执行 USSD 代码,然后向我们的回调 api url 发送一条关于执行状态的消息。

      我们已经运行了几个月了,我们的唯一担心的是电源和稳定的互联网连接;我们的本地服务器必须始终开机并在线。

    我很乐意分享我们用于 linux 命令的代码,它在 github 上。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-13
      • 1970-01-01
      相关资源
      最近更新 更多