Add realtime gateway and simulator bridge
This commit is contained in:
@@ -27,6 +27,122 @@ npm run mock-gps-sim
|
||||
- 上传轨迹文件回放(GPX / KML / GeoJSON)
|
||||
- 路径回放
|
||||
- 速度、频率、精度调节
|
||||
- 可选桥接到新实时网关
|
||||
|
||||
## 桥接到新网关
|
||||
|
||||
旧模拟器现在支持保留原有本地广播链路的同时,把数据旁路转发到新的 Go 实时网关。
|
||||
|
||||
默认行为:
|
||||
|
||||
- 小程序仍可继续连接 `ws://127.0.0.1:17865/mock-gps`
|
||||
- 页面里可以直接配置并启用新网关桥接
|
||||
- 环境变量只作为服务启动时的默认值
|
||||
|
||||
### 页面里直接配置
|
||||
|
||||
启动模拟器后,打开:
|
||||
|
||||
```text
|
||||
http://127.0.0.1:17865/
|
||||
```
|
||||
|
||||
在“新网关桥接”区域可以直接配置:
|
||||
|
||||
- 是否启用桥接
|
||||
- 网关地址
|
||||
- Producer Token
|
||||
- Channel ID
|
||||
- 目标 Device ID
|
||||
- Group ID
|
||||
- Source ID
|
||||
- Source Mode
|
||||
- 本地桥接预设
|
||||
|
||||
点“应用桥接配置”后立即生效,不需要重启模拟器。
|
||||
|
||||
预设说明:
|
||||
|
||||
- 预设保存在浏览器本地存储
|
||||
- 适合多人联调时快速切换 `deviceId / groupId / sourceId`
|
||||
- “套用预设”只会填入表单,不会自动提交到服务端
|
||||
- 需要再点一次“应用桥接配置”才会真正切换运行时桥接目标
|
||||
|
||||
### PowerShell 启动示例
|
||||
|
||||
在仓库根目录执行:
|
||||
|
||||
```powershell
|
||||
$env:MOCK_SIM_GATEWAY_ENABLED='1'
|
||||
$env:MOCK_SIM_GATEWAY_URL='ws://127.0.0.1:18080/ws'
|
||||
$env:MOCK_SIM_GATEWAY_TOKEN='dev-producer-token'
|
||||
$env:MOCK_SIM_GATEWAY_CHANNEL_ID=''
|
||||
$env:MOCK_SIM_GATEWAY_DEVICE_ID='child-001'
|
||||
$env:MOCK_SIM_GATEWAY_SOURCE_ID='mock-gps-sim-a'
|
||||
npm run mock-gps-sim
|
||||
```
|
||||
|
||||
如果你使用新网关管理台创建的 `channel`,则要这样填:
|
||||
|
||||
```powershell
|
||||
$env:MOCK_SIM_GATEWAY_ENABLED='1'
|
||||
$env:MOCK_SIM_GATEWAY_URL='ws://127.0.0.1:18080/ws'
|
||||
$env:MOCK_SIM_GATEWAY_TOKEN='<producerToken>'
|
||||
$env:MOCK_SIM_GATEWAY_CHANNEL_ID='<channelId>'
|
||||
$env:MOCK_SIM_GATEWAY_DEVICE_ID='child-001'
|
||||
npm run mock-gps-sim
|
||||
```
|
||||
|
||||
说明:
|
||||
|
||||
- 不填 `MOCK_SIM_GATEWAY_CHANNEL_ID` 时,旧模拟器走老的 `authenticate` 模式
|
||||
- 填了 `MOCK_SIM_GATEWAY_CHANNEL_ID` 时,旧模拟器自动走 `join_channel` 模式
|
||||
- 管理台里复制出来的 `producerToken` 只能和对应的 `channelId` 配套使用
|
||||
|
||||
### 可用环境变量
|
||||
|
||||
- `MOCK_SIM_GATEWAY_ENABLED`
|
||||
- `1` 表示启用桥接
|
||||
- `MOCK_SIM_GATEWAY_URL`
|
||||
- 新网关地址,默认 `ws://127.0.0.1:18080/ws`
|
||||
- `MOCK_SIM_GATEWAY_TOKEN`
|
||||
- Producer token,默认 `dev-producer-token`
|
||||
- `MOCK_SIM_GATEWAY_CHANNEL_ID`
|
||||
- 可选 channel id;填写后会改走 `join_channel`
|
||||
- `MOCK_SIM_GATEWAY_DEVICE_ID`
|
||||
- 转发目标 `deviceId`,默认 `child-001`
|
||||
- `MOCK_SIM_GATEWAY_GROUP_ID`
|
||||
- 可选 `groupId`
|
||||
- `MOCK_SIM_GATEWAY_SOURCE_ID`
|
||||
- source id,默认 `mock-gps-sim`
|
||||
- `MOCK_SIM_GATEWAY_SOURCE_MODE`
|
||||
- source mode,默认 `mock`
|
||||
- `MOCK_SIM_GATEWAY_RECONNECT_MS`
|
||||
- 断线重连间隔,默认 `3000`
|
||||
|
||||
### 桥接状态查看
|
||||
|
||||
启动后可查看:
|
||||
|
||||
```text
|
||||
http://127.0.0.1:17865/bridge-status
|
||||
```
|
||||
|
||||
桥接配置接口:
|
||||
|
||||
```text
|
||||
http://127.0.0.1:17865/bridge-config
|
||||
```
|
||||
|
||||
返回内容包含:
|
||||
|
||||
- 是否启用桥接
|
||||
- 是否已连上新网关
|
||||
- 是否已认证
|
||||
- 最近发送 topic
|
||||
- 已发送条数
|
||||
- 丢弃条数
|
||||
- 最近错误
|
||||
|
||||
## 加载自己的地图
|
||||
|
||||
|
||||
Reference in New Issue
Block a user