本帖最后由 SilverWolf 于 2022-10-11 02:19 编辑
Homekit infused 5 (HKI)
目录:
灰色部分还在整理尽请期待
1. 集成与接入
2. HomeKit
3. 动手搭建属于自己的Home Assistant界面
4. 关于homekit-infused 玩法
5. HA自动化
什么是HKI
Homekit infused是一个适用于HA的lovelace仪表盘套装。由Github作者jimz011开发。
简单来说,通过使用HKI你可以快速搭建一个Homekit风格的仪表盘(dashboard),并且相对HA原本的界面,HKI在手机端会视觉更加统一,更简洁易用。
注意:HKI是一个 YAML编辑的仪表板,这意味着你需要对YAML 具备基本的了解。
遵循作者的文档教程,应该能够毫不费力地创建一个漂亮的仪表板。
我会翻译原作者的文档以供大家使用。
Homekit Infused 的安装不会影响现有的任何仪表板,因此可以放心安装。
特色功能
可自定义的通知栏,可滚动通知你想要的内容。
可自定义的导航栏
优秀的菜单插件
仅需10几行代码便可快速创建一个界面
自定义插件,允许您使用任何可用的HA卡,无论是核心卡还是前端创建的卡。
完全可自定义的每个用户配置文件菜单
完全可定制的警报面板。
安装: 本安装教程基于HKI2022.5.1版本撰写
注意:原作者在HKI4和HKI5之间改了很多代码,所以你需要从头开始全新安装HKI 5
如果你没用装过HKI4忽略这条。
温馨提示:
在正式安装前强烈建议对你的HA进行完整备份。
推荐运行ha内置备份,并保存好以下文件
配置文件:configuration.yaml
插件文件夹:custom_components
自动化:automations.yaml
场景:scenes.yaml
脚本:scripts.yaml
在安装前你还需要在HA目录/config目录下创建文件
secrets.yaml
并在里面写入
alarm_code: 000000 #数字替换为你要为家庭警报器插件设置的安全密码。如果你不用,也要写,随便写。要不会报错
复制代码
安装HACS商店(这个前面文章说过不讲了)
安装下列所有插件
所有插件都必须安装
插件名
auto-entities
card-mod
button-card
这是整个HKI中使用的按钮。注意:请确保您选择“ 显示测试版本”并选择最新的测试版本进行安装!
state-switch
之前是基于某种情况来让看片显示与否的功能。和conditional-card类似,但更好。
card-tools
Search Card
Swipe Card
Config Template Card
fold-entity-row
Lovelace Text Input Row
layout-card
browser_mod
Browser_mod使浏览器更有用,显示/创建自定义弹出窗口等等!
lovelace_gen
这是设置中最重要 的部分,没有这个HKI将不起作用!不要将其添加到您的文件中,因为包含的软件包已经为您这样做了。
如果您已经在您的configuration.yaml中添加lovelace_gen请删除或注释掉
正式安装
数据包下载完成后解压,你将获得3个文件,分别为
hki-base 文件夹
hki-user 文件夹
packages 文件夹
将这三个文件夹放置在HA的/config目录下
并在configuration.yaml中添加下列代码
homeassistant:
packages: !include_dir_named packages/
复制代码
提示:你需要在装完所有插件后先重启一遍,然后再拷贝安装文件,拷完重启第二遍。
HKI 的安装阶段至此完成。
下一章HKI界面配置
HomeKit Infused5 配置说明
——————————————————————————
HomeKit Infused 5 2022
配置 在 Homekit Infused 5中,为内置插件或自定义卡片设置和配置视图非常容易。不要忘记阅读本页末尾的提示和技巧部分!
*注意:要使以下配置中的任何更改生效,您必须重新启动 Home Assistant!最低代码示例
设置视图 Homekit Infused 是一个基于YAML文件配置的仪表盘,因此您必须通过 YAML 文件对其进行配置。为了简单起见,Homekit Infused 主要通过/hki-user/config/下的views.yaml文件进行管理,您应该使用它views.yaml文件来编辑 Homekit Infused。
开始打开上述文件。您会发现文件一开始已经为您配置了 2 个视图,要写新的视图或者基于这2个视图更改都直接在这个文件写就行。
要创建新视图,您必须设置一个对象(在本例中为房间名称)以启动新视图。这是你新视图的第一行。
# views.yaml (最少代码示例)
living_room:
icon: mdi:floor-lamp
复制代码
上面的示例将为您创建一个名为Living Room 的视图,并自动执行以下操作:
l 设置的视图标题(在本例中为 Living Room)
l 为导航栏、副标题和菜单/收藏夹按钮设置图标(mdi:xxxx)
l 在菜单中创建一个条目
要创建一个新视图,这五项是最低要求。但是如果没有任何其他代码,那新创建的视图将是空的。Homekit Infused 能够为您填充视图,也可以使用你导入进去的视图代码 。
以下是您可以添加到视图中的所有选项,以完全根据您的喜好自定义每个视图。
名称
设置视图的名称、路径和标题。这不是实际组件,而是视图的第一行,注意:这不能包含特殊字符,只能使用小写字符!建议就用a-z字母和0-9数字。
设置视图的标题。
如果不写 的话,它将使用视图的名称,您不能 用template作为title!
设置 subtitle ( 可以用js模板)
如果不设置 subtitle , 它会显示一行hki的默认通知。
要隐藏字幕栏 ,就写 subtitle: hide
设置一个logo来代替title和subtitle。
即使您已设置title和subtitle,设置logo会隐藏 title和subtitle。
设置navigation_bar, shortcut buttons和subtitle的图标(和logo不一样)
这个也接受FA图标。
如果你设置这个图标不显示在nav_bar的话,你可以使用 JS模板 。 如果您希望此视图自动包含在收藏夹 中,请设置为 true
menu: 这会强制在菜单中显示视图。
这在使用 menu: 或者 view_selector: 插件时很有用
这将为菜单和收藏夹按钮设置一个状态显示,它将始终显示输入实体的状态,您可以使用任何entity_id(例如 sensor.current_temperature )
如果您希望此视图在 navigation_bar 中可见,请设置为 true (和menu不一样)
如果 show_in_navbar 是 true 的话,将仅为特定设置的用户 显示 nav_bar 图标,这里必须定义用户列表。 查看 官方文档 了解更多信息。注意:就算你写了用户组,所有人还是可以通过URL访问! 将addon添加到您的视图中,请参阅插件 部分以获取文档 将 视图选择器 添加到视图顶部,请参阅 视图选择器 部分以获取文档 禁用所有addons 并只 用YAML文件创建视图。请参阅 旧版自定义 部分以获取文档。
# views.yaml (示例)
kitchen:
subtitle: My Kitchen
button_badge: sensor.kitchen_temp
icon: mdi:fridge
show_in_navbar: true
show_in_favorites: true
复制代码
通用设置 下列的选项可以在/hki-user/config/config.yaml 找到。这些选项都提前给你定义 了状态,其中有的内容可以看你喜欢自己改成你喜欢的。不是让 HKI 运行的必要选项 ,但你将来会用到这些。
名称
更改header badges和/或 是否全局显示subtitle
更改弹窗中关闭按钮的位置并用RGB颜色代码(#123DEF)改变里面的颜色。
更改profile menu的内容,您可以为每个用户设置profile menu
其他配置 名称
Setup notifications to show in the subtitle of the header
会教你:怎么把views.yaml文件切分成几个单独的文件 和 怎么管理代码。
会教你:怎么把自己的HKI界面变成绝地武士主题。(你喜欢什么看你自己这里是举例子)
小技巧&提示 HKI加载的时间快的一批而且应该很稳定。就算如此,用了一堆addons的超大配置文件还是会影响启动时间。只会在HA刚启动的时候慢。超大配置文件可能会用超过3分钟来启动完毕。Lovelace重新加载的时间取决于配置文件的规模。超大配置文件的重载时间大概在5-40秒。
像上文说的一样,超大配置文件只会影响启动时间,不会影响其他任何的HA功能。一旦界面加载完毕,也不会卡。
很明显,改一行代码就重启一次谁都绷不住,为了解决这个问题,你应该一个视图一个视图来创建/修改。把你写完的视图加上注释。(Home视图不要写注释!) 之后在重启ha。你会发现重启只要几秒。这样一来,就会加速你修改的效率。一旦你的视图测试好了写完了。你就可以用#号注释好,在创建下一个视图了。等你全都弄完之后,把注释都删了再重启。(我也不知道为什么要删,建议还是备份一下免得到时候忘了,我只翻译)
更多案例
举例子永远举不完。但看看我发在
这 的范例config会更好。
HomeKit Infused 5 addons说明 —————————————————————————— HomeKit Infused 5 2022
插件 addons addons已经在提前集成在配置好的卡片上了,任意视图内你可以随意开关的那种。你也可以通过添加key到你的视图配置 /hki-user/config/views.yaml 文件里来添加addons。所有的 addons都提前配置了父子树文件结构和一个标题,你必须 照猫画虎的按照这个结构写你自己定义的addon。每个addon都有父子树文件结构的一些额外选项,所以第一章节肯定是讲你能添加什么选项,会有个文档告诉你额外的选项。
你可以通过layout addon来控制addon的顺序或改变它们的位置。在yaml文件里,写在上面的addon会被先渲染出来。具体怎么配置addon取决于你在配置之前提前阅读并理解好的介绍文档。说人话就是得先读懂文档在配置。Read FIRST!
# views.yaml (举例子咋添加addon)
my_view:
subtitle: Overview
icon: mdi:thermostat
addons:
thermostat:
- title: My thermostats
entities:
- # 配置空调/恒温器/温度调节器(中国名怎么叫取决于产品名称和使用场景)的addon配置写在这。
my_second_view:
subtitle: Overview
icon: mdi:vacuum-cleaner
addons:
button:
- title: My lights
entities:
- # 按钮的addon配置写在这。
复制代码
我到底能创建哪些addons呢? 名称
是HA默认的图标卡,也是可以添加进HKI的另一种图表卡的选择。
给nvidia shield或apple tv的遥控器卡
可以在view添加的调温遥控器(可以是空调什么的设备)
HKI的天气插件,core和simple-weather二选一
高端的玩意 Addon可以被多次定义,这在你想创建一个按钮堆叠的/地图在上边按钮在下面什么的view时特别有用。
在相同视图中去额外定义一个同样类型的addon,你必须在addon name里添加一个后缀,无所谓后缀是什么,但你必须写。
# views.yaml (定义同一类型的多个addons的示例代码)
my_view:
title: Location
addons:
button:
- title: My Quicktoggles
entities:
- switch.phone
button_2:
- title: My second quicktoggles
entities:
- switch.iphone
button_whatever:
- title: Another button addon
entities:
- switch.galaxy
复制代码
Addon也可以根据entity的状态来显示对应的状态。
# views.yaml (定义同一类型的多个addons的示例代码)
my_view:
title: Location
addons:
button:
- title: This will only show when Jimmy is home
conditional: true
conditions:
- entity: person.jimmy
state: "home"
entities:
- switch.phone
button_2:
- title: This will only show when Jimmy AND Stephanie are home
conditional: true
conditions:
- entity: person.jimmy
state: "home"
- entity: person.stephanie
state: "home"
entities:
- switch.iphone
button_3:
- title: This will only show when Jimmy is NOT home AND Stephanie IS home
conditional: true
conditions:
- entity: person.jimmy
state_not: "home"
- entity: person.stephanie
state: "home"
entities:
- switch.iphone
复制代码
额外的玩意 以前在HKI 4里面的simple_weather,devices, rooms, sun_card, find_my, layout, columns, mini-media-player, searchvacuum 和 graph 扩展(addon)去哪了?
原因在这里:
l 对于sun_card, mini-media-player 和 graph来说,要么给他们弄个模板太繁琐,要么实在没必要添加。你还是可以用custom:插件(addon)。写了这个就可以解锁对于上面三个addons的额外option,同时也能提供更多的自定义空间。
l Find_my和layout并没有被移除。只是他们的文档被移动到了HKI 5 配置设置那页去了。
l Columns很容易被人误解,而且有点多余了。现在,Columns的配置遵循每个addon的配置。
l Device现在已经被合并到新的button:插件了(addon)
l Rooms插件现在重做成areas:了
l Simple_weather已经合并到weather:插件了,可以找到。
l Search现在集成在了profile菜单里。
l Vacuum太难写模板了,而且已经有很多其他很好的方式添加进来了。我建议用custom插件配合一个精致的vaccum卡来用(类似xiaomi vacuum card或Xiaomi Vacuum Map Card)
米奇妙妙屋,妙妙屋里有什么呢?