OwnTracks
OwnTracks 是一款免费开源的 iOS 和 Android 应用程序,允许您跟踪您的位置并将其直接发送到 Home Assistant。可以通过 Settings > Devices & services 设置 OwnTracks。
默认情况下,集成通过 HTTP 监听来自 OwnTracks 的传入消息。如果 Home Assistant 配置为使用 MQTT,它将监听 MQTT 消息。当通过 HTTP 提交位置时,Home Assistant 会返回所有 人员 的最后已知位置。他们的位置将显示在 OwnTracks 应用中。
配置
- 要在 Home Assistant 中设置 OwnTracks,请转到 Settings > Devices & services。
- 添加 OwnTracks 集成。
- 这将为您提供 Webhook URL 以及在移动设备配置期间使用的 加密密钥(见下文)。
配置应用 - Android
-
安装 OwnTracks Android 应用程序。
- 如果您需要不含 Google Play Services 的 OwnTracks 版本,"OSS" 版本可在此处获取。
-
在应用中,打开侧边栏并选择 Preferences,然后选择 Connection。
-
更改以下设置:
- Mode:HTTP
- Host:
<设置集成时提供给您的 URL> - Identification:
- Username:
<用户名>:您可以为 OwnTracks 编造一个。 - Password:可以留空。
- Device ID:
<设备名称>:帮助您记住哪个设备用于 OwnTracks 的内容。 - Tracker ID:
<xx>两个字符的跟踪器 ID。(可以留空)
- Username:
-
您的跟踪器设备将在 Home Assistant 中被称为
<Username>_<Device name>。如果您输入了 Tracker ID,tid属性将设置为该 ID。
配置应用 - iOS
-
在 OwnTracks 应用中,点击左上角的 (i) 并选择 Settings。
-
更改以下设置:
- Mode:HTTP
- URL:
<设置集成时提供给您的 URL> - 打开身份验证
- User ID:
<您的名字>。您可以为 OwnTracks 编造一个。
高级配置
OwnTracks 允许用户通过在 "configuration.yaml" 中添加部分来设置高级配置。
owntracks 平台的完整配置示例如下所示:
使用 OwnTracks 区域
OwnTracks 可以跟踪区域,并向 Home Assistant 发送区域进入和退出信息。为此,请在 OwnTracks 应用中设置一个区域。确保在 Home Assistant 区域中使用相同的名称。在为区域添加坐标时,请注意 OwnTracks 中 Radius 使用的单位是米。有关更多信息,请参阅 OwnTracks 文档。
Home Assistant 使用进入和离开消息来设置您的区域位置。当您进入时,您的位置将被设置到区域的中心。当您在区域内时,来自 OwnTracks 的位置更新将被忽略。
当您退出区域时,Home Assistant 将开始使用位置更新再次跟踪您。为确保 Home Assistant 正确退出区域(它根据您的 GPS 坐标计算),您可能希望将 HA 中的区域半径设置为比 OwnTracks 区域半径稍小。
使用 OwnTracks 区域 - 使用 iBeacon 强制 OwnTracks 更新
:::note OwnTracks v2.0.0 移除了对 Android 上 iBeacon 的支持。
::: 当以通常的显著变化模式运行时(这对手机电池友好),OwnTracks 有时不会像您希望的那样快速更新您的到达区域位置。如果您想在回家时触发自动化,这可能很烦人。您可以使用 iBeacon 改善这种情况。
iBeacon 是简单的蓝牙设备,发送"我在这里"的消息。iOS 和某些 Android 设备支持它们。OwnTracks 在这里有更多说明。
当您进入 iBeacon 区域时,OwnTracks 将向 HA 发送 region enter 消息,如上所述。因此,如果您想在到达家时触发事件,可以在前门外放置一个 iBeacon。如果您设置一个名为 home 的 OwnTracks iBeacon 区域,那么靠近信标将触发向 HA 的更新,将您的区域设置为 home。
当您退出 iBeacon 区域时,HA 将切换回使用 GPS 来确定您的位置。根据您的区域大小和 GPS 位置的准确性,这可能会更改您的 HA 区域。
有时 OwnTracks 会与 iBeacon 断开连接几秒钟。如果您以 - 开头命名您的信标,OwnTracks 将等待更长时间才决定它已退出信标区域。HA 在将 OwnTracks 区域与区域匹配时将忽略 -。因此,如果您将 OwnTracks 区域命名为 -home,HA 将将其识别为 home,但您将拥有更稳定的 iBeacon 连接。
使用 OwnTracks iBeacon 跟踪设备
iBeacon 不需要是固定的。您可以将一个放在钥匙扣上,或放在车里。
当您的手机看到一个它知道的移动 iBeacon 时,它会告诉 HA 该 iBeacon 的位置。如果您在连接到 iBeacon 时移动手机,HA 将更新 iBeacon 的位置。但当您的手机失去连接时,HA 将停止更新 iBeacon 位置。
要将移动 iBeacon 与 HA 一起使用,您只需设置一个与您的区域名称不匹配的区域。如果 HA 看到与区域名称不匹配的 iBeacon 区域的进入事件(例如 keys),它将开始跟踪它,调用设备 device_tracker.beacon_keys)。
这允许您为无法自我跟踪的设备编写区域自动化(例如,如果我离开房子但钥匙还在家里,请提醒我)。另一个例子是如果我的车到家,打开大门。
同时使用移动和固定 iBeacon
您可以同时使用两种类型的 iBeacon,因此如果您有一个区域 drive,其 iBeacon 区域名为 -drive,并且您带着名为 -car 的移动 iBeacon 到家,那么 device_tracker.beacon_car 将被设置为 drive 状态。
将 OwnTracks 航点导入为区域
默认情况下,任何连接到 Home Assistant 的 OwnTracks 用户都可以导出其航点定义(从 Export - Export to Endpoint 菜单项),然后将其转换为 Home Assistant 中的区域定义。区域将被命名为 <user>-<device> - <region name>:<region uuid>。此功能可以通过 2 种方式控制:
- 配置变量
waypoints可以设置为false,这将禁用所有用户导入航点。 - 配置变量
waypoint_whitelist可以包含允许导入航点的用户列表。

