通过蜂窝调制解调器与Telstra移动服务交互的API
项目描述
Telstra移动API for Python
这是一个创建API以与Telstra的一些移动服务交互的尝试。目前,这个库处理了
通过硬件调制解调器的大多数USSD(非结构化补充服务数据)关键功能
一些基于Web的预付费账户查询
其他Telstra服务可以稍后添加到顶层telstra.命名空间,可能由其他开发者完成。
快速入门
使用pip install telstra.mobile安装此库,确保您已插入支持3G调制解调器并安装了Telstra SIM卡。有关详细信息,请参阅后面的安装部分。
示例胜过千言万语,让我们直接进入。
from telstra.mobile import autodetect_account
account = autodetect_account()
account = autodetect_account('0412345678')
# Detected via the network
account.phone_number
# Access a session to #100#
ussd = account.main_menu()
# So something wacky manually
ussd = account.modem.sendUssd('#100*2*2#')
这提供了与Telstra的USSD(非结构化补充服务数据)服务的接口。您可能也知道这是#100#或#125#服务。
因此,现在您拥有了一个账户,它提供了您通过USSD手动执行常见移动指令的访问权限。各种操作都实现了自动化,例如余额和过期检查。
此库允许在没有电话号码的情况下自动检测,即第一个响应的物理调制解调器,或者在有电话号码的情况下,调制解调器/账户必须符合给定的号码。
如果您已经有一个可用的python-gsmmodem调制解调器实例,那么您可以通过在手动初始化账户时直接传递它来重用它。
from telstra.mobile import Prepaid
modem = ... #pre-existing python-gsmmodem instance
prepaid = Prepaid(modem)
功能
此库提供了一组基于Python的API,可以通过连接的移动调制解调器与这些服务进行通信。因此,您可以根据底层账户的电话号码轻松自动检测账户(和调制解调器)。这虽然很有帮助,但完全是Telstra特定的。
初始实现具有用于处理Telstra预付费的API,因为这是我主要可以测试的。在一定程度上,我已经能够将代码的一些部分抽象化,以便也可以与Telstra后付费一起使用。
需求
与python-gsmmodem兼容的USB或串行移动调制解调器。像中兴3571-Z这样的USB 3G调制解调器或棒对于所有已知功能都非常好。
Telstra SIM卡,预付费或后付费
安装
获取材料,将SIM卡插入调制解调器,将调制解调器连接到计算机。
确保您可以通过其串行端口与调制解调器通信,例如使用Hyperterminal(Windows)或screen或cu(Linux)。这可能需要安装驱动程序。
安装此库。所有依赖项将自动满足
pip install telstra.mobile
或者,如果您喜欢Buildout
[buildout] parts = telstra [telstra] receipe = zc.recipe.egg eggs = telstra.mobile interpreter = py
开始使用此库。建议使用自动检测功能,因为这将自动找到正确的串行端口进行连接。请参阅上面的快速入门。
脚本
bin/send-credit - 通过利用相关的USSD菜单和选项,将信用发送到指定的Telstra预付费电话号码。此脚本可以根据调用时的一些条件自动运行(例如目标账户余额和过期)。
有用的链接
贡献者
贡献者
David Beitey,作者
变更日志
0.1 (2015-06-05)
添加选项以响应式或立即发送信用到发送信用脚本。[davidjb]
通过Web API调用改进发送信用脚本。[davidjb]
添加基于Web的预付费元数据API。[davidjb]
修复当第一个调制解调器工作后自动检测所有调制解调器的问题。[davidjb]
添加使用PIN初始化调制解调器和账户的能力。[davidjb]
添加发送信用脚本检测调制解调器电话号码的能力。[davidjb]
发送信用脚本默认不保存数据(除非明确告知否则运行)。[davidjb]
添加呼叫信用余额检测。[davidjb]
处理初始化后立即访问调制解调器的情况。[davidjb]
取消各种USSD会话以防止后续错误。[davidjb]
改进余额不足时的信用转账处理。[davidjb]
改进预付费账户的金额解析。[davidjb]
使用改进的模块日志格式。[davidjb]
添加发送信用脚本以允许编写发送信用的脚本。[davidjb]
使用templer创建的包[davidjb]
项目详情
telstra.mobile-0.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 6f55a30e2e172b9f41f87dd4c79ed04719f15f4f7928f50aaed4518d59c3db34 |
|
MD5 | 03955a15aefb59182e1d9ace145d8aa5 |
|
BLAKE2b-256 | 0bf30653e62c1a740cf01ed949992441caafa7d7a9a18adaf1f00daafafa8217 |