车队Telemetry
车队遥测允许车辆将数据直接传输到服务器,无需轮询 vehicle_data 端点。这可以防止不必要的车辆尾流和电池消耗。
在线时,车辆通过 mTLS Web Socket 连接将遥测数据流式传输到由合作应用程序托管的服务器。这是访问车辆数据的首选方法。
服务器设置
车队遥测服务器必须在公开互联网中运行的服务器上运行。GitHub 仓库 提供了服务器运行的源代码和示例。
车辆设置
要配置车辆,请确认已满足所有先决条件。然后,通过 vehicle-command HTTP 代理发送 configure Fleet Telemetry 请求。代理将使用配置的私钥对配置进行签名,并将请求转发到 Fleet API。
先决条件
为了使车辆能够传输数据,需要满足以下几个条件:
- 车辆不能是2021年之前的Model S或Model X。
- 车辆必须运行2024.26或更高版本的固件。
- 使用传统证书签名过程配置的应用程序需要2023.20.6或更高版本。
- 车队密钥必须与车辆配对。
配对您的钥匙
要将您的钥匙与车辆配对,请引导用户:
https://tesla.com/_ak/developer-domain.com
这将允许用户通过特斯拉移动应用程序将钥匙添加到他们的车辆。
故障排除:
- 如果您收到一条消息,指出用户未授予您的第三方应用访问权限,请确保他们使用授权您的应用时使用的相同电子邮件登录 Tesla 应用。
- 如果您收到一条消息,指出该应用未在 Tesla 注册,请确保您已调用用户所在地区的 注册端点。同时验证您的公钥在
https://developer-domain.com/.well-known/appspecific/com.tesla.3p.public-key.pem上仍然可用,并且可以在Range标头设置为bytes=0-200时获取。如果应用程序的公钥在用于应用程序注册的域上的/.well-known/路径中不再可用,也会显示此错误。这已成为 的要求。
发送配置
满足所有先决条件后,使用 Fleet Telemetry configure 端点将所需的配置发送到车辆。如果所需的授权范围被撤销,导致配置无效,则该配置将从车辆中删除。
以下字段需要 vehicle_location 范围:Location、OriginLocation、DestinationLocation、DestinationName、RouteLine、GpsState、GpsHeading。
granular_access.hide_private 为 true 的车辆共享无法流式传输这些字段,即使已授予 vehicle_location。创建包含这些字段的配置会以 403(location access not granted)被拒绝。
故障排除:
- 如果车辆已配置并处于唤醒状态,但未开始流式传输,请检查以下内容:
- 使用 check_server_cert.sh 确保配置中的主机和 CA 与您的服务器兼容。
- 使用 fleet_status 端点确保车辆上存在应用程序公钥。注意:此端点中报告的密钥状态可能存在一些滞后。
更新日志
车辆在连接时以及通过 车队状态 端点发布车队遥测客户端版本。 该版本可用于识别特定车辆的功能。
- 1.0.0
- 1.1.0
- 移除了
prefer_typed配置选项。所有数据现在均以类型化形式返回。
- 移除了
- 1.2.0
- 在车队遥测数据中新加入了自动驾驶统计字段。新字段名称为
MilesSinceReset和SelfDrivingMilesSinceReset。相关文档可在可用数据页面查看。这些字段仅适用于 HW4 车型。
- 在车队遥测数据中新加入了自动驾驶统计字段。新字段名称为
- 1.3.0
- 此更改包含在固件版本 2026.26.6 中。
- 新增每字段配置选项
include_fields。当某个字段被发布时,列表中的字段会一并包含在同一条消息中,即使其值未发生变化。被包含的字段无需在顶层单独配置。如果某字段同时作为顶层字段配置,因include_fields而被发送时不会重置该顶层字段的interval_seconds。MilesSinceReset和SelfDrivingMilesSinceReset仅允许互相包含。