From e43f9283e70f2aa20261e98a65283b6eaf66c4f0 Mon Sep 17 00:00:00 2001
From: acgist <289547414@qq.com>
Date: Sun, 5 Feb 2023 16:55:57 +0800
Subject: [PATCH] =?UTF-8?q?[+]=20=E6=96=B0=E5=A2=9Eclient?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitmodules | 13 ++++++-
README.md | 4 +-
taoyao-android/libmediasoupclient | 1 +
taoyao-client/mediasoup-client | 1 +
taoyao-desktop/libmediasoupclient | 1 +
taoyao-signal-server/README.md | 7 +---
taoyao-signal-server/pom.xml | 6 ---
taoyao-signal-server/taoyao-media/README.md | 32 ---------------
taoyao-signal-server/taoyao-media/pom.xml | 26 -------------
taoyao-signal-server/taoyao-node/pom.xml | 4 ++
.../node/config/NodeAutoConfiguration.java | 39 +++++--------------
.../listener/platform/ShutdownListener.java | 18 +++++++++
taoyao-signal-server/taoyao-server/pom.xml | 2 +-
taoyao-signal-server/taoyao-signal/README.md | 12 ++++++
.../media/listener/MediaAnswerListener.java | 0
.../listener/MediaCandidateListener.java | 0
.../media/listener/MediaOfferListener.java | 0
.../media/listener/MediaPublishListener.java | 0
.../listener/MediaSubscribeListener.java | 0
.../acgist/taoyao/media/meeting/Meeting.java | 0
.../media/meeting/MeetingListenerAdapter.java | 0
.../taoyao/media/meeting/MeetingManager.java | 0
.../meeting/controller/MeetingController.java | 0
.../listener/MeetingCreateListener.java | 0
.../listener/MeetingEnterListener.java | 0
.../taoyao/mediasoup/MediasoupClient.java | 0
.../taoyao/mediasoup/client/ClientStream.java | 0
.../taoyao/mediasoup/listener/Listener.java | 0
.../protocol/ProtocolMediasoupAdapter.java | 0
.../protocol/client/AuthorizeProtocol.java | 0
.../media/ApplyNetworkThrottleProtocol.java | 0
.../media/ChangeDisplayNameProtocol.java | 0
.../protocol/media/CloseProducerProtocol.java | 0
.../media/ConnectWebRtcTransportProtocol.java | 0
.../media/CreateWebRtcTransportProtocol.java | 0
.../media/GetConsumerStatsProtocol.java | 0
.../media/GetDataConsumerStatsProtocol.java | 0
.../media/GetDataProducerStatsProtocol.java | 0
.../media/GetProducerStatsProtocol.java | 0
.../media/GetTransportStatsProtocol.java | 0
.../protocol/media/NewPeerProtocol.java | 0
.../protocol/media/PauseConsumerProtocol.java | 0
.../protocol/media/PauseProducerProtocol.java | 0
.../protocol/media/ProduceDataProtocol.java | 0
.../protocol/media/ProduceProtocol.java | 0
.../protocol/media/ProducerScoreProtocol.java | 0
.../RequestConsumerKeyFrameProtocol.java | 0
.../media/ResetNetworkThrottleProtocol.java | 0
.../protocol/media/RestartIceProtocol.java | 0
.../media/ResumeConsumerProtocol.java | 0
.../media/ResumeProducerProtocol.java | 0
.../SetConsumerPreferredLayersProtocol.java | 0
.../media/SetConsumerPriorityProtocol.java | 0
.../media/VideoorientationchangeProtocol.java | 0
.../taoyao/mediasoup/router/Router.java | 0
.../taoyao/mediasoup/transport/Transport.java | 0
.../signal/event/platform/ShutdownEvent.java | 27 +++++++++++++
.../signal/protocol/ProtocolAdapter.java | 5 +++
.../signal/protocol/ProtocolManager.java | 3 +-
.../protocol/platform/ShutdownProtocol.java | 11 ++++--
60 files changed, 106 insertions(+), 106 deletions(-)
create mode 160000 taoyao-android/libmediasoupclient
create mode 160000 taoyao-client/mediasoup-client
create mode 160000 taoyao-desktop/libmediasoupclient
delete mode 100644 taoyao-signal-server/taoyao-media/README.md
delete mode 100644 taoyao-signal-server/taoyao-media/pom.xml
create mode 100644 taoyao-signal-server/taoyao-node/src/main/java/com/acgist/taoyao/node/listener/platform/ShutdownListener.java
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/media/listener/MediaAnswerListener.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/media/listener/MediaCandidateListener.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/media/listener/MediaOfferListener.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/media/listener/MediaPublishListener.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/media/listener/MediaSubscribeListener.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/media/meeting/Meeting.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/media/meeting/MeetingListenerAdapter.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/media/meeting/MeetingManager.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/media/meeting/controller/MeetingController.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/media/meeting/listener/MeetingCreateListener.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/media/meeting/listener/MeetingEnterListener.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/MediasoupClient.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/client/ClientStream.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/listener/Listener.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/ProtocolMediasoupAdapter.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/client/AuthorizeProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ApplyNetworkThrottleProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ChangeDisplayNameProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/CloseProducerProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ConnectWebRtcTransportProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/CreateWebRtcTransportProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetConsumerStatsProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetDataConsumerStatsProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetDataProducerStatsProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetProducerStatsProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetTransportStatsProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/NewPeerProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/PauseConsumerProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/PauseProducerProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ProduceDataProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ProduceProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ProducerScoreProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/RequestConsumerKeyFrameProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ResetNetworkThrottleProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/RestartIceProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ResumeConsumerProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ResumeProducerProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/SetConsumerPreferredLayersProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/SetConsumerPriorityProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/VideoorientationchangeProtocol.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/router/Router.java (100%)
rename taoyao-signal-server/{taoyao-media => taoyao-signal}/src/main/java/com/acgist/taoyao/mediasoup/transport/Transport.java (100%)
create mode 100644 taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/signal/event/platform/ShutdownEvent.java
diff --git a/.gitmodules b/.gitmodules
index 71d71bf..ccb30e8 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,5 +1,16 @@
[submodule "taoyao-media-server/mediasoup"]
path = taoyao-media-server/mediasoup
url = https://gitee.com/acgist/mediasoup.git
-# url = https://github.com/acgist/mediasoup.git
branch = taoyao
+[submodule "taoyao-client/mediasoup-client"]
+ path = taoyao-client/mediasoup-client
+ url = https://gitee.com/acgist/mediasoup-client.git
+ branch = taoyao
+[submodule "taoyao-android/libmediasoupclient"]
+ path = taoyao-android/libmediasoupclient
+ url = https://gitee.com/acgist/libmediasoupclient.git
+ branch = taoyao
+[submodule "taoyao-desktop/libmediasoupclient"]
+ path = taoyao-desktop/libmediasoupclient
+ url = https://gitee.com/acgist/libmediasoupclient.git
+ branch = taoyao
\ No newline at end of file
diff --git a/README.md b/README.md
index 73b6711..81ff9e5 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,9 @@
|模块|名称|描述|
|:--|:--|:--|
-|taoyao-client|终端示例|Web端终端示例|
+|taoyao-client|终端示例|Web终端示例|
+|taoyao-android|终端示例|安卓终端示例|
+|taoyao-desktop|终端示例|桌面终端示例|
|taoyao-media-server|媒体服务|Mediasoup媒体服务|
|taoyao-signal-server|信令服务|信令业务逻辑|
diff --git a/taoyao-android/libmediasoupclient b/taoyao-android/libmediasoupclient
new file mode 160000
index 0000000..55d724f
--- /dev/null
+++ b/taoyao-android/libmediasoupclient
@@ -0,0 +1 @@
+Subproject commit 55d724ff8b036991b0f0688adb334df976e458fe
diff --git a/taoyao-client/mediasoup-client b/taoyao-client/mediasoup-client
new file mode 160000
index 0000000..98d314e
--- /dev/null
+++ b/taoyao-client/mediasoup-client
@@ -0,0 +1 @@
+Subproject commit 98d314ef32d428cb6cbba45a1dbad651a72f076d
diff --git a/taoyao-desktop/libmediasoupclient b/taoyao-desktop/libmediasoupclient
new file mode 160000
index 0000000..55d724f
--- /dev/null
+++ b/taoyao-desktop/libmediasoupclient
@@ -0,0 +1 @@
+Subproject commit 55d724ff8b036991b0f0688adb334df976e458fe
diff --git a/taoyao-signal-server/README.md b/taoyao-signal-server/README.md
index 5cae215..cb7ea64 100644
--- a/taoyao-signal-server/README.md
+++ b/taoyao-signal-server/README.md
@@ -6,8 +6,7 @@
|:--|:--|:--|
|taoyao|桃夭|桃之夭夭灼灼其华|
|taoyao-boot|基础|基础模块|
-|taoyao-node|集群|集群模块|
-|taoyao-media|媒体|媒体模块|
+|taoyao-node|集群|集群模块(可选)|
|taoyao-signal|信令|信令服务|
|taoyao-server|服务|启动服务|
@@ -33,12 +32,10 @@
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| taoyao-server |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
-| taoyao-media | Mediasoup |
+| taoyao-node | Mediasoup |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| taoyao-signal |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
-| taoyao-node |
-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| taoyao-boot |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
```
diff --git a/taoyao-signal-server/pom.xml b/taoyao-signal-server/pom.xml
index da16192..a53d9a3 100644
--- a/taoyao-signal-server/pom.xml
+++ b/taoyao-signal-server/pom.xml
@@ -37,7 +37,6 @@
taoyao-boot
taoyao-node
- taoyao-media
taoyao-signal
taoyao-server
@@ -110,11 +109,6 @@
taoyao-node
${project.version}
-
- com.acgist
- taoyao-media
- ${project.version}
-
com.acgist
taoyao-signal
diff --git a/taoyao-signal-server/taoyao-media/README.md b/taoyao-signal-server/taoyao-media/README.md
deleted file mode 100644
index 98c7206..0000000
--- a/taoyao-signal-server/taoyao-media/README.md
+++ /dev/null
@@ -1,32 +0,0 @@
-# 媒体
-
-## 媒体信令
-
-### 信令格式
-
-```
-{
- "header": {
- "v": "版本",
- "id": 请求标识,
- "sn": "设备标识"
- "pid": 信令标识,
- },
- "code": "响应编码",
- "message": "响应描述",
- "body": {
- // 信令主体
- }
-}
-```
-
-### 终端
-
-#### 授权信息(6000)
-
-```
-```
-
-### 路由
-
-### 传输
diff --git a/taoyao-signal-server/taoyao-media/pom.xml b/taoyao-signal-server/taoyao-media/pom.xml
deleted file mode 100644
index f9b0c66..0000000
--- a/taoyao-signal-server/taoyao-media/pom.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
- 4.0.0
-
-
- com.acgist
- taoyao
- 1.0.0
-
-
- taoyao-media
- jar
-
- taoyao-media
- 媒体:录制、音频(降噪、混音、变声)、视频(水印、美颜、AI识别)
-
-
-
- com.acgist
- taoyao-signal
-
-
-
-
\ No newline at end of file
diff --git a/taoyao-signal-server/taoyao-node/pom.xml b/taoyao-signal-server/taoyao-node/pom.xml
index c064f1c..d15f648 100644
--- a/taoyao-signal-server/taoyao-node/pom.xml
+++ b/taoyao-signal-server/taoyao-node/pom.xml
@@ -17,6 +17,10 @@
集群服务:集群服务
+
+ com.acgist
+ taoyao-signal
+
\ No newline at end of file
diff --git a/taoyao-signal-server/taoyao-node/src/main/java/com/acgist/taoyao/node/config/NodeAutoConfiguration.java b/taoyao-signal-server/taoyao-node/src/main/java/com/acgist/taoyao/node/config/NodeAutoConfiguration.java
index ec87d00..fdcab9f 100644
--- a/taoyao-signal-server/taoyao-node/src/main/java/com/acgist/taoyao/node/config/NodeAutoConfiguration.java
+++ b/taoyao-signal-server/taoyao-node/src/main/java/com/acgist/taoyao/node/config/NodeAutoConfiguration.java
@@ -1,8 +1,12 @@
package com.acgist.taoyao.node.config;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
+import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
+import com.acgist.taoyao.node.listener.platform.ShutdownListener;
+
/**
* 集群自动配置
*
@@ -12,34 +16,11 @@ import org.springframework.context.annotation.Configuration;
@ConditionalOnProperty(prefix = "taoyao.node", name = "enabled", havingValue = "true", matchIfMissing = false)
public class NodeAutoConfiguration {
-// @Bean
-// @ConditionalOnMissingBean
-// public MediaPublishListener mediaPublishListener() {
-// return new MediaPublishListener();
-// }
-//
-// @Bean
-// @ConditionalOnMissingBean
-// public MediaSubscribeListener mediaSubscribeListener() {
-// return new MediaSubscribeListener();
-// }
-//
-// @Bean
-// @ConditionalOnMissingBean
-// public MediaOfferListener mediaOfferListener() {
-// return new MediaOfferListener();
-// }
-//
-// @Bean
-// @ConditionalOnMissingBean
-// public MediaAnswerListener mediaAnswerListener() {
-// return new MediaAnswerListener();
-// }
-//
-// @Bean
-// @ConditionalOnMissingBean
-// public MediaCandidateListener mediaCandidateListener() {
-// return new MediaCandidateListener();
-// }
+ @Bean
+ @ConditionalOnMissingBean
+ public ShutdownListener shutdownListener() {
+ return new ShutdownListener();
+ }
+
}
diff --git a/taoyao-signal-server/taoyao-node/src/main/java/com/acgist/taoyao/node/listener/platform/ShutdownListener.java b/taoyao-signal-server/taoyao-node/src/main/java/com/acgist/taoyao/node/listener/platform/ShutdownListener.java
new file mode 100644
index 0000000..83802a9
--- /dev/null
+++ b/taoyao-signal-server/taoyao-node/src/main/java/com/acgist/taoyao/node/listener/platform/ShutdownListener.java
@@ -0,0 +1,18 @@
+package com.acgist.taoyao.node.listener.platform;
+
+import com.acgist.taoyao.signal.event.platform.ShutdownEvent;
+import com.acgist.taoyao.signal.listener.ApplicationListenerAdapter;
+
+/**
+ * 关闭服务监听
+ *
+ * @author acgist
+ */
+public class ShutdownListener extends ApplicationListenerAdapter {
+
+ @Override
+ public void onApplicationEvent(ShutdownEvent event) {
+ // TODO:关闭
+ }
+
+}
diff --git a/taoyao-signal-server/taoyao-server/pom.xml b/taoyao-signal-server/taoyao-server/pom.xml
index a11490a..6e3605b 100644
--- a/taoyao-signal-server/taoyao-server/pom.xml
+++ b/taoyao-signal-server/taoyao-server/pom.xml
@@ -24,7 +24,7 @@
com.acgist
- taoyao-media
+ taoyao-signal
diff --git a/taoyao-signal-server/taoyao-signal/README.md b/taoyao-signal-server/taoyao-signal/README.md
index f68fd2b..9bb9cc1 100644
--- a/taoyao-signal-server/taoyao-signal/README.md
+++ b/taoyao-signal-server/taoyao-signal/README.md
@@ -379,6 +379,18 @@ Moon模式有效
配置订阅媒体:码率、帧率、分辨率等等
+### 终端
+
+#### 授权信息(6000)
+
+```
+```
+
+### 路由
+
+### 传输
+
+
## 测试
```
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/listener/MediaAnswerListener.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/listener/MediaAnswerListener.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/listener/MediaAnswerListener.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/listener/MediaAnswerListener.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/listener/MediaCandidateListener.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/listener/MediaCandidateListener.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/listener/MediaCandidateListener.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/listener/MediaCandidateListener.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/listener/MediaOfferListener.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/listener/MediaOfferListener.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/listener/MediaOfferListener.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/listener/MediaOfferListener.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/listener/MediaPublishListener.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/listener/MediaPublishListener.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/listener/MediaPublishListener.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/listener/MediaPublishListener.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/listener/MediaSubscribeListener.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/listener/MediaSubscribeListener.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/listener/MediaSubscribeListener.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/listener/MediaSubscribeListener.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/meeting/Meeting.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/meeting/Meeting.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/meeting/Meeting.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/meeting/Meeting.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/meeting/MeetingListenerAdapter.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/meeting/MeetingListenerAdapter.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/meeting/MeetingListenerAdapter.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/meeting/MeetingListenerAdapter.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/meeting/MeetingManager.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/meeting/MeetingManager.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/meeting/MeetingManager.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/meeting/MeetingManager.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/meeting/controller/MeetingController.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/meeting/controller/MeetingController.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/meeting/controller/MeetingController.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/meeting/controller/MeetingController.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/meeting/listener/MeetingCreateListener.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/meeting/listener/MeetingCreateListener.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/meeting/listener/MeetingCreateListener.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/meeting/listener/MeetingCreateListener.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/meeting/listener/MeetingEnterListener.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/meeting/listener/MeetingEnterListener.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/media/meeting/listener/MeetingEnterListener.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/media/meeting/listener/MeetingEnterListener.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/MediasoupClient.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/MediasoupClient.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/MediasoupClient.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/MediasoupClient.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/client/ClientStream.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/client/ClientStream.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/client/ClientStream.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/client/ClientStream.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/listener/Listener.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/listener/Listener.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/listener/Listener.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/listener/Listener.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/ProtocolMediasoupAdapter.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/ProtocolMediasoupAdapter.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/ProtocolMediasoupAdapter.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/ProtocolMediasoupAdapter.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/client/AuthorizeProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/client/AuthorizeProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/client/AuthorizeProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/client/AuthorizeProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ApplyNetworkThrottleProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ApplyNetworkThrottleProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ApplyNetworkThrottleProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ApplyNetworkThrottleProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ChangeDisplayNameProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ChangeDisplayNameProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ChangeDisplayNameProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ChangeDisplayNameProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/CloseProducerProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/CloseProducerProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/CloseProducerProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/CloseProducerProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ConnectWebRtcTransportProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ConnectWebRtcTransportProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ConnectWebRtcTransportProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ConnectWebRtcTransportProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/CreateWebRtcTransportProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/CreateWebRtcTransportProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/CreateWebRtcTransportProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/CreateWebRtcTransportProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetConsumerStatsProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetConsumerStatsProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetConsumerStatsProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetConsumerStatsProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetDataConsumerStatsProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetDataConsumerStatsProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetDataConsumerStatsProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetDataConsumerStatsProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetDataProducerStatsProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetDataProducerStatsProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetDataProducerStatsProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetDataProducerStatsProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetProducerStatsProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetProducerStatsProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetProducerStatsProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetProducerStatsProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetTransportStatsProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetTransportStatsProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetTransportStatsProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/GetTransportStatsProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/NewPeerProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/NewPeerProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/NewPeerProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/NewPeerProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/PauseConsumerProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/PauseConsumerProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/PauseConsumerProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/PauseConsumerProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/PauseProducerProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/PauseProducerProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/PauseProducerProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/PauseProducerProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ProduceDataProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ProduceDataProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ProduceDataProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ProduceDataProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ProduceProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ProduceProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ProduceProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ProduceProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ProducerScoreProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ProducerScoreProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ProducerScoreProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ProducerScoreProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/RequestConsumerKeyFrameProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/RequestConsumerKeyFrameProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/RequestConsumerKeyFrameProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/RequestConsumerKeyFrameProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ResetNetworkThrottleProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ResetNetworkThrottleProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ResetNetworkThrottleProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ResetNetworkThrottleProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/RestartIceProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/RestartIceProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/RestartIceProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/RestartIceProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ResumeConsumerProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ResumeConsumerProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ResumeConsumerProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ResumeConsumerProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ResumeProducerProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ResumeProducerProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ResumeProducerProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/ResumeProducerProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/SetConsumerPreferredLayersProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/SetConsumerPreferredLayersProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/SetConsumerPreferredLayersProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/SetConsumerPreferredLayersProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/SetConsumerPriorityProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/SetConsumerPriorityProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/SetConsumerPriorityProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/SetConsumerPriorityProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/VideoorientationchangeProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/VideoorientationchangeProtocol.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/VideoorientationchangeProtocol.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/protocol/media/VideoorientationchangeProtocol.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/router/Router.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/router/Router.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/router/Router.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/router/Router.java
diff --git a/taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/transport/Transport.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/transport/Transport.java
similarity index 100%
rename from taoyao-signal-server/taoyao-media/src/main/java/com/acgist/taoyao/mediasoup/transport/Transport.java
rename to taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/mediasoup/transport/Transport.java
diff --git a/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/signal/event/platform/ShutdownEvent.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/signal/event/platform/ShutdownEvent.java
new file mode 100644
index 0000000..df68fb8
--- /dev/null
+++ b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/signal/event/platform/ShutdownEvent.java
@@ -0,0 +1,27 @@
+package com.acgist.taoyao.signal.event.platform;
+
+import java.util.Map;
+
+import com.acgist.taoyao.boot.model.Message;
+import com.acgist.taoyao.signal.client.ClientSession;
+import com.acgist.taoyao.signal.event.ApplicationEventAdapter;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 关闭服务事件
+ *
+ * @author acgist
+ */
+@Getter
+@Setter
+public class ShutdownEvent extends ApplicationEventAdapter {
+
+ private static final long serialVersionUID = 1L;
+
+ public ShutdownEvent(String sn, Map, ?> body, Message message, ClientSession session) {
+ super(sn, body, message, session);
+ }
+
+}
diff --git a/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/signal/protocol/ProtocolAdapter.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/signal/protocol/ProtocolAdapter.java
index 3565c68..afe3bc7 100644
--- a/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/signal/protocol/ProtocolAdapter.java
+++ b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/signal/protocol/ProtocolAdapter.java
@@ -32,6 +32,11 @@ public abstract class ProtocolAdapter implements Protocol {
* 信令标识
*/
protected final Integer pid;
+ /**
+ * 信令标识
+ * TODO:
+ */
+ protected final String signal = "";
/**
* 信令名称
*/
diff --git a/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/signal/protocol/ProtocolManager.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/signal/protocol/ProtocolManager.java
index 34f4c09..230fdcc 100644
--- a/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/signal/protocol/ProtocolManager.java
+++ b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/signal/protocol/ProtocolManager.java
@@ -1,6 +1,5 @@
package com.acgist.taoyao.signal.protocol;
-import java.net.http.WebSocket;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
@@ -58,7 +57,7 @@ public class ProtocolManager {
if(this.protocolMapping.containsKey(pid)) {
throw MessageCodeException.of("存在重复信令协议:" + pid);
}
- log.info("注册信令协议:{}-{}-{}", pid, name, k);
+ log.info("注册信令协议:{}-{}-{}", pid, String.format("%32s", k), name);
this.protocolMapping.put(pid, v);
});
}
diff --git a/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/signal/protocol/platform/ShutdownProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/signal/protocol/platform/ShutdownProtocol.java
index eb6b429..31a803d 100644
--- a/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/signal/protocol/platform/ShutdownProtocol.java
+++ b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/signal/protocol/platform/ShutdownProtocol.java
@@ -1,10 +1,13 @@
package com.acgist.taoyao.signal.protocol.platform;
+import java.util.Map;
+
import org.springframework.context.ConfigurableApplicationContext;
import com.acgist.taoyao.boot.model.Message;
import com.acgist.taoyao.signal.client.ClientSession;
-import com.acgist.taoyao.signal.protocol.ProtocolAdapter;
+import com.acgist.taoyao.signal.event.platform.ShutdownEvent;
+import com.acgist.taoyao.signal.protocol.ProtocolMapAdapter;
import lombok.extern.slf4j.Slf4j;
@@ -14,7 +17,7 @@ import lombok.extern.slf4j.Slf4j;
* @author acgist
*/
@Slf4j
-public class ShutdownProtocol extends ProtocolAdapter {
+public class ShutdownProtocol extends ProtocolMapAdapter {
public static final Integer PID = 1000;
@@ -23,7 +26,9 @@ public class ShutdownProtocol extends ProtocolAdapter {
}
@Override
- public void execute(String sn, Message message, ClientSession session) {
+ public void execute(String sn, Map, ?> body, Message message, ClientSession session) {
+ // 推送事件
+ this.publishEvent(new ShutdownEvent(sn, body, message, session));
// 全员广播
this.clientSessionManager.broadcast(message);
// 关闭信令服务