目前还没有,这对于需要跟踪特定时间点的用例来说是非常不幸的。在脑海中有灯光的时候,我并不太在意坚持,但是读到这篇文章,我想到了坚持。我这个周末会去看看的。

最重要的是,如果可以复制100%,我仍然不确定是否可以复制此自定义组件。计时器就像一个鸡蛋计时器,在那里你设置了一个(可修改的)持续时间完成了事件在特定持续时间后发射现在.在婚礼中,你会提供一个固定的日期,就像闹钟一样。所以我的组件比较像鸡蛋计时器。它做类似的事情,但以不同的方式。

我会看到我的组件如何发展。现在我认为应该有一个用于跟踪固定日期的第二个组件,以及可以轻松扩展的可变结束时间的定时器。

@ danielperna84.你的公关最近合并了,这意味着我的问题在这里可以在下一个Home Assistant(可能是0.57)版本中使用您的组件轻松解决吗?19463331伟德国际

是的,这是一个用例。目前它只能通过服务来控制。但是使用这些会非常简单。您可以使用打瞌睡时间来设置计时器,然后使用计时器的状态(积极的)作为静音声音的自动化的触发器。要启动计时器,您所要做的就是拨打电话timer.start.服务。然后,您可以通过监视计时器状态(闲置),或者使用thetimer.finished.事件作为触发器。

这是正确的,缺少脚本丢失的是什么?

别名:timerstarted

扳机:
平台:时间
秒:“/ 1”
条件:
条件:国家
Entity_ID:'timer.schlummern'
状态:' 1 '
行动:
服务:counter.increment
数据:
entity_id:counter.elaped.

  • 别名:timerfinished.
    扳机:
    平台:事件
    event_type:timer.finished.
    event_data:
    Entity_ID:'timer.schlummern'
    行动:
    服务:counter.reset
    数据:
    entity_id:counter.elaped.

  • 别名:schlummern.
    扳机:
    平台:计时器
    entity_id: timer.schlummern
    :“活跃”
    条件:
    条件:国家
    Entity_ID:'timer.schlummern'
    状态:' 1 '
    行动:
    服务:media_player.volume_mute
    数据:
    entity_id: media_player.schlafzimmer
    is_volume_muted:是的

    #timer.组件
    定时器:
    Schlummern:
    持续时间:“0:10:00”

    柜台:
    运行:
    初始:0
    步骤1

我在PR中给出的示例不再是最新的。除了你可能真的不需要柜台。这只是一个演示。

在我的脑海里,你应该这样做:

Timer:Schlummern:持续时间:'0:10:00'自动化: - 别名:schlummern_on触发:schlummern_on触发:state entity_is:timer.schlummern:'Active'action:service:media_player.volume_mute数据:entity_id:media_player.schlafzimmer is_volume_mute:是 - 别名:schlummern_off trigger:platform:event_type:timer.finished event_data:entity_id:'timer.schlummern'action:service:media_player.volume_mute数据:entity_id:media_player.schlafzimmer is_volume_muted:否

要启动计时器,我需要知道应该启动的定时器。一个例子是:

-别名:mute_on_sunset触发器:平台:sun事件:日落动作:服务:计时器。开始数据:entity_id: timer.schlummern

所有这些加在一起,应该会让媒体播放器在每次日落时静音10分钟。

1像

谢谢,我想通过脚本运行它。
这是正确的吗?

别名:SchlummernStart服务:Timer.Start数据:Entity_ID:Timer.Schlummern

看起来不错。

非常感谢,工作正常: slight_smile:

1像

非常感谢你的分享和所有的评论,让一个更好的倒计时组件。真正伟大的工作。^^

我在之前的安装中设置了这个hass.io它的工作很好。我正在新安装,似乎无法被认可。我创建了custom_components文件夹,并复制了我以前使用的相同精确文件。但现在我正在获得“尝试验证其传感器平台时未找到”集成Date_Countdown“。错误信息。我已经更新了文件夹结构,所以它现在'\ config \ custom_component \ countdown \ sensor.py',但仍然得到相同的错误消息。我有一个空的'在里面. py”&“mainifest.json”

瑞安,

我只是重新添加组件到我的配置,遇到了相同的问题。在折腾了一会儿之后,这似乎是解决它的办法:停止哈斯,触摸__init__.py.,并删除_ptcache__文件夹(如果存在),

这是在它再次运行后我所拥有的:

Ls /home helper /custom_components/date_countdown __init__.py __pycache__ sensor.py . Ls /home helper /custom_components/date_countdown __init__.py
倒计时日期:“20-05-2020 18:00”

这还在工作吗?

我的传感器只是返回不可用。怎么调试?

嘿,那里可能发生了一些变化。我编辑了我的原始帖子,但你也可以在这里找到代码https://github.com/aneisch/home-assistant-config/tree/master/custom_components/date_countdown..我刚刚在传感器里重新启动了这个。Yaml和它的工作如预期。

- 平台:DATE_COUNTDOWN名称:测试倒计时#日期一小时:分钟日期:“20-05-2020 18:00”

感谢您的快速回复。

脚本是否需要被称为sensor.py或date_countdown.py?

所有者和许可的作用在里面py需要什么?

的传感器。Yaml配置存储在正常配置中。yaml吗?

如果没有,则vectors.yaml需要存储在/home-assistant-config/custom_components/date_countdown/sensors.yaml中

或者只是在/home-assistant-config/sensors中。yaml吗?

调试欢迎的任何其他步骤。

它需要被称为sensor.py,我不确定init的权限,我的用户拥有664个。是的,您可以在Configuration.yaml中拥有您的传感器配置部分,没有要求拆除文件。

/ home-assistant-config /传感器。yaml吗?
是的。

任何人都知道如何从动态持续时间创建倒计时计时器。我有3个按钮,每个按钮都有差异(30分钟,45分钟和60分钟)。所以我的计时器持续时间取决于哪一个被点击,但是当我执行以下代码时,Hassio给了我一个错误:

传感器: - 平台:模板传感器:冲洗时间:value_template:>  -  {%if状态('switch.irrig_front_yard')=='on'%} 00:{{unds('input_number.irration_frontyardduration')|int}}}}}}}}}}} {%elif状态('switch.irrig_cears')=='on'%} 00:{{zhine_number.irtigation_cedarsduration')|int}}}}}}}}}} {%elif状态('switch.irrig_front_side_yard')=='on'%} 00:{{sounds('input_number.irrigation_frontsidationure')|int}}}}}}}}}}}} {%elif状态('switch.irrig_front_guest_yard')=='on'%} 00:{{zhine_number.irtigation_frontguestduration')|int }}:00 {% else %} 00:00:00 {% endif %} timer: irrigation_counter: duration: "{{ states('sensor.irrigation_time') | int }}"

这个错误是什么?

我改变了东西,但仍然不起作用:

传感器: - 平台:模板传感器:冲洗时间:value_template:>  -  {%if状态('switch.irrig_front_yard')=='on'%} 00:{{unds('input_number.irration_frontyardduration')|int}}}}}}}}}}} {%elif状态('switch.irrig_cears')=='on'%} 00:{{zhine_number.irtigation_cedarsduration')|int}}}}}}}}}} {%elif状态('switch.irrig_front_side_yard')=='on'%} 00:{{sounds('input_number.irrigation_frontsidationure')|int}}}}}}}}}}}} {%elif状态('switch.irrig_front_guest_yard')=='on'%} 00:{{zhine_number.irtigation_frontguestduration')|int}}}}}}}}}} {%else%%} 00:00:00 {%endif%}计时器:灌溉_timer:脚本:rection_counter:序列: -  service:timer.start data_template:entity_id:timer.irtigation_timer持续时间:'{{状态。sensor. retrigation_time.state |int}}'

错误:
[script]的配置无效:期望字典值@ data[' script ']['灌溉_counter ']的字典。没有期望字典值@ data[' script '][' sequence ']。获得[OrderedDict([(' service ', ' timer.start '), (' data_template ', OrderedDict([(' entity_id ', ' timer.灌溉_timer ')), (' duration ', ' {{state .sensor.灌溉_time. response ');状态| int}} ')]))]。(见/ config /配置。yaml、390行)。

缩进顺序:和下面的一切。

对不起,我最终修复了那天,是的,这是一个缩进错误。