Unofficial API for Brunt
brunt的Python项目详细描述
首当其冲
brunt的非官方python sdk,基于这里的npm版本https://github.com/MattJeanes/brunt-api
此软件包允许您从代码中控制首当其冲的设备。
示例脚本
此脚本显示调用的用法和如何使用调用的输出,如果您已经知道设备的名称,则不需要调用getthings。
此脚本检查称为“blind”的盲板的当前位置,如果是100(完全打开),则将其设置为90,反之亦然。
frombrunt.bruntimportBruntAPIbapi=BruntAPI()print("Calling Brunt")bapi.login('username','password')print(" Logged in, gettings things.")things=bapi.getThings()['things']print(f" { len(things) } thing(s) found.")state=bapi.getState(thing='Blind')['thing']print(f" Current status of { state['NAME'] } is position { state['currentPosition'] }")newPos=100ifint(state['currentPosition'])==100:newPos=90print(f" Setting { state['NAME'] } to position { newPos }")res=bapi.changeRequestPosition(newPos,thing='Blind')print(' Success!'ifreselse' Fail!')
bruntapiBruntAPI()
API包装器的构造函数。
如果您在这里提供用户名和密码,它们将被存储,但不会被使用。 当调用另一个方法时,自动登录是有效的,不需要显式登录。
:param username:您的brunt帐户的用户名 :param password:brunt帐户的密码
登录
BruntAPI.login(self,username,password)
使用用户名和密码的登录方法
:param username:您的brunt帐户的用户名 :param password:brunt帐户的密码
:如果成功,则返回:true :引发:请求调用错误
getthings
BruntAPI.getThings(self)
在您的帐户中注册物品
:return:dict,内容注册在登录帐户和api调用状态中 :引发:请求调用错误
getstate
BruntAPI.getState(self,**kwargs)
获取事物的状态
:param thing:一个带有对象名称的字符串,然后使用getthings进行检查。 :param thing uri:uri(字符串)从中获取状态的对象,不检查getthings。
:return:一个带有事物状态的dict。 :如果请求的对象不存在,则引发:ValueError。未登录时出现名称错误。合成错误时 没有给出一个参数。
changerequestposition
BruntAPI.changeRequestPosition(self,request_position,**kwargs)
改变物体的位置。内部调用键设置为的changeKey方法 请求位置和设置为请求位置的值
:param request_position:幻灯片的新位置(0-100) :param thing:一个带有对象名称的字符串,然后使用getthings进行检查。 :param thing uri:uri(字符串)从中获取状态的对象,不检查getthings。
:return:一个带有事物状态的dict。 :如果请求的对象不存在或位置不在0和100之间,则引发:ValueError。 未登录时出现名称错误。不完全给定一个参数时出现语法错误。
changeKey
BruntAPI.changeKey(self,**kwargs)
通过提供键和值来更改事物的变量。主要用于将来的添加。
:param key:要更改的值的键 :param value:新值 :param thing:一个带有对象名称的字符串,然后使用getthings进行检查。 :param thing uri:uri(字符串)从中获取状态的对象,不检查getthings。 :return:一个带有事物状态的dict。 :如果请求的对象不存在或位置不在0和100之间,则引发:ValueError。 未登录时出现名称错误。不完全给定一个参数时出现语法错误。