blob: 6badc34806a7ed0e652fc34a317777286403108a (
plain) (
blame)
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
|
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="author" content="Hsiang Nianian">
<link rel="canonical" href="https://echo.hydroroll.team/Term/">
<link rel="shortcut icon" href="../img/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" />
<title>Term - Echo Standard</title>
<link href="../css/bootstrap-3.3.7.min.css" rel="stylesheet">
<link href="../css/font-awesome-4.7.0.css" rel="stylesheet">
<link href="../css/base.css" rel="stylesheet">
<link rel="stylesheet" href="../css/highlight.css">
<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
<![endif]-->
<script src="../js/jquery-3.2.1.min.js"></script>
<script src="../js/bootstrap-3.3.7.min.js"></script>
<script src="../js/highlight.pack.js"></script>
<base target="_top">
<script>
var base_url = '..';
var is_top_frame = false;
var pageToc = [
{title: "ES 1.0", url: "#_top", children: [
{title: "Term", url: "#term" },
]},
];
</script>
<script src="../js/base.js"></script>
<script src="../search/main.js"></script>
</head>
<body>
<script>
if (is_top_frame) { $('body').addClass('wm-top-page'); }
</script>
<div class="container-fluid wm-page-content">
<a name="_top"></a>
<div class="row wm-article-nav-buttons" role="navigation" aria-label="navigation">
<div class="wm-article-nav pull-right">
<a href="../Event/" class="btn btn-xs btn-default pull-right">
Next
<i class="fa fa-chevron-right" aria-hidden="true"></i>
</a>
<a href="../Event/" class="btn btn-xs btn-link">
Event
</a>
</div>
<div class="wm-article-nav">
<a href=".." class="btn btn-xs btn-default pull-left">
<i class="fa fa-chevron-left" aria-hidden="true"></i>
Previous</a><a href=".." class="btn btn-xs btn-link">
Home
</a>
</div>
</div>
<h2 id="es_10">ES 1.0<a class="headerlink" href="#es_10" title="Permanent link">¶</a></h2>
<h3 id="term">Term<a class="headerlink" href="#term" title="Permanent link">¶</a></h3>
<blockquote>
<p>[!IMPORTANT]</p>
<p>Echo 标准只作用于多人聊天窗口(Window)。</p>
</blockquote>
<h4 id="window">Window<a class="headerlink" href="#window" title="Permanent link">¶</a></h4>
<p>窗口(Window),一个能呼出水系骰子并能与之交互且能提供消息显示与聊天输入功能的窗体被称为聊天窗口,简称窗口。</p>
<h4 id="world">World<a class="headerlink" href="#world" title="Permanent link">¶</a></h4>
<p>广义上,一个包含多个(至少两个)用户的聊天窗口即为一个 World(世界)。你可以将此类比为 QQ 平台的群聊(Group)或者 KOOK/Discord 平台的频道(Channel)——但是在(水系)这里,它们都统一被称为 World。</p>
<blockquote>
<p>[!WARNING]</p>
<p>单人群聊不能算作一个世界,即使此群聊有一个骰子且一个用户,也不能成为一个世界,只有用户量 >= 2 且能够与水系骰子交互时才算是一个世界。</p>
</blockquote>
<h4 id="sub-worldmain-world">Sub-world/Main-world<a class="headerlink" href="#sub-worldmain-world" title="Permanent link">¶</a></h4>
<p>狭义上讲,一个 World 应该在一段时间内只保持(也必须保持)一个规则包的绑定,因此类似于秘密团那样临时创建的分群或分频道并不能说是一个标准的 World,这类窗口我们称为 Sub-world(子世界),因此当涉及到 Sub-world 时,我们不能称主群/主频道 为World,而至少应该说是 Main-world(主世界)。</p>
<h4 id="node">Node<a class="headerlink" href="#node" title="Permanent link">¶</a></h4>
<p>Node(节点) 描述 ES 的实现端,这是它们的统一称谓。同时,通过 ES 所规定的 Events 传递的方向,可以扩展称为 1号节点(Node-1)、2号节点(Node-2) 甚至 3号节点(Node-3)...但是一般来说,两个节点已经足够使用了,Events 的传递方向总是由数字小的节点传递到数字大的节点,若 Events 能在节点间的传递过程中完成给定的任务,则这样的节点传递过程被成为一套完整的 pipeline。</p>
<h4 id="pipeline">Pipeline<a class="headerlink" href="#pipeline" title="Permanent link">¶</a></h4>
<p>管线(Pipeline),或称“流水线”。这个概念可能比较抽象,因此在这里给出一个生动的形容——Pipeline,你土味一点,可翻译成“一条龙服务”;专业一点,叫它“综合解决方案”。</p>
<p>总之,一个 pipeline,一定是完整的,但不一定是闭合的。</p>
<h4 id="event">Event<a class="headerlink" href="#event" title="Permanent link">¶</a></h4>
<p>Event(事件)只存在于节点之间。事件划分为 Specific-events(具体事件,例如消息事件、世界人数增减事件等) 与 Abstract-events(抽象事件,例如工作流事件、回调事件等)。具体可翻阅事件一览表 <a href="../Event/">Events.md</a> 查看所有 ES 1.0 所支持的事件。</p>
<h4 id="element">Element<a class="headerlink" href="#element" title="Permanent link">¶</a></h4>
<p>Element(元素)尤其指代包含在 Events 中的各类可以被抽象出来的概念,比如文本(Text)、图片(Image)、富文本(RichText)、音频(Audio)、视频(Vedio)等。具体可翻阅元素列表 <a href="../Element/">Elements.md</a> 查看所有 ES 1.0 定义的元素。</p>
<h4 id="api">API<a class="headerlink" href="#api" title="Permanent link">¶</a></h4>
<p>是指节点(尤其是 Node-2)需要实现的一些网络接口规范。具体参阅 ES 1.0 API列表 <a href="../API/">API.md</a>。</p>
<h4 id="without_bells_and_whistles">Without bells and whistles<a class="headerlink" href="#without_bells_and_whistles" title="Permanent link">¶</a></h4>
<p>没有花里胡哨的方法(不添加不必要,冗余的东西)。</p>
<h4 id="off-the-shelf">Off-the-shelf<a class="headerlink" href="#off-the-shelf" title="Permanent link">¶</a></h4>
<p>已有的,现成的。</p>
<h4 id="end_to_end">end to end<a class="headerlink" href="#end_to_end" title="Permanent link">¶</a></h4>
<p>端到端(e2e),给定一个输入,再给出一个输出,不管其中的过程多么复杂,但只要给了一个输入,那么对应一个输出。</p>
<h4 id="priority">Priority<a class="headerlink" href="#priority" title="Permanent link">¶</a></h4>
<p>优先级(priority),作用在 Events 中,尤其是 <a href="">Workflow Events</a>。</p>
<br>
<div class="row wm-article-nav-buttons" role="navigation" aria-label="navigation">
<div class="wm-article-nav pull-right">
<a href="../Event/" class="btn btn-xs btn-default pull-right">
Next
<i class="fa fa-chevron-right" aria-hidden="true"></i>
</a>
<a href="../Event/" class="btn btn-xs btn-link">
Event
</a>
</div>
<div class="wm-article-nav">
<a href=".." class="btn btn-xs btn-default pull-left">
<i class="fa fa-chevron-left" aria-hidden="true"></i>
Previous</a><a href=".." class="btn btn-xs btn-link">
Home
</a>
</div>
</div>
<br>
</div>
<footer class="col-md-12 wm-page-content">
<p>
<a href="https://github.com/HydroRoll-Team/echo/blob/main/docs/Term.md"><i class="fa fa-github"></i>
Edit on GitHub</a>
</p><p>2023 HydroRoll-Team</p>
<p>Documentation built with <a href="http://www.mkdocs.org/">MkDocs</a> using <a href="https://github.com/HydroRoll-Team/echo">Windmill Dark</a> theme by Hsiang Nianian (noraj).</p>
</footer>
</body>
</html>
|