AqaraGateway icon indicating copy to clipboard operation
AqaraGateway copied to clipboard

动作传感器的侦测时间间隔(超时时间)被固定在了90秒 The occupancy timeout for motion sensors is fixed at 90

Open EricCorleone opened this issue 1 year ago • 7 comments

我看了一下代码,在binary_sensor.py中的第193行里:

    async def async_added_to_hass(self):
        """ add to hass """
        # old version
        self._default_delay = self.device.get(CONF_OCCUPANCY_TIMEOUT, 90)

        custom: dict = self.hass.data[DATA_CUSTOMIZE].get(self.entity_id)
        custom.setdefault(CONF_OCCUPANCY_TIMEOUT, self._default_delay)

        await super().async_added_to_hass()

当从设备获取不到CONF_OCCUPANCY_TIMEOUToccupancy_timeout 时,将该值设为90。事实上,无论我在Aqara Home App里怎么设置侦测时间间隔,在HA里都是显示90,说明并没有正确获取到这个值: IMG_7676 Pasted Screenshot 2024-07-19 09-22-23 这个是否有办法修复呢?

EricCorleone avatar Jul 19 '24 01:07 EricCorleone

这应该是两个不同的东西

occupancy_timeout 指的是在HA里面, 超过这个时间没有收到新的触发事件, 会把状态置成 off.

Aqara的侦测时间间隔是指设备上报了一次触发之后, 在接下来的这段时间之内不会再上报触发事件.

caibinqing avatar Jul 20 '24 07:07 caibinqing

确实,我把自己搞乱了😂那这个值改为让用户手动设置是不是会更合理一点,感觉90秒有点太长了。在Homekit里貌似这个timeout是0秒,所以可以在自动化里自己设置延时

EricCorleone avatar Jul 21 '24 16:07 EricCorleone

这个 occupancy_timeout 可以自己改的

configuration.yaml

homeassistant:
  customize:
    binary_sensor.0x1234567890abcdef_motion:
      occupancy_timeout: 10

类似这样

caibinqing avatar Jul 22 '24 04:07 caibinqing

原来如此,感谢~

EricCorleone avatar Jul 22 '24 08:07 EricCorleone

这个 occupancy_timeout 可以自己改的

configuration.yaml

homeassistant:
  customize:
    binary_sensor.0x1234567890abcdef_motion:
      occupancy_timeout: 10

类似这样

在这里改完并重载配置之后,会在实体的属性里面体现出来吗?我去看了一下occupancy_timeout还是显示90: image

EricCorleone avatar Oct 10 '24 01:10 EricCorleone

在这里改完并重载配置之后,会在实体的属性里面体现出来吗?我去看了一下occupancy_timeout还是显示90:

会的,我这里是能看到修改后的值的。也许你需要重启一下,或者再检查一下语法

caibinqing avatar Oct 10 '24 07:10 caibinqing

在这里改完并重载配置之后,会在实体的属性里面体现出来吗?我去看了一下occupancy_timeout还是显示90:

会的,我这里是能看到修改后的值的。也许你需要重启一下,或者再检查一下语法

后面多等一会儿就有了,一开始没有马上变

EricCorleone avatar Oct 11 '24 02:10 EricCorleone