Azure Service Bus
Azure Service Bus
集成允许您从 Home Assistant 发送消息到 Azure Service Bus
首次设置
这假设您已经有一个 Azure 帐户。如果没有,请在 这里
您需要创建一个 Service Bus 命名空间;您可以按照 本指南
然后,您必须为 Service Bus 创建一个具有 Send
权限的共享访问策略,或使用您命名空间中的 RootManageAccessKey(此密钥具有其他权限,包括管理事件中心和侦听,而这些权限在本情况下并不需要),有关 Service Bus 安全性的更多详细信息 请点击这里
一旦您拥有了带有 Send
策略的连接字符串,就可以设置集成本身。
配置
将以下行添加到您的 configuration.yaml
configuration.yaml 文件是 Home Assistant 的主要配置文件。它列出了要加载的集成及其特定配置。在某些情况下,需要直接在 configuration.yaml 文件中手动编辑配置。大多数集成可以在 UI 中配置。 [Learn more] 文件中。
在更改了configuration.yaml
configuration.yaml 文件是 Home Assistant 的主要配置文件。它列出了要加载的集成及其特定配置。在某些情况下,需要直接在 configuration.yaml 文件中手动编辑配置。大多数集成可以在 UI 中配置。 [Learn more] 文件后,重启 Home Assistant 以应用更改。 该集成现在显示在集成页面的 设置 > 设备与服务 下。其实体在集成卡片上以及实体标签上列出。
# 示例 configuration.yaml 条目
notify:
- platform: azure_service_bus
connection_string: !secret servicebus_connection_string
topic: t-test
- platform: azure_service_bus
connection_string: !secret servicebus_connection_string
queue: q-test
使用
通知服务将把提供的数据转换为服务总线上的 JSON 对象。message
字段将始终被设置,但 target
和 title
字段是可选的,仅在设置时才包含在服务总线消息中。在 data
部分提供的任何输入都将被展平到 JSON 对象的根部,并遵循给定的结构。数据部分提供的所有输入都将包含在消息中。
请查看下面的示例,了解自动化触发器如何转换为服务总线上的消息。
automation:
- alias: "Sunset Service Bus message"
triggers:
- trigger: sun
event: sunset
actions:
- action: notify.test_queue
data:
message: "太阳正在下山"
title: "晚上好"
data:
sun_direction: "向下"
custom_field: 123
custom_object:
trigger_more: true
explain: "开始变暗了"
可以从队列或主题订阅中检索到的消息:
{
"message": "太阳正在下山",
"title": "晚上好",
"sun_direction": "向下",
"custom_field": 123,
"custom_object": {
"trigger_more": true,
"explain": "开始变暗了"
}
}