Repolode
owntracks

owntracks/recorder

轻量级服务,通过 MQTT 或 HTTP 接收并存储 OwnTracks 手机应用上报的位置数据,无需外部数据库。

Star
1,222
Fork
147
未关闭 Issue
12
最近提交
11天前

这是什么?

OwnTracks Recorder 订阅 MQTT 服务器的消息,或接收携带 OwnTracks JSON 数据的 HTTP POST 请求,并把位置数据以普通文件的形式写入磁盘。它通过内置的 REST API 和 WebSocket 服务提供数据查询,其中实时地图会在新位置到达时自动更新。

配套的命令行工具 ocat 直接读取存储的数据,可输出 JSON、GeoJSON、CSV、GPX、XML 等格式,并支持按用户、设备和时间范围筛选。逆地理编码可为坐标点补充地址和国家代码,支持 OpenCage、Google 以及本地的 revgeod 服务。

项目使用 C 语言编写,适合在低配置硬件上运行。可通过 Debian 软件包、Docker 镜像安装,也可从源码编译,并支持使用 Lua 脚本进行扩展。

核心功能

  • 01通过 MQTT 订阅或 HTTP POST 接收位置数据
  • 02数据以普通文件存储,无需外部数据库
  • 03内置 REST API 与 WebSocket 实时地图
  • 04ocat 工具可导出 JSON、GeoJSON、CSV、GPX、XML 等格式
  • 05支持 OpenCage、Google 和 revgeod 逆地理编码
  • 06支持 Lua 钩子自定义行为

适用场景

  • 在家庭服务器上为自己的 OwnTracks 设备保存私有位置轨迹
  • 在本地地图上查看家人手机位置,不把数据交给第三方服务
  • 在树莓派等低功耗设备上长期运行
  • 将位置历史导出为 GPX 或 CSV 用于分析

快速上手

  1. 1

    从 Docker Hub 拉取 Docker 镜像

    docker pull owntracks/recorder
  2. 2

    启动 Recorder 并订阅 OwnTracks 主题

    ./ot-recorder 'owntracks/#'
  3. 3

    在浏览器中打开默认地址的 Web 界面

使用前须知

  • 预编译包仅支持有限的 Linux 发行版,其他平台需要从源码编译。
  • 除非使用 HTTP 模式,否则需要 MQTT 代理(如 Mosquitto)。
  • 地图功能需要您自行提供地图 API 密钥。
  • 元数据中的许可证信息不明确。

收录于专题

标签

#location-tracking#mqtt#owntracks#geolocation#self-hosted#websocket#geojson#http#jpdup#json

常见问题

recorder 是什么?
轻量级服务,通过 MQTT 或 HTTP 接收并存储 OwnTracks 手机应用上报的位置数据,无需外部数据库。 OwnTracks Recorder 订阅 MQTT 服务器的消息,或接收携带 OwnTracks JSON 数据的 HTTP POST 请求,并把位置数据以普通文件的形式写入磁盘。它通过内置的 REST API 和 WebSocket 服务提供数据查询,其中实时地图会在新位置到达时自动更新。
recorder 可以免费使用吗?用的什么许可证?
recorder 以 Other 许可证开源。用于商业产品前,请先确认许可证条款。
recorder 还在维护吗?
活跃维护中。recorder 最近一次提交是在 2026年10月27日。
recorder 适合用来做什么?
在家庭服务器上为自己的 OwnTracks 设备保存私有位置轨迹 在本地地图上查看家人手机位置,不把数据交给第三方服务 在树莓派等低功耗设备上长期运行 将位置历史导出为 GPX 或 CSV 用于分析
recorder 怎么安装和运行?
从 Docker Hub 拉取 Docker 镜像: docker pull owntracks/recorder 启动 Recorder 并订阅 OwnTracks 主题: ./ot-recorder 'owntracks/#' 在浏览器中打开默认地址的 Web 界面
在哪里获取 recorder?
源代码和安装说明在 GitHub 上:https://github.com/owntracks/recorder

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目