跳转到主要内容
开始创作
开发文档

建立连接与握手

WebSocket 鉴权与 hello 握手报文。

文档中的域名示例请替换为实际环境;本地开发可在控制台文档页根据当前访问域名自动推断。

WebSocket 鉴权(三选一)

# 推荐:URL 参数
wss://open.ailancun.com/ws?token=<jwt>

# 方式 2:握手 Header
Authorization: Bearer <jwt>

# 方式 3:兼容老设备(无 JWT)
wss://open.ailancun.com/ws?device_id=AA:BB:CC:DD:EE:FF&tenant_id=1

客户端发送 hello

连接建立后立即发送。hello 中携带的设备信息会由 Gateway 自动上报到平台,无需额外 HTTP 调用。所有扩展字段可选,只传设备具备的信息。

{
  "type": "hello",
  "version": 1,
  "transport": "websocket",
  "uuid": "持久化唯一ID",
  "device_model": "ESP32-S3-DevKitC-1",
  "client_type": "esp32",
  "firmware_version": "1.3.0",
  "audio_params": { "format": "opus", "sample_rate": 16000, "channels": 1, "frame_duration": 60 },
  "network": { "type": "wifi", "ssid": "MyWifi", "signal": -65 }
}

服务端响应 hello

{
  "type": "hello",
  "session_id": "device-aa:bb:cc:dd:ee:ff",
  "transport": "udp",
  "audio_params": { "sample_rate": 24000, "frame_duration": 60 },
  "udp": { "server": "1.2.3.4", "port": 5678, "key": "<aes128-hex>", "nonce": "<hex>" }
}

遇到问题时,把 session_id 提供给技术支持可快速定位日志。也可在控制台「设备管理 → 实时联调」选中该设备,实时查看握手、音频上下行、识别、合成、动作下发的完整链路。