请选择 进入手机版 | 继续访问电脑版

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

 找回密码
 立即注册
查看: 11786|回复: 162

[经验分享] 爱快对接HASS(2022.10.11日更新device tracker)

  [复制链接]

5

主题

48

帖子

442

积分

论坛分享达人

积分
442
金钱
394
HASS币
20
发表于 2022-10-10 11:49:27 | 显示全部楼层 |阅读模式
本帖最后由 qiangua13 于 2022-10-12 17:50 编辑

10.11 更新日志:

  1. 增加了几个设备的device_tracker
  2. 修正了cpu计算逻辑

效果图

device-panel.jpg

configuration.yaml

mqtt:  
  device_tracker:
    - name: "your_device_name-tracker"
      unique_id: "your_device_name.mqtt.device_tracker"
      state_topic: "your_device_name/state"
      availability_topic: "your_device_name/availability"
      json_attributes_topic: "your_device_name/attributes"

nr flow


游客,如果您要查看本帖隐藏内容请回复


  • 需要修改设备注入的数组
    device.png
## 支持多个设备的信息注入
[
    {
        "device": "device1",
        "mac": "mac1"
    },
    {
        "device": "device2",
        "mac": "mac2"
    }
]

问题

  • 有童鞋说爱快终端监控列表,设备断开网络链接之后,必须等dhcp失效,设备才会消失,我测试之后并没有发现这种问题,设备下线之后,很快设备就会查询不到了,如果有童鞋有类似的问题,请尝试自己解决下,哈哈。



文章开始先感谢 下面文章这位童鞋的分享,思路非常好,我也是参考他的来做的,链接如下:

- 折腾起因:作者文中在Node-Red中调用了php,我觉得有些麻烦,于是自己倒腾了一下,全部在nr里面完成。

- 效果图:
1. NR 截图:
nr.png

2. HASS面板:

HASS面板

HASS面板


- 完成了几点改进(算是改进吧):
1. 直接在NR里面发起路由器调用(代码是重写的,之前作者的json导入报错),完成请求后,写入mqtt,简化了中间使用php的步骤。
2. NR里面内置了初始化变量步骤,导入后根据自己的环境修改即可(NR流程里面的“手工设置环境”步骤中:host,username, passwd, pass 等几个参数的预置)。

- 目前存在的问题:
1. 目前我只实现了几个功能(cpu,内存,在线用户数,连接数),之前作者的一些功能因为我暂时没有需求,所以没有实现,有需要的可以自己扩展。
2. 设置全局变量还是需要通过浏览器调试之后填入到nr里面(暂时没看ikuai前端的实现)。
3. 上图面板中上传,下载,出口IP等数据,我是直接使用hass导入ikuai/upup, 就可以读出上述数据,所以我没有实现。

- 计划更新:
1. device_tracker 实现设备跟踪功能
2. else ...

- else:
刚入坑ha,有不合理的地方请大家多多指教。

-------------------------------------------------------------------------------------------------------------------------------------------------
- 贴代码
1. configuration.yaml
mqtt:
  sensor:
    - name: "IKuai CPU"
      unique_id: "ikuai.mqtt.cpu"
      state_topic: "ikuai/sysinfo"
      value_template: "{{ value_json.cpu}}"
      json_attributes_topic: "ikuai/sysinfo"
      unit_of_measurement: "%"
      icon: mdi:cpu-64-bit


    - name: "IKuai RAM"
      unique_id: "ikuai.mqtt.memory"
      state_topic: "ikuai/sysinfo"
      value_template: "{{ value_json.memory}}"
      json_attributes_topic: "ikuai/sysinfo"
      unit_of_measurement: "%"
      icon: mdi:memory

    - name: "IKuai 在线用户"
      unique_id: "ikuai.mqtt.online_user"
      state_topic: "ikuai/sysinfo"
      value_template: "{{ value_json.online_user}}"
      json_attributes_topic: "ikuai/sysinfo"
      icon: mdi:account-multiple

    - name: "IKuai 连接数"
      unique_id: "ikuai.mqtt.connect_num"        
      state_topic: "ikuai/sysinfo"
      value_template: "{{ value_json.connect_num}}"
      json_attributes_topic: "ikuai/sysinfo"
      unit_of_measurement: "p/s"
      icon: mdi:human-greeting-proximity

2. nr flow
游客,如果您要查看本帖隐藏内容请回复

--感谢童鞋提醒,ikuai的cpu计算拿的是cpu数组的第一个值,我这里计算有问题,有需要的自己改一下吧

导入后需要预置变量,修改如下内容:
flow.jpg

--有人不知道怎么拿上面几个值,我截个图:
打开ikuai登陆页,F12进入调试,打开网络控制台,勾选保留日志,点击登陆,看login请求的负载,就可以看到passwd,pass参数了
login.png


























评分

参与人数 6金钱 +69 HASS币 +10 收起 理由
4277427 + 5 感谢楼主分享!
sorrypqa + 8 论坛有你更精彩!
jyz_0501 + 20 论坛有你更精彩!
hudan717 + 8 论坛有你更精彩!
+ 20 + 10 感谢楼主分享!
yinmyu + 8 论坛有你更精彩!

查看全部评分

回复

使用道具 举报

0

主题

210

帖子

2163

积分

金牌会员

Rank: 6Rank: 6

积分
2163
金钱
1953
HASS币
0
发表于 2022-10-10 12:12:15 | 显示全部楼层
先赞为敬,感谢分享
回复

使用道具 举报

0

主题

109

帖子

1221

积分

金牌会员

Rank: 6Rank: 6

积分
1221
金钱
1112
HASS币
0
发表于 2022-10-10 12:44:18 | 显示全部楼层
我还在用原作者的方式,正想着怎么去优化。感谢分享!
回复

使用道具 举报

2

主题

103

帖子

1354

积分

金牌会员

Rank: 6Rank: 6

积分
1354
金钱
1251
HASS币
0
发表于 2022-10-10 13:01:27 | 显示全部楼层
谢谢分享,很实用
回复

使用道具 举报

0

主题

561

帖子

2169

积分

金牌会员

Rank: 6Rank: 6

积分
2169
金钱
1608
HASS币
0
发表于 2022-10-10 13:33:54 | 显示全部楼层
感谢分享,期待更新追踪功能
回复

使用道具 举报

0

主题

38

帖子

308

积分

中级会员

Rank: 3Rank: 3

积分
308
金钱
270
HASS币
0
发表于 2022-10-10 14:07:32 | 显示全部楼层
本帖最后由 lovedreamland 于 2022-10-10 14:30 编辑

pass 这个要填写什么呢?
回复

使用道具 举报

0

主题

38

帖子

308

积分

中级会员

Rank: 3Rank: 3

积分
308
金钱
270
HASS币
0
发表于 2022-10-10 15:23:36 | 显示全部楼层
手动设置了下sess_key可以用了。
还有就是你这个CPU负载率是不是有点问题呀,他这个CPU默认第一个好像就是当前CPU的总负载,我对比过爱快的界面也是使用的第一个,后面的好像是每个核心单独的。我看你是把每个核心给加起来然后又除以核心数,那不是把总的也进去又多算了一遍?
回复

使用道具 举报

5

主题

48

帖子

442

积分

论坛分享达人

积分
442
金钱
394
HASS币
20
 楼主| 发表于 2022-10-10 15:39:29 | 显示全部楼层
lovedreamland 发表于 2022-10-10 15:23
手动设置了下sess_key可以用了。
还有就是你这个CPU负载率是不是有点问题呀,他这个CPU默认第一个好像就是 ...

其实不推荐手动设置ssec_key,把那几个参数填一下,会自动登录获取sess_key的。

你这么说有可能,我这8核心的,数组有9个值,回头改一下。不过关注这个cpu占用好像也没啥用,占用一直很低。
回复

使用道具 举报

5

主题

48

帖子

442

积分

论坛分享达人

积分
442
金钱
394
HASS币
20
 楼主| 发表于 2022-10-10 15:40:32 | 显示全部楼层
lovedreamland 发表于 2022-10-10 14:07
pass 这个要填写什么呢?

你去web页面 登陆接口 调试下,有四个值拷贝过来就行了
回复

使用道具 举报

7

主题

95

帖子

710

积分

高级会员

Rank: 4

积分
710
金钱
615
HASS币
0
发表于 2022-10-10 15:40:33 | 显示全部楼层
楼主能不能在出个 openwrt的。
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-4-19 03:09 , Processed in 0.073124 second(s), 35 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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