dokidoki

从终端控制交互式 BLE 设备(扫描/连接/播放/时间线)

安装

概览

什么是dokidoki

DokiDoki CLI 是一款专为开发者和技术爱好者设计的命令行工具,用于通过终端直接控制交互式蓝牙低功耗(BLE)设备。它提供了一套简洁而强大的接口,让用户无需图形界面即可完成设备扫描、连接、动作执行以及复杂时间线播放等操作。该工具的核心目标是实现高效、可编程的设备交互体验,特别适合需要自动化测试或嵌入式开发场景。DokiDoki 支持多种设备动作类型,包括线性运动、旋转和振动强度调节,并能与音频文件同步播放,形成多模态反馈机制。其设计充分考虑了跨平台兼容性,支持 Linux、macOS 和 Windows 系统,并依赖 Node.js 18+ 环境运行。日志记录功能确保了调试过程的透明性,所有操作细节均写入 `/tmp/dokidoki.log` 文件供后续分析。

核心功能特点

  1. 支持 BLE 设备扫描、连接与断开,自动启动后台守护进程
  2. 可通过命令行直接控制设备动作:线性运动、旋转方向和振动强度
  3. 支持时间线 JSON 格式播放,实现多动作按时间轴精准同步执行
  4. 集成音频播放功能,可与设备动作进行音视频同步控制
  5. 提供 daemon 管理命令,便于后台服务启停与状态监控
  6. 兼容主流音频格式(MP3/AAC/WAV/FLAC/OGG/AIFF),适配不同平台播放器

适用场景

DokiDoki CLI 特别适用于需要快速原型验证或批量控制交互式硬件的场景。例如,在物联网产品开发中,工程师可以利用 `doki scan` 和 `doki connect` 命令迅速定位并接入 DK-META2 类设备,再通过 `doki action linear 50` 等指令实时调整设备输出参数,极大提升调试效率。对于多媒体交互装置项目,用户可编写包含 VIBRATION、LINEAR 和 ROTARY 动作的时间线 JSON 文件,配合背景音乐使用 `doki player play timeline.json` 实现精确到毫秒级的视听同步效果。此外,在游戏外设测试、机器人触觉反馈系统开发以及自动化产线检测等领域,该工具也能发挥重要作用——只需编写脚本调用 doki 命令序列,即可模拟真实用户操作,完成重复性任务验证。由于其完全基于终端运行,DokiDoki 还非常适合集成到 CI/CD 流程中,作为无人值守的测试环节之一。