编辑- 18/04/2019:现在添加了custom_updater!
此更新中没有添加新功能,但您现在可以使用custom_updater使它与任何新的更新保持更新。
要实现这一点,需要更改文件的名称home-feed-card.js来lovelace-home-feed-card.js,所以如果您要手动更新,请记住这一点。
编辑- 30/05/2019:性能改进,如果你有Firefox问题,请仔细阅读
最新版本以不同的方式做了几件事:
- 它使用了一种不同的方式来导入Moment模块,它之前依赖于在Lovelace配置中作为资源加载。它现在使用动态导入。Firefox版本< 66默认不支持这些,您可能需要设置
javascript.options.dynamicImport
选项:配置
让它工作。
- 它现在使用不同的方式监视通知更改。旧的方法是使用WebSocket订阅,至少在我的系统上,有一个倾向,在日志中导致“客户端超过最大挂起消息”错误。它现在监视通知图标徽章计数。有时可能需要更长的时间才能让新的/更新的通知出现在提要上,但它不太容易出现错误。
![HomeFeedCard](//www.sz-tiancheng.com/community-assets/original/3X/6/2/628a22189a9b52ab4c1ed41ba89d63d5ae634460.png)
我想要一张能够更明显地显示持续通知的卡片,以及日历事件和其他实体。这是家庭喂养卡:
如果你正在使用custom_updater你可以这样添加它:
资源:- url: /customcards/github/ gadgetchannel /lovelace-home-feed-card.js?跟踪= true类型:js
或者,您需要添加下面的所有文件配置文件夹/ www / custom-lovelace / home-feed-card然后像这样将其添加到资源中:
- url: /local/custom-lovelace/home-feed-card/lovelace-home-feed-card.js
你可以这样使用它:
配置
type: 'custom: Home - Feed -card' title: Home Feedhome_calendar——日历。work_calendar id_filter: ^ home_feed_。*实体:-传感器。next_alarm_time - entity: sensor.bin_collection name: Next Bin Collection
![例子](//www.sz-tiancheng.com/community-assets/original/3X/6/2/628a22189a9b52ab4c1ed41ba89d63d5ae634460.png)
日历(可选)
这是一个日历实体列表,您希望在提要中显示事件。
id_filter(可选)
这是一个正则表达式,用于根据通知id过滤持久通知。在上面的例子中,“^home_feed_。* "将导致只显示id以home_feed_开头的通知。
实体(可选)
要显示在提要上的实体列表。对于device_class为“timestamp”的传感器,消息文本是实体名称,时间是传感器的状态。对于所有其他实体,消息文本的格式为"实体名称@状态时间是实体最后修改的时间。
Show_empty(可选,默认为true)
如果没有物品显示,是否显示卡片
对项目进行排序
显示项目,以便事件在过去或未来的位置越远,它就会在列表的下方越远出现。希望这能让相关的内容排在最前面。
多产品的实体
如果实体包含对象列表作为属性,则可以使它们在提要中显示为多个项。例如,Reddit传感器的属性如下:
{“帖子”:[{“标题”:“文章标题”,“创建”:0000000000,“身体”:“身体!”“分数”:00,“comms_num”:00,“url”:“https://www.reddit.com/r /*****", " id ": "******" }, { " 标题”:“另一个文章标题”、“创建”:0000000000,“身体”:“另一篇文章身体!”,“分数”:00,”comms_num”:00,“url”:“https://www.reddit.com/r /*****", " id ": "******" }] }
要为此添加多个项目实体,可以使用以下格式:
type: 'custom: Home - Feed -card' title: Home Feedhome_calendar——日历。work_calendar id_filter: ^ home_feed_。* entities:—entity:传感器。redit_ multiple_items: true list_attribute: posts timestamp property: created max_items: 5 content_template: {{title}}'
multiple_items(必需)
这一定是真正的将实体标识为多项目实体
list_attribute(必需)
实体上的属性,它包含应该包含在提要中的项目列表
timestamp_property(必需)
对象上具有已发布时间的属性。该属性可以是ISO格式的字符串,也可以是Unix时间戳
Max_items(可选,默认为5)
要为此实体显示的最大项数
content_template(必需)
这将控制为每个项目显示的消息文本。对象上的任何属性都可以使用{{格式包含为文本的一部分。propertyname}}
模板生成文本的基本例子:
' {{title}} ' -> ' Post title '
高级示例,模板生成Markdown:
' [{{title}}]({{url}}) ' -> " [Post title](https://www.reddit.com/r/”……)
这将被表示为文章标题
注意:为了避免检索日历事件和通知的过多请求,此卡片通过localStorage缓存数据。通知将始终保持最新,因为WebSocket订阅用于保持这些刷新,但日历事件将只会每15分钟更新一次。
编辑:现在已经更新,以消除图标图像的硬编码url。(现在过时了,当前版本的图标不使用图像,而是使用mdi图标)。
现在已经改进了格式,并添加了show_empty选项。
**编辑12/03/2019:现在已经做了一些更改。
- 现在,如果定义了某个实体的图标,它将选择该实体的图标,而不仅仅是使用硬编码的图标
- 现在可以从单个实体生成多个项目。我只测试了这与新的Reddit传感器在0.89引入,但它应该与任何实体有一个属性,这是一个对象列表。