通过移动宽带发出 USSD 请求

通过移动宽带发出 USSD 请求

基本上,我想要做的是检查位于 3G 调制解调器(USB)中的预付费 SIM 卡的余额。

一些背景信息:

  1. 我的 3G 互联网提供商(名为 Beeline)也提供手机服务。要查看任何 SIM 卡上的余额,我只需在任何手机上输入 *102#,就会收到余额通知。因此,最有效的方法是将 SIM 卡从调制解调器中取出放入手机中,然后通过“拨打”*102# 来查看余额
  2. 调制解调器附带一个 Windows 程序,其中有一个“检查余额”按钮。出于各种原因,我不想尝试用 Wine 模拟此程序。而且我不需要这样做,因为 --感谢 Ubuntu -- 调制解调器开箱即用,没有任何问题。

我的想法是:是否可以通过 Ubuntu 通过 3G 调制解调器执行这些 USSD 请求(对于任何随机手机来说这似乎不是问题)?

答案1

这些“hash-tag-request”被称为USSD。搜索这个关键词,你会找到不同的解决方案:

  1. 加姆可以发送 USSD 请求并通过命令接收gammu getussd *102#。正如指出的那样这里某些 GSM 调制解调器可能需要相当复杂的 USSD 代码转换。请确保您有读取设备/dev/ttyUSB0(或类似设备)的权限。可以找到一个示例这里

  2. Gsm-ussd对于 ussd 来说,似乎比 gammu 更易于使用,但总体而言功能较少。它不在官方存储库中,请从以下位置下载这里并进行类似如下的配置

  3. 预付管理小程序具有漂亮的图形界面,并且位于官方存储库中。这可能是最简单、最棒的解决方案。您的提供商很可能已列出,因此您无需执行任何操作。如果没有,请将 USSD 号码添加到“/usr/share/mobile-broadband-provider-info/serviceproviders.xml”。找到您所在国家/地区和提供商的部分,然后添加

    <balance-check>
        <ussd>*102#</ussd>
    </balance-check>
    

    *102#必须用您的提供商的 USSD 代码替换。它看起来就像这样复杂:

预付管理器小程序的屏幕截图

相关内容