打开您的家必威体育存款庭助理实例必威是什么,并显示带有特定蓝图预先填充的蓝图导入对话框。

现在2022.4.0我已经提出了更新实体,我决定看看我是否可以转换我的更新通知包进入一个蓝图。原来答案是肯定的!有关您所有更新的通知,并通过通知直接安装它们!

依赖性

HA版本> =2022.4.0。否则您将没有任何更新实体。

HACS版本> =1.24.1并启用实验特征如果您需要有关HACS组件的更新通知。将此功能推到HACS稳定时,将更新。

特征

  1. 每次列出的更新实体都打开时,最多可在两种设备上接收通知。
  2. 通知都包括以下功能:
    • 新版本
    • 当前版本
    • 链接到开放项目
    • 更新操作
    • 跳过动作
    • 实体图片作为图标(如果在实体中可用)
    • 发布摘要(如果可用,则最适合)
    • ChangElog链接(如果有)
  3. 在进行更新时,通知切换到“更新……”以通知您知道
  4. 更新完成后,通知自动删除
  5. iOS和Android受支持(对外观和工作量的标准化,尽我所能获得相同的外观和工作)
  6. 也可以创建持久通知。文字与他人相同,并完全被解雇。包括开放和(如果有)ChangElog链接
  7. 选择更新操作是否采取部分备份
  8. 可以选择启动配置检查插件当有可用的核心更新时。如果是这样,通知文本将进行更新,以便让您知道何时完成该插件,以便您检查它。
  9. 可以每X小时(可配置)发送有关所有可用更新的提醒
  10. 为没有它们的更新实体提供更改链接的选项(插件),因此您的通知仍然可以包括它们。
  11. 当通知发送到带有时间窗口的移动设备时,可能会限制(如果您选择持续通知,仍将所有时间发送到HA)

改进

绝对需要改进的空间。我脑海中最大的事情是:

1。不要让用户列表更新实体观看,只需观看全部。
2.允许用户提供一个设备列表来发送通知,而不是支持特定号码

编辑:与之交谈后@sir_goodenough下面我认为我们很好#1。我忘记了我添加的投票循环(REMINDER_HOURS)将向您发送有关任何可用更新的通知,而不仅仅是您列出的更新update_entities。所以update_entities仅适用于您想立即了解的更新。核心如果要使用“何时可用核心更新”功能使用“运行config检查”功能。所有其他人都会通知您每X小时(无论您投入什么REMINDER_HOURS:+1:

最后更新的日期 -5/6/2022

更改

更新5/6/2022

:火箭:增强

  • 模仿Android粘性通知选择ChangElog操作时,通过重新创建通知来提供iOS通知的功能(根据请求这里

更新5/5/2022

:漏洞:Bug修复

  • 模板中的存在检查引起警告,不再警告

更新5/2/2022

:漏洞:Bug修复

  • 提醒时间设置为没有任何不会导致错误

更新4/14/2022

:漏洞:Bug修复

  • 使用适当的IF语句来防止在Android中安装/跳过操作上的错误。注意自我:默认不会变速:使困惑:

更新4/13/2022

:火箭:增强

  • 添加了新的输入status_bar_icon允许用户选择一个MDI:包装

:漏洞:Bug修复

  • 固定安装操作不起作用,不再采取行动trigger.event.data.ActionName
  • 核心和操作系统更新破裂,如果其他实体除了更新在更早的修复中删除过滤器后,启用了一个。现在正确找到更新这些实体无论启用了什么。

更新4/11/2022

:火箭:增强

  • 添加notification_channel选项,因此用户可以设置用于更新通知的频道(Android)和组(iOS)。默认为更新

:漏洞:Bug修复

  • 更新默认情况下用于Android通知的频道(用户覆盖)
  • 由于无法跳过,因此无需跳过动作
  • 在为其他事物的通知操作中安装更新时,插件或核心总是设置备份:false不管有什么价值take_backup输入由于不支持。

更新4/9/2022

:火箭:增强

  • 添加唯一的_before仅在那之后选项。当使用通知时,只会在指定的时间窗口中发送到指定的移动设备

:漏洞:Bug修复

  • 操作系统和核心通知只有在您列出了这些实体的情况下才会在启动中驳回update_entities。由于这不需要收到通知,因此总是在启动时暂时解雇这些实体离开
  • 核心更新通知不会切换回到下一个提醒的“核心检查已经开始”,此后检查完成了检查的用户run_core_check特征
21喜欢

您可能需要添加它,以便没有这些选择的人不会回来并抱怨这不起作用。它只是名称,描述。蓝图中的域等…

乡亲:min_version:2022.4.0

我没有答案,但是一个概念可以找到所有“更新”的东西
我在蓝图中使用它来放在事件总线上的一些数据,然后稍后将其拉开。
可能要走的路...

- 变量:event:'{{trigger.to_state.attributes.Action}}'sub_event:'{{trigger.to_state.attributes.tributes.side}}'entity_id:!input'remote'remote'remote'firc利。friendly_name }}' - alias: Fire Last Action event event: cube_last_action event_data: event: '{{ event }}' side: '{{ sub_event }}' entity_id: '{{ entity_id }}' friendly_name: '{{ friendly_name }}'

当然,您的看起来会有所不同。
您可以做一个循环并生成一个列表以在事件总线上放置,然后稍后将其拉出,也许

1喜欢

嗯,我不知道这是一个选择,谢谢!我猜蓝图模式需要更新。

不确定我在这里理解这个概念。我知道我可以在模板中找到所有更新实体,循环循环并为每个事件开火,但我不确定这对我有何帮助。这如何让我进入我拥有任何触发任何自动化的地方更新类型实体变为

我的想法是某种循环找到所有这些,将它们放在列表中。我想一旦您拥有列表,就不需要事件了……但是使用列表将更新进一步循环。
我不知道。
这是一个激发其他想法的概念……

我想到做这种蓝图,但是这种模板肯定超出了我的想法。

我认为除了时间表以外,您都无法在任何内容上触发它。用户添加的外部自动化每x小时都可以调用。

因此,您肯定可以收集和循环。问题是您要切换到投票模型。假设您对此进行了简单的时间模式触发器。它可以正常工作,但是您可能看不到关于更新长达一小时的通知。

实际上,我知道它可以正常工作,因为我意外地做到了。这REMINDER_HOURS我添加的输入实际上是这样做的,我忘了将列表过滤给您放入的列表update_entities。看这里

- 别名:如果启用条件,请发送提醒:“ {{Reminder_hours> 0}}”序列: - 别名:获取所有待处理,未启动的更新变量:>>  - >  -  {states.update |selectAttr('state','eq','on')|refectattr('attributes.in_progress','true')|地图(attribute ='entity_id')|list}}  - 别名:循环更新并发送提醒重复:count:“ {{update | count}}”序列: - 变量:entity_id:“ {{repotates [repot.index-1]}}}”  -  *update- *update-变量 -  *发送到移动设备 -  *发送到ha

因此,我想在那种情况下,我会保留此问题并在描述中提及。如果人们愿意,我还可以添加一些较低的时间,例如1和2小时,目前我添加的最小时间为3个小时。

我认为直接通知更新没有任何价值,除非您有些破坏并且正在流口水以进行更新。
我不会比每6个小时,可能更长的时间更频繁。

你也许是对的。不过,我非常宠坏,自从制作该包装以来,我就已经立即通知更新。但是,如果我说实话,那真的不是必需的。

我认为他们真正列出的唯一一个update_entities是核心。然后,只有当他们想使用该选项时,更新可用时才能启动检查配置插件。我不会在投票循环中启动该插件,只有在首次打开时。因此,他们应该列出该功能的核心实体以及他们真正想要即时通知的任何其他功能。其他人可以在民意调查循环中捡起。

小型更新 - 移动设备选择器现在是可选的。因此,如果您只想接收更新通知作为持续通知,则可以做到这一点。只需将它们留空,然后将“发送到HA”设置为真。

嘿。感谢您制作此蓝图。

您有机会从时间和时间(通知时间间隔)使用两个字段来增强它?
如果在间隔之外触发通知,则等待间隔时间。
只是不想在深夜我的手机上进行更新通知。

好工作:+1:t2:

感谢您的蓝图。

是否可以自动添加所有更新。*设备?我的意思是,蓝图使用可更新设备自动使用。

不,这是不可能的。我尝试了我保证,您可以看到我的一些研究这里

话虽如此,请在顶级文章中注意:

因此,只要您不放置,您就会收到有关所有更新实体的更新通知没有任何REMINDER_HOURS。他们只是有点延迟。因此,您只需要将您真正想立即了解的内容放入update_entities。核心如果要使用“启动配置检查核心更新”功能。

1喜欢

这是一个好主意,是的,我可以补充一点:+1:我现在没有时间,但是我应该能够在本周末的某个时候去做。

编辑:顺便说一句,在此期间,提醒时间实际上的工作方式是,当小时均匀排除时,它会发出提醒。所以如果你喜欢8并基本上没有实体update_entities它只会在午夜,8:00和16:00发出通知。

我应该做update_entities可选,但我遇到了一些困难。默认值必须是字符串,当update_entities被填充,然后是一个阵列。我猜这是可操纵的,但很奇怪。

添加唯一的_before仅在那之后蓝图的选项。如果提供,通知将仅发送到该窗口内的移动设备。无论小时send_to_ha启用了功能,因为我认为这不会唤醒任何人。

1喜欢

我也建议的是支持通知HTML5。在大多数情况下,它支持所有内容作为移动应用通知。

也许甚至是通知组?

因此,不幸的是,这实际上非常困难。有两个原因:

1-无法为通知服务制作选择器。唯一的两个选项是使用通用动作选择器或通用文本选择器。两者的工作非常差。

通过操作选择器,您实际上只要求用户填写所有详细信息。您甚至不能确定他们给您的动作将发送通知,您不知道该怎么办。蓝图作者无法制作消息,动作或蓝图所做的所有事情。与您(用户)决定要做什么事,这基本上将成为“在可用更新时做某事”的蓝图。除了能够使用更新之类的信息之外,除非?有什么版本可用?我可以通过什么网址查看有关此新版本的信息?从本质上讲,您想要的所有内容都从这个蓝图中出现。

并且文本选择器基本上不是选择器。您将要求用户复制并粘贴像notify.my_notification_service只是希望他们能得到它。您可以使用正则验证它看起来正确,但实际上无法保证存在通知服务,因为对用户没有帮助。

2-关于通知服务,您可以依靠一个字段 -信息。而已。一些通知服务支持标题,有些没有。除了更少的选择标题信息。而且,我不能仅仅创建适用于伴侣应用程序并将其发送到任何随机通知服务的通知,它将行不通。要看我的意思,请尝试制作这样的通知组:

通知: - 名称:测试组平台:组服务: -  Persistent_notification -Mobile_app_my_phone

然后将其称为简单的东西:

标题:测试消息:测试数据:Notification_icon:MDI:警报

您可能期望的是,手机会收到有关该标题,消息和图标的通知。并要创建仅具有标题和消息的持续通知(因为持续通知不支持图标)。实际发生的是通话失败。持续通知服务仅支持标题和消息,因此不会接受数据并引发例外。呼叫失败,已记录错误,并且在任何地方没有发送通知。

因此,接受通知组或任何随机通知服务是不可能的。除非我想从通知中删除所有内容信息。这意味着没有安装或跳过的动作,配置面板没有URL,没有打开ChangElog的动作/链接,甚至没有标题。除了消息之外,所有内容都必须走。这会降低此蓝图的大量价值。我知道如果我这样做,我个人永远不会使用它,我怀疑许多其他人也会使用。

3 -HTML5通知特别支持,但这是很多工作。这三个问题出现了:

  1. 没有HTML5通知的选择器。使用移动应用程序,我可以通过要求移动应用程序设备来作弊,知道发送通知设备操作存在。我没有这样的选择HTML5通知。因此,我坚持上述两个选项 - 动作选择器或文本选择器。
  2. 我需要为HTML5通知服务添加新的输入。而且由于我没有选择器似乎没有开胃的选择。
  3. 努力将架构归一化,以获取有关Android和iOS通知的通知这里。HTML5通知已排除在此之外。他们的架构和功能网完全与其他两个完全不匹配,因此我必须进行大量RESARCH,并添加大量代码来处理该通知服务的标准化。考虑到这一点,我必须有很多需求。

我知道这是一个很长的回应,很抱歉。TL; DR是,听起来确实要多得多。如果对此有很多需求,我也许愿意处理HTML5通知。尽管实际上,如果对那些使用它的人有很多需求,应该推动功能请求,以使其得到更好的支持并陷入伴侣应用程序上的通知,因为它似乎已被遗留在后面。也许考虑打开分析,以便HA团队知道它已被更多地使用,现在分析说,它仅用于1.3%的安装。将使用Mobile_App的安装中的99.3%进行比较。

由于上述原因,目前无法进行通知组或任何随机通知符。

1喜欢

非常感谢您的详细答案。我理解并同意你所说的。

只是提到,还有另一个蓝图(护卫舰移动应用通知)接受移动应用程序的选择器(像您一样)和可以用来填充通知组的文本框。

我有一个带有两个移动应用程序和一个HTML5浏览器的通知组,令人惊讶的是,我在浏览器中收到的通知(即使蓝图声称仅与移动应用程序兼容)。

无论如何,您已经提到了为什么拥有未验证的文本输入的原因,这一切都不是最好的。

谢谢您的蓝图!

1喜欢

@centralCommand嘿,伙计,今天来看看是否有任何更改以适应新的更新实体,令人惊讶的是,它比预期的更复杂:liticle_smile:

您要考虑添加的史诗般的东西,而应该不难实现的是通知渠道,可以选择用户定义它(例如“更新”)。基本上允许的操作是配置设备上的通知的行为,尤其是(或最重要的是对我来说)“不要打扰”。这是文档的链接:简介|必威是什么家庭助理伴侣文档

我不确定它们是否在iOS上得到支持,也没有直接测试此功能的设备。

无论如何,在您的项目上做得很好,我必须承认我从第一个开始就“分叉”一体化迭代并做了自己的事情,但是我现在回来以获得您所取得的成就并提供建设性的反馈。感谢您的承诺!

啊,胡扯,好抓。在我的系统中,我有此脚本将iOS和Android的通知字段归一化,因此我不必记住所有差异。它做的另一件事是设置渠道从价值团体因为我一直希望这两个人相同。但是我忘记了这显然不是标准的。

一定会补充的是,并不是要发送无通道通知:man_facepalming:

1喜欢

固定的。用途更新默认情况下,频道(Android)和组(iOS)。也是一个新的输入,以允许用户在需要的情况下更改该输入。

1喜欢