『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 24257|回复: 27

[经验分享] 【已解决】AirX插件失效

[复制链接]

22

主题

656

帖子

4582

积分

版主

Rank: 7Rank: 7Rank: 7

积分
4582
金钱
3911
HASS币
40
发表于 2020-10-4 17:38:25 | 显示全部楼层 |阅读模式
本帖最后由 whxciotw 于 2020-10-8 12:23 编辑

已解决,感谢@noahzh89 @befantasy 两位朋友。
更新的插件见12楼及本楼附件,解释原因见5-11楼。



原文如下:

家里两台AirX A8,之前接入HA使用一直是正常的,使用的是F大的插件https://bbs.hassbian.com/thread-2879-1-1.html


                               
登录/注册后可看大图

近日,HA中出现AirX不可用,HA版本0.114.4,经反复排查,未发现原因
已采取措施如下:
1. 重新注册账号(手机号),并将2台AirX在官方App上重新绑定至新账号
2. 使用新、旧账号再次获取Token、UserID、DeviceID
3. 使用官方App控制基本功能正常,但控制经常有无效与延迟
4. 在Linux环境下使用Curl命令控制正常,命令参考https://bbs.hassbian.com/thread-2113-1-1.html

异常情况为:
5. 在HA中显示设备不可用,Updating airx fan took longer than the scheduled update interval 0:00:05。将更新间隔调长后,仍然无效。
6. 想到Curl能够正常控制,故尝试使用HA下的Command Line,但却实际无法控制,HA日志无任何显示
- platform: command_line
  switches:
    airx1:
      command_on: curl -d 'device_id=100180000&standby=0&token=airxtkfe1ef7663ff04b000000000002b74d08&userId=47000&' 'http://luxcar.com.cn/airx/airx_iot_reportup/web/equipment/DeviceOnOrDown'
      command_off: curl -d 'device_id=100180000&standby=1&token=airxtkfe1ef7663ff04b000000000002b74d08&userId=47000&' 'http://luxcar.com.cn/airx/airx_iot_reportup/web/equipment/DeviceOnOrDown'


请问哪位能够给些思路?我已经穷尽脑汁……

多说一句,各位买智能设备,一定不要再走“云”了,坚决把控制权攥在自己手里。年少无知,入了AirX,哎!




fan.rar

2.03 KB, 下载次数: 7

更新AirX插件

回复

使用道具 举报

9

主题

181

帖子

1297

积分

金牌会员

Rank: 6Rank: 6

积分
1297
金钱
1116
HASS币
0
发表于 2020-10-4 22:09:27 | 显示全部楼层
同样的问题,查了一下记录,从10.2号晚上8点失效了。。。
比较奇怪的是用curl正常能读到信息。。。
回复

使用道具 举报

22

主题

656

帖子

4582

积分

版主

Rank: 7Rank: 7Rank: 7

积分
4582
金钱
3911
HASS币
40
 楼主| 发表于 2020-10-6 18:16:41 | 显示全部楼层
befantasy 发表于 2020-10-4 22:09
同样的问题,查了一下记录,从10.2号晚上8点失效了。。。
比较奇怪的是用curl正常能读到信息。。。
...

兄弟你是怎么解决的?
回复

使用道具 举报

9

主题

181

帖子

1297

积分

金牌会员

Rank: 6Rank: 6

积分
1297
金钱
1116
HASS币
0
发表于 2020-10-7 09:56:04 | 显示全部楼层
我还没能解决。。。我现在搞不清楚是airx服务器的问题还是homeassistant的问题。因为以前airx服务器多次出过问题,而且这次除了homeassistant,我telegraf调用airx的api转存influxdb也失效了。我感觉是airx那边改了什么,想等国庆过后看看会不会恢复再折腾。
回复

使用道具 举报

2

主题

128

帖子

2428

积分

金牌会员

Rank: 6Rank: 6

积分
2428
金钱
2300
HASS币
0
发表于 2020-10-7 11:01:56 | 显示全部楼层
请求agent 那边识别了,改一下代码得mock 成他的客户端比较安全了.
回复

使用道具 举报

22

主题

656

帖子

4582

积分

版主

Rank: 7Rank: 7Rank: 7

积分
4582
金钱
3911
HASS币
40
 楼主| 发表于 2020-10-7 15:39:31 | 显示全部楼层
noahzh89 发表于 2020-10-7 11:01
请求agent 那边识别了,改一下代码得mock 成他的客户端比较安全了.

老哥,专业了!
有具体改代码的方法吗?看到你说的,自己是搞不定了
回复

使用道具 举报

9

主题

181

帖子

1297

积分

金牌会员

Rank: 6Rank: 6

积分
1297
金钱
1116
HASS币
0
发表于 2020-10-7 21:38:39 | 显示全部楼层
noahzh89 发表于 2020-10-7 11:01
请求agent 那边识别了,改一下代码得mock 成他的客户端比较安全了.

考虑过这一点,但是用curl -d却可以正常返回json啊。
懒得抓包折腾了,iphone上简单看了一下,airx app用的user agent是airmaster。您的意思是把user agent改成airmaster就可以了吗?
回复

使用道具 举报

2

主题

128

帖子

2428

积分

金牌会员

Rank: 6Rank: 6

积分
2428
金钱
2300
HASS币
0
发表于 2020-10-7 21:54:39 | 显示全部楼层
curl 和python request 不是一个ua,应该可以.
回复

使用道具 举报

9

主题

181

帖子

1297

积分

金牌会员

Rank: 6Rank: 6

积分
1297
金钱
1116
HASS币
0
发表于 2020-10-7 22:01:25 | 显示全部楼层
noahzh89 发表于 2020-10-7 21:54
curl 和python request 不是一个ua,应该可以.

请教一下,要怎么才能更改ua。
回复

使用道具 举报

2

主题

128

帖子

2428

积分

金牌会员

Rank: 6Rank: 6

积分
2428
金钱
2300
HASS币
0
发表于 2020-10-7 22:21:44 | 显示全部楼层
befantasy 发表于 2020-10-7 22:01
请教一下,要怎么才能更改ua。

import requests
headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36'}
r = requests.get('https://baidu.com', headers = headers)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-27 23:47 , Processed in 0.119871 second(s), 34 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表