This commit is contained in:
acgist
2023-02-11 22:11:51 +08:00
parent 50f80bee2d
commit 5f85dfccca
112 changed files with 1770 additions and 1213 deletions

View File

@@ -36,105 +36,153 @@
> 注意:没有消息类型表示请求类型
## 终端信令2000~2999
## 终端信令
### 终端信息
### 终端注册信令client::register
终端注册成功响应以后[下发配置信令](#下发配置信令2004)同时广播[终端上线信令](#终端上线信令2002)。
### 终端广播信令client::broadcast
```
# 请求主体
{
"username": "信令用户",
"password": "信令密码",
"ip": "IP地址",
"mac": "MAC地址",
"signal": "信号强度",
"battery": "电池电量",
"mediasoup": "媒体服务名称"
// 主体
}
# 响应主体
{
}
# 消息流程:终端->服务端->终端
# 广播主体
{
"sn": "终端标识",
"ip": "IP地址",
"mac": "MAC地址",
"signal": "信号强度",
"battery": "电池电量",
"mediasoup": "媒体服务名称"
// 主体
}
# 消息流程:终端->服务-)终端
# 消息流程:终端->信令服务-)终端
```
### 终端关闭信令client::close
终端关闭以后广播[终端下线信令](#终端下线信令2003),同时释放所有相关资源(信令通道、媒体通道等等)
```
# 请求主体
{
}
# 响应主体
{
"sn": "终端标识"
}
# 消息流程:终端->服务
# 消息流程:终端->信令服务->终
# 消息流程:终端->信令服务-[终端下线])终端
```
### 终端上线信令client::online
### 终端配置信令client::config
```
# 响应主体
{
"sn": "终端标识"
}
# 消息流程:服务端-)终端
```
参考[终端注册信令](#终端注册信令2000)
### 终端下线信令client::offline
```
# 响应主体
{
"sn": "终端标识"
}
# 消息流程:服务端-)终端
```
参考[终端关闭信令](#终端关闭信令2001)
### 下发配置信令client::config
服务端收到[终端注册信令](#终端注册信令2000)后下发配置
```
# 响应主体
{
"time": "系统时间yyyyMMddHHmmss",
"time": "系统时间yyyyMMddHHmmss",
"media": "媒体配置",
"webrtc": "WebRTC配置"
}
# 消息流程:服务->终端
# 消息流程:终端-[终端注册]>信令服务->终端
```
### 心跳信令client::heartbeat
通过心跳维护连接,实时同步终端信息:信号、电量等等
```
# 请求主体
{
"signal": "信号强度",
"battery": "电池电量"
}
# 消息流程:终端->服务
# 消息流程:终端->信令服务->终
```
### 终端列表信令client::list
```
# 请求主体
{
}
# 响应主体
[
{
"sn": "终端标识",
"ip": "终端IP",
"signal": 信号强度0~100,
"battery": 电池电量0~100,
"charging": 是否充电true|false,
"mediasoup": "媒体服务名称",
"lastHeartbeat": "最后心跳时间"
},
...
]
# 消息流程:终端->信令服务->终端
```
### 终端下线信令client::offline
```
# 广播主体
{
"sn": "下线终端标识"
}
# 消息流程:终端-[终端关闭]>信令服务-)终端
```
### 终端上线信令client::online
```
# 广播主体
{
"sn": "终端标识",
"ip": "终端IP",
"signal": 信号强度0~100,
"battery": 电池电量0~100,
"charging": 是否充电true|false,
"mediasoup": "媒体服务名称",
"lastHeartbeat": "最后心跳时间"
}
# 消息流程:终端-[终端注册]>信令服务-)终端
```
### 重启终端信令client::reboot
```
# 响应主体
{
}
# 消息流程:信令服务->终端
```
### 终端注册信令client::register
```
# 请求主体
{
"username": "信令用户",
"password": "信令密码",
"sn": "终端标识",
"ip": "终端IP",
"signal": 信号强度0~100,
"battery": 电池电量0~100,
"charging": 是否充电true|false
}
# 响应主体
{
}
# 消息流程:终端->信令服务->终端
# 消息流程:终端->信令服务-[终端上线])终端
```
### 终端状态信令client::status
```
# 请求主体
{
"sn": "终端标识"
}
# 响应主体
{
"sn": "终端标识",
"ip": "终端IP",
"signal": 信号强度0~100,
"battery": 电池电量0~100,
"charging": 是否充电true|false,
"mediasoup": "媒体服务名称",
"lastHeartbeat": "最后心跳时间"
}
# 消息流程:终端->信令服务->终端
```
### 单播信令client::unicast
@@ -149,87 +197,32 @@
{
// 主体信息
}
# 消息流程:终端->服务->终端
# 消息流程:终端->信令服务->终端
```
终端转发信令到指定的终端
## 媒体服务信令
### 广播信令client::broadcast
### 媒体服务列表信令media::list
```
# 请求主体
{
// 主体信息
}
# 响应主体
{
// 主体信息
}
# 消息流程:终端->服务端-)终端
```
终端广播信令到所有的终端
### 重启终端信令client::reboot
```
# 响应主体
# 请求主体
{
}
# 消息流程:服务器->终端
```
重启终端
### 终端状态信令client::status
```
# 请求主体
{
"sn": "终端标识"
}
# 响应主体
{
"sn": "终端标识",
"ip": "IP地址",
"mac": "MAC地址",
"signal": "信号强度",
"battery": "电池电量",
"mediasoup": "媒体服务名称"
}
# 消息流程:终端->服务端->终端
```
响应指定终端状态(如果没有指定终端标识默认查询自己)
### 终端列表信令client::list
#### 消息主体
```
# 请求主体
{
}
# 响应主体
# 响应主体:
[
{
"sn": "终端标识",
"ip": "IP地址",
"mac": "MAC地址",
"signal": "信号强度",
"battery": "电池电量",
"mediasoup": "媒体服务名称"
},
...
"name": "名称",
"enabled": "是否启用",
"host": "主机",
"port": "端口",
"schema": "协议",
"address": "完整地址"
}
]
# 消息流程:终端->服务->终端
# 消息流程:终端->信令服务->终端
```
响应所有终端状态列表
## 媒体信令
### 重启媒体信令media::reboot
### 重启媒体服务信令media::reboot
```
# 请求主体:
@@ -241,7 +234,7 @@
# 消息流程:终端->信令服务+)终端
```
### 媒体注册信令media::register
### 媒体服务注册信令media::register
```
# 请求主体: