[*] 修改描述
This commit is contained in:
@@ -71,6 +71,8 @@ const signalProtocol = {
|
||||
},
|
||||
/** 平台信令 */
|
||||
platform: {
|
||||
/** 异常 */
|
||||
error: 1999
|
||||
},
|
||||
/** 当前索引 */
|
||||
index: 100000,
|
||||
@@ -274,6 +276,9 @@ const signalChannel = {
|
||||
case signalProtocol.client.heartbeat:
|
||||
console.debug('心跳');
|
||||
break;
|
||||
case signalProtocol.platform.error:
|
||||
console.error('信令发生错误', data);
|
||||
break;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
@@ -33,23 +33,26 @@
|
||||
#### 消息主体
|
||||
|
||||
```
|
||||
# 请求
|
||||
{}
|
||||
# 广播
|
||||
{}
|
||||
```
|
||||
|
||||
#### 消息流程:终端->服务端+)终端
|
||||
|
||||
* 全员广播关闭服务信令
|
||||
* 关闭信令服务
|
||||
全员广播关闭服务信令,然后关闭信令服务。
|
||||
|
||||
### 执行命令信令(1001)
|
||||
|
||||
#### 消息主体
|
||||
|
||||
```
|
||||
# 请求
|
||||
{
|
||||
"script": "命令"
|
||||
}
|
||||
----
|
||||
# 响应
|
||||
{
|
||||
"result": "结果"
|
||||
}
|
||||
@@ -57,9 +60,11 @@
|
||||
|
||||
#### 消息流程:终端->服务端->终端
|
||||
|
||||
在服务端执行终端命令并返回结果
|
||||
|
||||
### 异常信令(1999)
|
||||
|
||||
服务端->终端:提示异常信息
|
||||
#### 消息主体
|
||||
|
||||
```
|
||||
{}
|
||||
@@ -67,8 +72,25 @@
|
||||
|
||||
## 终端信令(2000~2999)
|
||||
|
||||
### 终端信息
|
||||
|
||||
### 终端注册信令(2000)
|
||||
|
||||
#### 消息主体
|
||||
|
||||
```
|
||||
# 终端信息
|
||||
# 请求
|
||||
{
|
||||
"username": "信令授权用户",
|
||||
"password": "信令授权密码",
|
||||
"ip": "IP地址",
|
||||
"mac": "MAC地址",
|
||||
"signal": "信号强度",
|
||||
"battery": "电池电量"
|
||||
}
|
||||
# 响应
|
||||
{}
|
||||
# 广播
|
||||
{
|
||||
"sn": "终端标识",
|
||||
"ip": "IP地址",
|
||||
@@ -78,32 +100,30 @@
|
||||
}
|
||||
```
|
||||
|
||||
### 终端注册信令(2000)
|
||||
#### 消息流程:终端->服务端-)终端
|
||||
|
||||
终端->服务端-)终端:注册成功后服务端响应,同时下发配置信息,广播终端上线事件。
|
||||
|
||||
```
|
||||
{
|
||||
"username": "信令授权用户",
|
||||
"password": "信令授权密码",
|
||||
"ip": "IP地址",
|
||||
"mac": "MAC地址",
|
||||
"signal": "信号强度",
|
||||
"battery": "电池电量"
|
||||
}
|
||||
```
|
||||
终端注册成功响应同时[下发配置信令](#下发配置信令2004),并且广播[终端上线信令](#终端上线信令2002)。
|
||||
|
||||
### 终端关闭信令(2001)
|
||||
|
||||
终端->服务端:广播终端下线事件,同时释放所有资源(信令通道、媒体通道等等)
|
||||
#### 消息主体
|
||||
|
||||
```
|
||||
# 请求
|
||||
{}
|
||||
# 广播
|
||||
{
|
||||
"sn": "终端标识"
|
||||
}
|
||||
```
|
||||
|
||||
#### 消息流程:终端-)服务端
|
||||
|
||||
广播[终端下线信令](#终端下线信令2003),同时释放所有相关资源(信令通道、媒体通道等等)
|
||||
|
||||
### 终端上线信令(2002)
|
||||
|
||||
服务端->终端:参考[终端注册信令](#注册信令)
|
||||
服务端->终端:参考[终端注册信令](#终端注册信令)
|
||||
|
||||
```
|
||||
{
|
||||
@@ -197,18 +217,20 @@
|
||||
|
||||
## 会议信令(4000~4999)
|
||||
|
||||
```
|
||||
创建会议 -> 邀请终端|踢出终端|加入会议|离开会议 -> 关闭会议
|
||||
```
|
||||
|
||||
### 创建会议信令(4000)
|
||||
|
||||
终端->服务端
|
||||
#### 消息主体
|
||||
|
||||
```
|
||||
{}
|
||||
----
|
||||
{
|
||||
"id": "会议标识"
|
||||
}
|
||||
```
|
||||
|
||||
#### 消息流程:终端->服务端+)终端
|
||||
|
||||
### 关闭会议信令(4001)
|
||||
|
||||
释放资源、广播广播
|
||||
|
||||
@@ -29,25 +29,25 @@ public class ClientRegisterListener extends ApplicationListenerAdapter<ClientReg
|
||||
@Async
|
||||
@Override
|
||||
public void onApplicationEvent(ClientRegisterEvent event) {
|
||||
final Map<?, ?> body = event.getBody();
|
||||
final ClientSession session = event.getSession();
|
||||
if (!session.authorized()) {
|
||||
return;
|
||||
}
|
||||
// 下发配置
|
||||
session.push(this.configProtocol.build());
|
||||
// 广播上线事件
|
||||
this.clientSessionManager.broadcast(
|
||||
session.sn(),
|
||||
this.onlineProtocol.build(Map.of("sn", session.sn()))
|
||||
);
|
||||
// 修改终端状态
|
||||
final Map<?, ?> body = event.getBody();
|
||||
final ClientSessionStatus status = session.status();
|
||||
status.setSn(session.sn());
|
||||
status.setIp((String) body.get("ip"));
|
||||
status.setMac((String) body.get("mac"));
|
||||
status.setSignal((Integer) body.get("signal"));
|
||||
status.setBattery((Integer) body.get("battery"));
|
||||
// 广播上线事件
|
||||
this.clientSessionManager.broadcast(
|
||||
session.sn(),
|
||||
this.onlineProtocol.build(status)
|
||||
);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user