博世Indego割草机API

pyIndego的Python项目详细描述


pypi生成状态

Bosch Indego割草机的API

与家庭助理一起使用

对于源文件和版本处理:https://github.com/jm-73/pyindego

对于pypi包:https://pypi.org/project/pyindego/

所需基本信息

<表><广告>信息 说明 < /广告><正文>你的用户名您在Boschsmartmove应用程序中的用户名您的密码您的应用程序密码您的序列号您的Bosch Indego序列号(可在移动器、移动器菜单或应用程序中找到)

python库是为带有用户名(电子邮件地址)和密码的登录方法编写的。不支持使用Facebook帐户登录。

调用api和割草机

调用api:

IndegoApi_Instance = IndegoAPI(username=your_mail@gmail.com, password=your_password, serial=your_serial)

获取函数

从API和割草机更新数据的函数的说明。仅从Bosch API收集数据的功能不会唤醒割草机。从Bosch API和割草机收集数据的功能确实会唤醒割草机的睡眠。

<表><广告>API调用博世API 割草机 割草机需要联机 < /广告><正文>获取警报获取常规数据获取下一个按钮获取操作数据 x x x获取状态 x获取更新 x获取用户登录 x

get函数列表

getalerts()

收集警报。

Response:{'alm_sn':'123456789','alert_id':'5d48171263c5345a75dbc017','error_code':'ntfy_blade_life','headline':'Underhållstips.','date':'2019-08-05T11:46:26.397Z','message':'Kontrollera klippknivarna. Indego har klippt i 100 timmar. Ska den fungera optimalt, kontrollera klippknivarna så att de är i bra skick. Du kan beställa nya knivar via avsnittet Tillbehör.','read_status':'unread','flag':'warning','push':True}

getGenericData()

收集序列号、服务计数器、名称、割草模式、型号和固件。

Response:{'alm_sn':'123456789','alm_name':'Indego','service_counter':60488,'needs_service':False,'alm_mode':'manual','bareToolnumber':'3600HA2300','alm_firmware_version':'00837.01043'}

getNextCutting()

收集下一次切割的数据。似乎得到了发送到割草机的最后一个命令。

Response:{'lastMowSent':'2019-08-20T05:09:51.842+01:00','lastMowCode':200}

getOperatingData()

收集操作数据:电池、运行时间、花园数据和温度。

Response:{'runtime':{'total':{'operate':86333,'charge':25845},'session':{'operate':0,'charge':0}},'battery':{'voltage':33.5,'cycles':1,'discharge':0.0,'ambient_temp':17,'battery_temp':17,'percent':335},'garden':{'id':7,'name':1,'signal_id':1,'size':625,'inner_bounds':3,'cuts':26,'runtime':82197,'charge':24860,'bumps':4650,'stops':24,'last_mow':4},'hmiKeys':1344}

getState()

收集割草机状态、%割草机、位置、运行时间、地图坐标。

Response:{'state':64513,'map_update_available':True,'mowed':95,'mowmode':0,'xPos':68,'yPos':30,'runtime':{'total':{'operate':86327,'charge':25845},'session':{'operate':4,'charge':0}},'mapsvgcache_ts':1565381013023,'svg_xPos':928,'svg_yPos':264}

getupdates()

检查割草机是否有可用的更新。

Response:{'available':False}

getusers()

收集用户数据。

Response:{'email':'mail@gmail.com','display_name':'Indego','language':'sv','country':'GB','optIn':True,'optInApp':True}

从本地缓存的API数据中读取数据的函数

所有名字中不包含"get"的函数都是从本地存储的变量中收集数据的。没有API调用Bosch或Mower。

AlertScount()

alertscount
统计割草机上的当前警报。

Response:
1

警报描述()

AlertDescription
获取al的详细列表ERTS/P>

IndegoApi_Instance = IndegoAPI(username=your_mail@gmail.com, password=your_password, serial=your_serial)
0

almFirmwareReversion()

alertscount
获取割草机固件版本。

IndegoApi_Instance = IndegoAPI(username=your_mail@gmail.com, password=your_password, serial=your_serial)
1

almmode()

alertscount
获取割草机模式。

IndegoApi_Instance = IndegoAPI(username=your_mail@gmail.com, password=your_password, serial=your_serial)
1

almname()

alertscount
获取割草机实例名称。

IndegoApi_Instance = IndegoAPI(username=your_mail@gmail.com, password=your_password, serial=your_serial)
3

bareToolNumber()

alertscount
显示割草机的型号。

IndegoApi_Instance = IndegoAPI(username=your_mail@gmail.com, password=your_password, serial=your_serial)
4

电池()

alertscount
获取电池信息。

IndegoApi_Instance = IndegoAPI(username=your_mail@gmail.com, password=your_password, serial=your_serial)
5

batterypercent()

alertscount
获取剩余百分比的原始值。对于1代来说,这似乎是电池电压。对于2代割草机,它似乎是电池中剩余的实际百分比。

IndegoApi_Instance = IndegoAPI(username=your_mail@gmail.com, password=your_password, serial=your_serial)
5

batterypercentadjusted()

alertscount
获取左百分比的调整值。为1代割草机计算,为2代割草机计算实际百分比值。

IndegoApi_Instance = IndegoAPI(username=your_mail@gmail.com, password=your_password, serial=your_serial)
7

电池电压()

alertscount
得到电池的电压。对于1代割草机,该值似乎是正确的。对于Gen 2,它的值似乎与电池中剩余的百分比相同。

IndegoApi_Instance = IndegoAPI(username=your_mail@gmail.com, password=your_password, serial=your_serial)
8

电池循环()

alertscount
不知道这个值是多少?

IndegoApi_Instance = IndegoAPI(username=your_mail@gmail.com, password=your_password, serial=your_serial)
9

电池放电()

alertscount
似乎是割草机正在绘制的AH。

Response:{'alm_sn':'123456789','alert_id':'5d48171263c5345a75dbc017','error_code':'ntfy_blade_life','headline':'Underhållstips.','date':'2019-08-05T11:46:26.397Z','message':'Kontrollera klippknivarna. Indego har klippt i 100 timmar. Ska den fungera optimalt, kontrollera klippknivarna så att de är i bra skick. Du kan beställa nya knivar via avsnittet Tillbehör.','read_status':'unread','flag':'warning','push':True}
0

电池bienttemp()

alertscount
似乎是电池的环境温度。

Response:{'alm_sn':'123456789','alert_id':'5d48171263c5345a75dbc017','error_code':'ntfy_blade_life','headline':'Underhållstips.','date':'2019-08-05T11:46:26.397Z','message':'Kontrollera klippknivarna. Indego har klippt i 100 timmar. Ska den fungera optimalt, kontrollera klippknivarna så att de är i bra skick. Du kan beställa nya knivar via avsnittet Tillbehör.','read_status':'unread','flag':'warning','push':True}
1

电池组()

alertscount
似乎是电池的温度。

Response:{'alm_sn':'123456789','alert_id':'5d48171263c5345a75dbc017','error_code':'ntfy_blade_life','headline':'Underhållstips.','date':'2019-08-05T11:46:26.397Z','message':'Kontrollera klippknivarna. Indego har klippt i 100 timmar. Ska den fungera optimalt, kontrollera klippknivarna så att de är i bra skick. Du kan beställa nya knivar via avsnittet Tillbehör.','read_status':'unread','flag':'warning','push':True}
2

国家(country)

alertscount>> 显示Bosch帐户的国家/地区。

AAAAAAAAA 23

显示名称()

AlertScount
不知道这是什么…

AAAAAAA 30

MapUpdateAvailable()

AlertScount
显示是否有地图图像的更新。

啊!

型号说明()

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 获取用户友好的型号名称。

啊!

型号电压()

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 获取预定义的电压限制,以便计算电池百分比。

是啊。

模型电压管理()

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 获取最小预定义电压限制,以便计算电池百分比。

啊!

型号voltagemax()

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 获取最大预定义电压限制,以便计算电池百分比。

啊!

修剪过的()

警报
显示已修剪草坪的百分比

Response:{'alm_sn':'123456789','alm_name':'Indego','service_counter':60488,'needs_service':False,'alm_mode':'manual','bareToolnumber':'3600HA2300','alm_firmware_version':'00837.01043'}
6

mowerState()

AlertScount
显示割草机的当前状态

Response:{'alm_sn':'123456789','alm_name':'Indego','service_counter':60488,'needs_service':False,'alm_mode':'manual','bareToolnumber':'3600HA2300','alm_firmware_version':'00837.01043'}
7

mowerstatedescription()

AlertScount
显示割草机当前状态的简单描述。可用状态包括停靠、割草、卡住、诊断模式、寿命结束、软件更新。

Response:{'alm_sn':'123456789','alm_name':'Indego','service_counter':60488,'needs_service':False,'alm_mode':'manual','bareToolnumber':'3600HA2300','alm_firmware_version':'00837.01043'}
8

mowerStateDescriptionDetailed()

AlertScount
显示割草机当前状态的详细说明。

Response:{'alm_sn':'123456789','alm_name':'Indego','service_counter':60488,'needs_service':False,'alm_mode':'manual','bareToolnumber':'3600HA2300','alm_firmware_version':'00837.01043'}
9

割草模式描述()

alertscount
获取用户友好的割草模式说明。

Response:{'lastMowSent':'2019-08-20T05:09:51.842+01:00','lastMowCode':200}
0

needsService()

alertscount
获取需求服务标志。不知道何时使用。

Response:{'lastMowSent':'2019-08-20T05:09:51.842+01:00','lastMowCode':200}
1

nextcutting()

AlertScount
应该得到下一个计划的削减会议。似乎给出了上次发送的割草机命令。

Response:{'lastMowSent':'2019-08-20T05:09:51.842+01:00','lastMowCode':200}
2

optin()

alertscount
不知道这是干什么用的?

Response:{'alm_sn':'123456789','alm_name':'Indego','service_counter':60488,'needs_service':False,'alm_mode':'manual','bareToolnumber':'3600HA2300','alm_firmware_version':'00837.01043'}
1

optinApp()

alertscount
不知道这是干什么用的?

Response:{'alm_sn':'123456789','alm_name':'Indego','service_counter':60488,'needs_service':False,'alm_mode':'manual','bareToolnumber':'3600HA2300','alm_firmware_version':'00837.01043'}
1

运行时()

AlertScount
以分钟为单位获取会话和总rutime以及充电时间。

Response:{'lastMowSent':'2019-08-20T05:09:51.842+01:00','lastMowCode':200}
5

runtimesession()

AlertScount
以分钟为单位获取会话运行时间和充电时间

Response:{'lastMowSent':'2019-08-20T05:09:51.842+01:00','lastMowCode':200}
6

RuntimeTotal()

AlertScount
以小时为单位获取总运行时间和充电时间

Response:{'lastMowSent':'2019-08-20T05:09:51.842+01:00','lastMowCode':200}
7

serial()

获取序列号

Response:{'lastMowSent':'2019-08-20T05:09:51.842+01:00','lastMowCode':200}
8

服务计数器()

alertscount
获取k的服务计数器尼维斯

Response:{'lastMowSent':'2019-08-20T05:09:51.842+01:00','lastMowCode':200}
9

svgxpos()

AlertScount
显示割草机的SVG X位置。

Response:{'runtime':{'total':{'operate':86333,'charge':25845},'session':{'operate':0,'charge':0}},'battery':{'voltage':33.5,'cycles':1,'discharge':0.0,'ambient_temp':17,'battery_temp':17,'percent':335},'garden':{'id':7,'name':1,'signal_id':1,'size':625,'inner_bounds':3,'cuts':26,'runtime':82197,'charge':24860,'bumps':4650,'stops':24,'last_mow':4},'hmiKeys':1344}
0

firmwareavailable()

AlertScount
检查割草机是否有可用的固件更新。

Response:{'runtime':{'total':{'operate':86333,'charge':25845},'session':{'operate':0,'charge':0}},'battery':{'voltage':33.5,'cycles':1,'discharge':0.0,'ambient_temp':17,'battery_temp':17,'percent':335},'garden':{'id':7,'name':1,'signal_id':1,'size':625,'inner_bounds':3,'cuts':26,'runtime':82197,'charge':24860,'bumps':4650,'stops':24,'last_mow':4},'hmiKeys':1344}
1

SVGypos()

AlertScount
显示割草机的SVG Y位置。

Response:{'runtime':{'total':{'operate':86333,'charge':25845},'session':{'operate':0,'charge':0}},'battery':{'voltage':33.5,'cycles':1,'discharge':0.0,'ambient_temp':17,'battery_temp':17,'percent':335},'garden':{'id':7,'name':1,'signal_id':1,'size':625,'inner_bounds':3,'cuts':26,'runtime':82197,'charge':24860,'bumps':4650,'stops':24,'last_mow':4},'hmiKeys':1344}
2

xpos()

AlertScount
显示割草机的X位置。

IndegoApi_Instance = IndegoAPI(username=your_mail@gmail.com, password=your_password, serial=your_serial)
7

ypos()

AlertScount
显示割草机的Y位置。

Response:{'runtime':{'total':{'operate':86333,'charge':25845},'session':{'operate':0,'charge':0}},'battery':{'voltage':33.5,'cycles':1,'discharge':0.0,'ambient_temp':17,'battery_temp':17,'percent':335},'garden':{'id':7,'name':1,'signal_id':1,'size':625,'inner_bounds':3,'cuts':26,'runtime':82197,'charge':24860,'bumps':4650,'stops':24,'last_mow':4},'hmiKeys':1344}
4

发送命令

putcommand(命令)

发送命令。接受的命令:

<表><广告>命令 说明 < /广告><正文>< TD/> TD/TD >开始割草暂停暂停割草机返回锁定将割草机送回码头

不工作

尚未正确实施

Response:{'runtime':{'total':{'operate':86333,'charge':25845},'session':{'operate':0,'charge':0}},'battery':{'voltage':33.5,'cycles':1,'discharge':0.0,'ambient_temp':17,'battery_temp':17,'percent':335},'garden':{'id':7,'name':1,'signal_id':1,'size':625,'inner_bounds':3,'cuts':26,'runtime':82197,'charge':24860,'bumps':4650,'stops':24,'last_mow':4},'hmiKeys':1344}
5

获取花园位置(GPS坐标?)

Response:{'runtime':{'total':{'operate':86333,'charge':25845},'session':{'operate':0,'charge':0}},'battery':{'voltage':33.5,'cycles':1,'discharge':0.0,'ambient_temp':17,'battery_temp':17,'percent':335},'garden':{'id':7,'name':1,'signal_id':1,'size':625,'inner_bounds':3,'cuts':26,'runtime':82197,'charge':24860,'bumps':4650,'stops':24,'last_mow':4},'hmiKeys':1344}
6

获取预测切割会话的日历

Response:{'runtime':{'total':{'operate':86333,'charge':25845},'session':{'operate':0,'charge':0}},'battery':{'voltage':33.5,'cycles':1,'discharge':0.0,'ambient_temp':17,'battery_temp':17,'percent':335},'garden':{'id':7,'name':1,'signal_id':1,'size':625,'inner_bounds':3,'cuts':26,'runtime':82197,'charge':24860,'bumps':4650,'stops':24,'last_mow':4},'hmiKeys':1344}
7

获得用户对切割频率的调整

Response:{'runtime':{'total':{'operate':86333,'charge':25845},'session':{'operate':0,'charge':0}},'battery':{'voltage':33.5,'cycles':1,'discharge':0.0,'ambient_temp':17,'battery_temp':17,'percent':335},'garden':{'id':7,'name':1,'signal_id':1,'size':625,'inner_bounds':3,'cuts':26,'runtime':82197,'charge':24860,'bumps':4650,'stops':24,'last_mow':4},'hmiKeys':1344}
8

获取允许切割时间的日历

Response:{'runtime':{'total':{'operate':86333,'charge':25845},'session':{'operate':0,'charge':0}},'battery':{'voltage':33.5,'cycles':1,'discharge':0.0,'ambient_temp':17,'battery_temp':17,'percent':335},'garden':{'id':7,'name':1,'signal_id':1,'size':625,'inner_bounds':3,'cuts':26,'runtime':82197,'charge':24860,'bumps':4650,'stops':24,'last_mow':4},'hmiKeys':1344}
9

获取安全设置

Response:{'state':64513,'map_update_available':True,'mowed':95,'mowmode':0,'xPos':68,'yPos':30,'runtime':{'total':{'operate':86327,'charge':25845},'session':{'operate':4,'charge':0}},'mapsvgcache_ts':1565381013023,'svg_xPos':928,'svg_yPos':264}
0

获取自动更新设置

API调用

https://api.indego.iot.bosch si.com:443/api/v1

Response:{'state':64513,'map_update_available':True,'mowed':95,'mowmode':0,'xPos':68,'yPos':30,'runtime':{'total':{'operate':86327,'charge':25845},'session':{'operate':4,'charge':0}},'mapsvgcache_ts':1565381013023,'svg_xPos':928,'svg_yPos':264}
1

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java与Groovy正则表达式匹配混淆   java控制台未定义为JSNI   主目录中的java指针异常   java如何获取hashmap中的arrayList的大小   ApachePOI用于文本,Java代码中的word doc(.docx)中没有进行追加   Ruby对象到Java对象   JavaSpringJPA哈希集只返回一个值   Java在执行由配置了精确类路径参数的mavenjarpluin生成的可执行jar时无法找到依赖项   java我试图在画布上写一个文本,但什么也没发生   java HTTP 404源服务器找不到目标资源的当前表示形式,或者不愿意透露存在该表示形式。不起作用   java提取小数点后的最后一个数字   oop Java:无法访问对象的元素   PHP URL中RecyclerView中的java句柄空异常   不调用OnCreateViewHolder的java Update RecyclerView适配器项