-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathextra-demo-command.html
More file actions
363 lines (272 loc) · 22.9 KB
/
extra-demo-command.html
File metadata and controls
363 lines (272 loc) · 22.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>デモのコマンド仕様 | SOCKET-MANAGER Framework For PHP</title>
<meta name="description" content="SOCKET-MANAGERフレームワークデモ環境の通信プロトコル仕様を詳細解説。入室/退室コマンド、メッセージ送受信、プライベートメッセージなど、シーケンス図とデータ構造を完全網羅。" />
<meta content="PHP,ソケット通信,websocket,チャット,サーバー開発,ソケットマネージャー" name="keywords">
<link rel="canonical" href="https://socket-manager.github.io/document/extra-demo-command.html" />
<script async src="https://www.googletagmanager.com/gtag/js?id=G-LF9W695NNW"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-LF9W695NNW');
</script>
<link rel="icon" href="https://socket-manager.github.io/document/favicon.ico" type="image/x-icon" />
<link type="text/css" rel="stylesheet" href="./css/common.css" media="all" />
<script src="./js/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="./js/common.js"></script>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "TechArticle",
"headline": "SOCKET-MANAGER Framework - デモのコマンド仕様",
"description": "SOCKET-MANAGERフレームワークデモ環境の通信プロトコル仕様を詳細解説。入室/退室コマンド、メッセージ送受信、プライベートメッセージなど、シーケンス図とデータ構造を完全網羅。",
"keywords": "PHP, WebSocket, TCP/IP, プロトコル仕様, ソケットマネージャー",
"articleSection": ["Technical Documentation", "Server Development", "PHP Programming"],
"image": "https://socket-manager.github.io/document/img/extra-demo-command/seq-entrance-multi.png",
"author": {
"@type": "Person",
"name": "SOCKET-MANAGER開発チーム"
},
"publisher": {
"@type": "Organization",
"name": "SOCKET-MANAGER",
"logo": {
"@type": "ImageObject",
"url": "https://socket-manager.github.io/document/logo.png",
"width": 355,
"height": 50
}
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://socket-manager.github.io/document/extra-demo-command.html"
},
"url": "https://socket-manager.github.io/document/extra-demo-command.html",
"breadcrumb": {
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1,
"name": "Framework Top",
"item": "https://socket-manager.github.io/document/"
},{
"@type": "ListItem",
"position": 2,
"name": "デモのコマンド仕様",
"item": "https://socket-manager.github.io/document/extra-demo-command.html"
}]
},
"isPartOf": {
"@type": "WebSite",
"name": "フレームワークのご紹介",
"url": "https://socket-manager.github.io/document/"
}
}
</script>
</head>
<body>
<div class="layout">
<div class="menu" role="navigation" aria-label="ページメニュー">
<h2 class="menu-title">SOCKET-MANAGER</h2>
<h4 class="menu-reference menu-page-title-bottom"><a href="./reference/" target="_blank">>> Reference</a></h4>
<h2 class="menu-label">MAIN-MENU</h2>
<div class="menu-text">
<h3 class="menu-page-title-link"><a href="./">▶フレームワークのご紹介</a></h3>
<h3 class="menu-page-title-link"><a href="./event-handler.html">▶イベントハンドラについて</a></h3>
</div>
<h3 class="menu-label-sub">IMPLEMENT</h3>
<div class="menu-text">
<h3 class="menu-page-title-link"><a href="./init-class.html">▶初期化クラス</a></h3>
<h3 class="menu-page-title-link"><a href="./unit-parameter.html">▶UNITパラメータクラス</a></h3>
<h3 class="menu-page-title-link"><a href="./protocol-unit.html">▶プロトコルUNITクラス</a></h3>
<h3 class="menu-page-title-link"><a href="./command-unit.html">▶コマンドUNITクラス</a></h3>
<h3 class="menu-page-title-link"><a href="./main.html">▶メイン処理クラス</a></h3>
<h3 class="menu-page-title-link"><a href="./setting.html">▶設定ファイル</a></h3>
<h3 class="menu-page-title-link"><a href="./message.html">▶メッセージファイル</a></h3>
</div>
<div class="menu-line"></div>
<div class="menu-text">
<h3 class="menu-page-title-link-for-runtime-manager"><a href="./runtime-manager/" target="_blank">>> ランタイムライブラリ</a></h3>
<h3 class="menu-page-title-link-for-runtime-manager"><a href="./simple-socket/" target="_blank">>> シンプルソケット機能</a></h3>
</div>
<h3 class="menu-label-sub">ADVANCED</h3>
<div class="menu-text">
<h3 class="menu-page-title-link"><a href="./architecture.html">▶アーキテクチャ</a></h3>
<h3 class="menu-page-title-link"><a href="./event.html">▶イベント駆動アーキテクチャ</a></h3>
<h3 class="menu-page-title-link"><a href="./ipc.html">▶IPC(プロセス間通信)</a></h3>
<h3 class="menu-page-title-link"><a href="./multi-server.html">▶マルチサーバーの構成</a></h3>
<h3 class="menu-page-title-link"><a href="./tcp-and-udp.html">▶TCP/UDP通信について</a></h3>
<h3 class="menu-page-title-link"><a href="./laravel.html">▶Laravelと連携する</a></h3>
<h3 class="menu-page-title-link"><a href="./system-setting.html">▶システム設定ファイル</a></h3>
<h3 class="menu-page-title-link"><a href="./custom-command.html">▶カスタムコマンド作成機能</a></h3>
</div>
<h3 class="menu-label-sub">OTHER-PROJECT</h3>
<div class="menu-text">
<h3 class="menu-page-title-link"><a href="./new-project.html">▶新規開発環境</a></h3>
<h3 class="menu-page-title-link"><a href="./websocket.html">▶Websocketサーバー開発環境</a></h3>
<h3 class="menu-page-title-link"><a href="./dev-ops.html">▶フレームワークのDevOps環境</a></h3>
</div>
<div class="menu-line"></div>
<div class="menu-text">
<h3 class="menu-page-title-link-for-minecraft"><a href="./minecraft-contents/" target="_blank">>> マインクラフト専用環境</a></h3>
<h3 class="menu-page-title-link-for-launcher"><a href="./launcher/" target="_blank">>> GUI & CLI ランチャー</a></h3>
<h3 class="menu-page-title-link-for-rest-api"><a href="./rest-api/" target="_blank">>> REST-APIサーバー開発環境</a></h3>
</div>
<h2 class="menu-label">EXTRA-MENU</h2>
<div class="menu-text">
<h3 class="menu-page-title-link"><a href="./extra-demo.html">▶デモサーバーの種類</a></h3>
<h3 class="menu-page-title">▼デモのコマンド仕様</h3>
<ul>
<li><a href="./extra-demo-command.html#entrance">入室時のコマンド</a></li>
</ul>
<ul>
<li><a href="./extra-demo-command.html#exit">退室時のコマンド</a></li>
</ul>
<ul>
<li><a href="./extra-demo-command.html#message">メッセージコマンド</a></li>
</ul>
<ul>
<li><a href="./extra-demo-command.html#private">プライベート送信コマンド</a></li>
</ul>
<h3 class="menu-page-title-link"><a href="./extra-demo-setting.html">▶デモの設定ファイル</a></h3>
<h3 class="menu-page-title-link"><a href="./extra-minecraft.html">▶マインクラフトの通信仕様</a></h3>
<h3 class="menu-page-title-link"><a href="./extra-close-frame.html">▶切断フレームの検証</a></h3>
</div>
<h2 class="menu-label">PHP-TECHNIQUE</h2>
<div class="menu-text">
<h3 class="menu-page-title-link"><a href="./php-pass-by-reference.html">▶参照渡し</a></h3>
<h3 class="menu-page-title-link"><a href="./php-phpdoc.html">▶PHPDocのフォーマット</a></h3>
</div>
<div class="menu-dummy-for-framework"></div>
</div>
<div class="main" role="main">
<h1>【デモのコマンド仕様】</h1>
<a id="entrance"></a>
<h2 class="subtitle">入室時のコマンド</h2>
<div class="text-block">
<br />
<h3 class="underline">コマンドシーケンス(シングルサーバーの場合)</h3>
<div class="img-block">
<a href="./img/extra-demo-command/seq-entrance-single.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/seq-entrance-single.png" fetchpriority="high" loading="eager" alt="シングルサーバーでの入室処理シーケンス図 - SOCKET-MANAGER Framework" /></a>
</div>
<h3 class="underline">コマンドシーケンス(マルチサーバーの場合)</h3>
<div class="img-block">
<a href="./img/extra-demo-command/seq-entrance-multi.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/seq-entrance-multi.png" loading="eager" alt="マルチサーバーでの入室処理シーケンス図 - SOCKET-MANAGER Framework" /></a>
</div>
<h3 class="underline">コマンドデータ</h3>
<div class="img-block">
<a href="./img/extra-demo-command/dat-entrance-req.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-entrance-req.png" loading="lazy" alt="入室要求の通信データ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
<div class="img-block">
<a href="./img/extra-demo-command/dat-entrance-res.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-entrance-res.png" loading="lazy" alt="入室通知(配信)の通信データ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
<div class="img-block">
<a href="./img/extra-demo-command/dat-entrance-opt.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-entrance-opt.png" loading="lazy" alt="入室通知(配信)のオプションデータ一覧 - SOCKET-MANAGER Framework" /></a>
</div>
<div class="img-block">
<a href="./img/extra-demo-command/dat-usersearch-multi-req.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-usersearch-multi-req.png" loading="lazy" alt="グローバル共有によるWebsocketサーバーからマルチサーバー側へのユーザー検索送信要求を指示するデータ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
<div class="img-block">
<a href="./img/extra-demo-command/dat-usersearch-req.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-usersearch-req.png" loading="lazy" alt="ユーザー検索送信要求(サーバー間通信用)の通信データ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
<div class="img-block">
<a href="./img/extra-demo-command/dat-usersearch-result-res.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-usersearch-result-res.png" loading="lazy" alt="ユーザー検索送信結果(サーバー間通信用)の通信データ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
<div class="img-block">
<a href="./img/extra-demo-command/dat-usersearch-multi-res.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-usersearch-multi-res.png" loading="lazy" alt="グローバル共有によるマルチサーバーからWebsocketサーバー側へのユーザー検索送信結果のデータ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
</div><br />
<a id="exit"></a>
<h2 class="subtitle">退室時のコマンド</h2>
<div class="text-block">
<br />
<h3 class="underline">コマンドシーケンス(exitコマンドの場合)</h3>
<div class="img-block">
<a href="./img/extra-demo-command/seq-exit.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/seq-exit.png" loading="lazy" alt="退室処理(サーバーから切断フレームを投げる場合)シーケンス図 - SOCKET-MANAGER Framework" /></a>
</div>
<h3 class="underline">コマンドシーケンス(closeコマンドの場合)</h3>
<div class="img-block">
<a href="./img/extra-demo-command/seq-close.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/seq-close.png" loading="lazy" alt="退室処理(クライアントから切断フレームを投げる場合)シーケンス図 - SOCKET-MANAGER Framework" /></a>
</div>
<div class="img-block">
<a href="./img/extra-demo-command/seq-shutdown.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/seq-shutdown.png" loading="lazy" alt="退室処理(サーバーからの強制切断の場合)シーケンス図 - SOCKET-MANAGER Framework" /></a>
</div>
<h3 class="underline">コマンドデータ</h3>
<div class="img-block">
<a href="./img/extra-demo-command/dat-exit-req.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-exit-req.png" loading="lazy" alt="退室要求の通信データ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
<div class="img-block">
<a href="./img/extra-demo-command/dat-exit-all.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-exit-all.png" loading="lazy" alt="退室通知(配信)の通信データ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
<div class="img-block">
<a href="./img/extra-demo-command/dat-close-frame10.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-close-frame10.png" loading="lazy" alt="サーバーからの切断フレームの通信データ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
<div class="img-block">
<a href="./img/extra-demo-command/dat-close-frame3010-req.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-close-frame3010-req.png" loading="lazy" alt="クライアントからの切断フレーム(瞬停時)の通信データ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
<div class="img-block">
<a href="./img/extra-demo-command/dat-close-frame3010-res.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-close-frame3010-res.png" loading="lazy" alt="サーバーからの返信切断フレームの通信データ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
<div class="img-block">
<a href="./img/extra-demo-command/dat-close-all.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-close-all.png" loading="lazy" alt="クライアントからの切断フレーム(瞬停時)受信時の他者への通知(配信)用通信データ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
</div><br />
<a id="message"></a>
<h2 class="subtitle">メッセージコマンド</h2>
<div class="text-block">
<br />
<h3 class="underline">コマンドシーケンス</h3>
<div class="img-block">
<a href="./img/extra-demo-command/seq-message.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/seq-message.png" loading="lazy" alt="メッセージ処理シーケンス図 - SOCKET-MANAGER Framework" /></a>
</div>
<h3 class="underline">コマンドデータ</h3>
<div class="img-block">
<a href="./img/extra-demo-command/dat-message-req.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-message-req.png" loading="lazy" alt="メッセージ送信の通信データ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
<div class="img-block">
<a href="./img/extra-demo-command/dat-message-all.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-message-all.png" loading="lazy" alt="メッセージ通知(配信)の通信データ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
</div><br />
<a id="private"></a>
<h2 class="subtitle">プライベート送信コマンド</h2>
<div class="text-block">
<br />
<h3 class="underline">コマンドシーケンス(シングルサーバーの場合)</h3>
<div class="img-block">
<a href="./img/extra-demo-command/seq-private-single.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/seq-private-single.png" loading="lazy" alt="シングルサーバーでのプライベートメッセージ処理シーケンス図 - SOCKET-MANAGER Framework" /></a>
</div><br />
<h3 class="underline">コマンドシーケンス(マルチサーバーの場合)</h3>
<div class="img-block">
<a href="./img/extra-demo-command/seq-private-multi.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/seq-private-multi.png" loading="lazy" alt="マルチサーバーでのプライベートメッセージ処理シーケンス図 - SOCKET-MANAGER Framework" /></a>
</div><br />
<h3 class="underline">コマンドデータ</h3>
<div class="img-block">
<a href="./img/extra-demo-command/dat-private-req.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-private-req.png" loading="lazy" alt="プライベートメッセージ送信の通信データ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
<div class="img-block">
<a href="./img/extra-demo-command/dat-private-multi-req.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-private-multi-req.png" loading="lazy" alt="グローバル共有によるWebsocketサーバーからマルチサーバー側へのプライベートメッセージ送信要求を指示するデータ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
<div class="img-block">
<a href="./img/extra-demo-command/dat-private-search-req.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-private-search-req.png" loading="lazy" alt="プライベートメッセージ送信要求(サーバー間通信用)の通信データ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
<div class="img-block">
<a href="./img/extra-demo-command/dat-private-result-res.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-private-result-res.png" loading="lazy" alt="プライベートメッセージ送信結果(サーバー間通信用)の通信データ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
<div class="img-block">
<a href="./img/extra-demo-command/dat-private-multi-res.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-private-multi-res.png" loading="lazy" alt="グローバル共有によるマルチサーバーからWebsocketサーバー側へのプライベートメッセージ送信結果のデータ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
<div class="img-block">
<a href="./img/extra-demo-command/dat-private-res.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-private-res.png" loading="lazy" alt="プライベートメッセージの送信元への結果通知の通信データ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
<div class="img-block">
<a href="./img/extra-demo-command/dat-private-dst.png" target="_blank"><img class="img-zoomout" src="./img/extra-demo-command/dat-private-dst.png" loading="lazy" alt="プライベートメッセージの送信先への配信の通信データ仕様 - SOCKET-MANAGER Framework" /></a>
</div>
</div><br />
</div>
</div>
</body>
</html>