tingjusting 发表于 2024-2-20 14:14:04

利用米家智能插座3实现小爱控制HA设备

本帖最后由 tingjusting 于 2024-2-20 15:58 编辑

思路如下:小爱控制改变设备的属性,HA监听属性的变化触发任务
米家APP->手动控制->中枢网关虚拟事件->中枢网关修改指示灯勿扰时间->HA监听指示灯勿扰时间的变化触发事件

在HA 开发者工具->状态 中可以查看设备的所有属性

indicator_light-3.mode: true         #指示灯勿扰开关


indicator_light-3.start_time: 0       #指示灯勿扰开始时间 0-1439
indicator_light-3.end_time: 1439#指示灯勿扰结束时间 0-1439


indicator_light.on: true               #指示灯开关


只这一个开关,理论上有2800多种控制变量

在米家APP中或者中枢网关修改设备的属性之后,HA不会立即刷新,有一定的延迟
可利用自动化主动刷新设备属性


最终再利用自动化进行触发


如果想在node-red中进行触发,则必须将实体中的属性独立出来作为实体才行
可在configuration.yaml中添加如下示例配置,注意根据设备实际情况添加
重载之后如果看不到实体,就再重启一下HA
template:
sensors:
    computer_light_mode:
      friendly_name: "电脑指示灯勿扰开关"
      value_template: "{{   state_attr('switch.cuco_v3_699c_switch', 'indicator_light-3.mode') }}"
    computer_light_start_time:
      friendly_name: "电脑指示灯开始时间"
      value_template: "{{   state_attr('switch.cuco_v3_699c_switch', 'indicator_light-3.start_time') }}"
    computer_light_end_time:
      friendly_name: "电脑指示灯结束时间"
      value_template: "{{   state_attr('switch.cuco_v3_699c_switch', 'indicator_light-3.end_time') }}"







DD_Grank 发表于 2024-2-20 15:41:06

没看懂,不过我受困于蓝牙mesh设备在米家app里能触发智能,在HA中却没有变化(如门磁,快速开关),觉得楼主的这个可以解决我的问题。让我好好学习一下:lol

tingjusting 发表于 2024-2-20 15:57:56

DD_Grank 发表于 2024-2-20 15:41
没看懂,不过我受困于蓝牙mesh设备在米家app里能触发智能,在HA中却没有变化(如门磁,快速开关),觉得楼 ...

整体思路是,小爱控制改变设备的属性,HA监听属性的变化触发任务

cexo 发表于 2024-2-20 21:28:44

要有中枢网关才能弄吗?

tingjusting 发表于 2024-2-20 22:09:08

cexo 发表于 2024-2-20 21:28
要有中枢网关才能弄吗?

不是的,我这个需要中枢网关是因为,米家智能插座 3的指示灯勿扰开始时间,无法用语音修改
其他设备,比如米家吸顶灯的色温,这个就可以直接用语音控制,则不需要经过中枢网关,同样可以实现效果
电视的音量,音箱的音量这些都可以
我之所以选指示灯的勿扰时间,是因为这个属性的变化几乎没有任何影响
色温的变化是其次,音量的变化则会有些影响

miaoer 发表于 2024-4-21 00:28:38

本帖最后由 miaoer 于 2024-4-21 00:36 编辑

感谢楼主的分享,对我有很大帮助。不过我这Mapping MIoT规格不填的话HA自动化会报错,更新还是有很大延迟,查了下文档,勿扰模式开关、开始时间、结束时间三个属性应该填:
    - siid: 3
      piid: 2
    - siid: 3
      piid: 3
    - siid: 3
      piid: 4
修改后测试延迟一秒左右
另外也可以用xiaomi_miot.set_property服务来修改这几个属性从HA将参数回传到米家
页: [1]
查看完整版本: 利用米家智能插座3实现小爱控制HA设备