1、首先,假设已经完成了MQTT集成。此时MQTT Broker中还没有任何Home Assistant所需格式的信息。
2、通过查阅Home Assistant的文档,可以了解到在设备侧,需要按照给定格式(含有必要的设备信息和标识)publish到MQTT Broker。
3、为了启用MQTT Discovery,需要首先添加一些设置到configuration.yaml。
4、在linux系统上,configuration.yaml文件在~/.homeassistant文件夹下。
5、打开该文件,添加如图所示三行,设定开启discovery,并且前缀为homeassistant。
6、在Home Assistant文档中,提到了可以被发现的设备需要按照给定格式publish topic。
7、支持的类型在文档中有列出,以binary_sensor类型为例,用于配置topic名称为:前缀/类型/id/config在载荷中要含有名称,设备类别,state_topic。
8、在config中指明了state_topic的路径,如果要更新设备状态就按照这个topic来,载荷为设备状态。
9、先发送一个config,接着发送几次state更新,再进入Home Assistant的面板,可以看到该设备的状态变化。
10、使用MQTT Explorer等工具查看设备,可以看到类似的状态变化。