分组功能允许用户结果多个实体(entity)变成一个实体。
在设置状态(Set State)页面(在开发者工具中(Developer Tools))浏览现有实体(Current Engities),可以查看所有可用的实体。
# configuration.yaml 条目例子
group:
kitchen:
name: Kitchen
entities:
- switch.kitchen_pin_3
climate:
name: Climate
entities:
- sensor.bedroom_temp
- sensor.porch_temp
awesome_people:
name: Awesome People
entities:
- device_tracker.dad_smith
- device_tracker.mom_smith
配置变量
-
name
- 字符串,可选
- 分组的名称
-
entities
- 列表,必选
- 列表,或者逗号分隔的字符串,分给该组的实体。
-
all
- bool量,可选
- 如果这个设置成图true,那就表示只有当组内所有实体都是on的情况下,该组的状态才会变on。类似于与和或的区别。
- 默认值,false
-
icon
- 字符串,可选
- 在前端显示的图标。(译者注,好像这是用在已经过旧的UI上。不推荐使用?)
-
view
- bool量,可选
- 也是用在过旧的UI上的
- 默认值 false
-
control
- 字符串,可选
- 在lovelace模式中使用的特征。如果设置成hidden,这个组会被隐藏。
默认组
一些集成的设备,会自动创建一些特殊的组,包括所有的继承的实体。这些组都被命名成group.all_...
,例如:
-
group.all_switches
所有的开关 -
group.all_lights
所有的额灯 -
group.all_devices
所有的设备 -
group.all_scripts
所有的脚本 -
group.all_automations
所有的自动化
可以在Developer Tools的State页面里看到这些组的列表。
组的表现
如果任何一个组内的成员是on的状态,那么这个组就会显示成on。类似的,对于追组起,如果任何一个成员在组内是home状态,那么整个组都是home状态。但是如果你设置all
变量为true,那么组的表现则是相反。除非所有组员都是on,这个组才是on的状态。
自定义组的顺序
如果组内成员的顺序,不是你想看到的样子,可以把组内的顺序,用order:
来自定义。
# configuration.yaml 将组员根据要求排序的例子
customize:
group.all_automations:
order: 1
group.all_scripts:
order: 2
group:
automation_view:
name: Automation
view: true
entities:
- group.all_automations
- group.all_scripts
改变entity_id
可以用UI界面修改entity_id,方法如下
- 选择实体,在前端Developer Tools的stats的tab页下,选择实体左边的感叹号的图标。
- 选择在跳出的对话框右上角的齿轮团。
- 输入新的实体id(注意,不要更改实体所属的域-在
.
之前的哪一个部分) - 选择保存。
如果实体是不支持的类型,那就不能通过这个方法进行修改。需要根据下面几个方法进行修改。
自定义实体
默认情况下,所有设备都可以被查看到,并且有一个默认的图标。用户可以通过修改一些参数,来自定义首页上设备的长相。这可以通过重写一些特殊实体的参数完成。
通过UI自定义
在Configuration惨淡下,可以看到Customization菜单。如果这个项目不可见,通过再profile page中定义高级模式来启动它。如果选中任意一个实体进行自定义,可以看到下属的属性。同时,用户也可以在configuration.yaml文件中,定义或者添加如下代码
homeassistant:
customize: !include customize.yaml
可选的属性
friendly_name
容易记的名字
homebridge_name
在homebridge中显示的名字
hidden
如果为true这个实体不会显示
homebridge_hidden
在homebridge中是否隐藏
emulated_hue_hidden
这个会逐步废弃。
entity_picture
使用一个URL,实体会使用这个图片。
icon
任何一个图标。图标可以在[material design icons](http://materialdesignicons.com/)中找[CheatSheet](https://cdn.materialdesignicons.com/4.5.95/)。必须要以 `mdi:` 开头。例如 `mid:home` 注意,比较新的一些图标可能在当前版本中无法使用。可以在这个链接查看哪些图标在不同版本中添加。[(mdi图标添加历史)](https://materialdesignicons.com/history)
assumed_state
对于有两个状态的开关的一个默认状态。具体怎么用需要笔者测试一下。默认值是true
device_class
设备的类型。修改了设备类型同时会修改在UI界面显示的图标
unit_of_measurement
测量的单位,如果有测量值。会影响界面上和历史状态的可视化图表上的单位。
initial_state
初始状态,对于自动化来说,on或者off
Device Class
现在有如下三种设备类型是支持的:
* 二元传感器(表示开或者关的状态)
* 传感器
* 帘(窗帘,车库门等等覆盖用的)
手动自定义
如下是一个手动自定义的例子
homeassistant:
name: Home
unit_system: metric
# etc
customize:
# Add an entry for each entity that you want to overwrite.
sensor.living_room_motion:
hidden: true
thermostat.family_room:
entity_picture: https://example.com/images/nest.jpg
friendly_name: Nest
switch.wemo_switch_1:
friendly_name: Toaster
entity_picture: /local/toaster.jpg
switch.wemo_switch_2:
friendly_name: Kitchen kettle
icon: mdi:kettle
switch.rfxtrx_switch:
assumed_state: false
# Customize all entities in a domain
customize_domain:
light:
icon: mdi:home
automation:
initial_state: 'on'
# Customize entities matching a pattern
customize_glob:
"light.kitchen_*":
icon: mdi:description
"scene.month_*_colors":
hidden: true
emulated_hue_hidden: false
homebridge_hidden: true
重新加载自定义
Home Assistant提供一个服务来重新加载核心的配置。改服务叫做 homeassistant.reload_core_config
这个运行用户修改自定义的部分并且不需要重启Home Assistant来应用那些设置。需要在Developer Tools的页面中Service的tab页中选中homeassistant.reload_core_config
并且单击“CALL SERVICE”按钮。同时,你也可以在Configuration > Server Control页面中,选择“Reload Core”这个选项。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。