如何通过自动化的过程中使用移动服务提供商的UUSD代码服务?(How to use a mobile

2019-11-05 03:53发布

如果我有一个移动运营商的SIM卡-例如,Vodacom公司在南非,我可以通过拨号使用他们的USSD服务*111# 然后,我可以通过用我的手机键盘导航选项。

我想创建一个脚本,这是否以自动方式。 有没有办法做到这一点?

我认为这是可能的Android应用程序( 请在Android的USSD通话 )。 有没有一种方法来消耗特定的移动运营商的UUSD服务,而无需首先从运营商购买SIM卡? (即,从在HTTP / TCP服务器运行此)。

Answer 1:

要访问USSD菜单中你需要在移动网络上。 USSD是不上网,甚至也不是数据网络。 USSD被输送移动信令网络上。 因此,你需要有一个SIM卡。

要通过脚本导航USSD菜单上,您可能需要几个步骤。

  • 您需要连接到计算机的GSM设备。 一个USB调制解调器是确定的,但所有的调制解调器没有这个功能。 我一直在使用华为180E模型。

  • 你需要通过串口线跟你的调制解调器。 在Linux上,USB调制解调器,可以达到如tty设备,通常在/dev/ttyUSB0 (没有绝对的规则:某些型号只定义2台设备,某些型号定义4)。 为了测试,你可以使用一些终端软件。 我用miniterm.py ,Python程序,但minicom是可能还有很多其他OK。 对于自动化您可能需要为您的首选语言串行库。 在命令行中,有atinout ,但我没能使其正常工作, socat - /dev/ttyUSB0也应该工作。

  • 最后,谈谈您的调制解调器,您需要使用Hayes Modem AT命令。 你可以阅读的AT命令参考[3GPP 27.007] [1],用于正式文档章节7.15,但基本上,发送到调制解调器(不#...部分):

     ATZ # to reset the modem AT+CUST=2 # to close any ongoing USSD session AT+CUSD=1,"#111#",15 # to initiate the navigation 

    如果你得到的菜单,你的罚款; 如果不是,那么,事情并非绝望,但它可能会更加困难,因为你可能会需要字符编码玩。

    [1]: https://www.etsi.org/deliver/etsi_ts/127000_127099/127007/10.03.00_60 (/ts_127007v100300p.pdf



文章来源: How to use a mobile provider's UUSD code service via an automated process?
标签: ussd