@zhin.js/adapter-satori 1.0.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/lib/adapter.d.ts +6 -5
- package/lib/adapter.d.ts.map +1 -1
- package/lib/adapter.js +5 -4
- package/lib/adapter.js.map +1 -1
- package/lib/{bot-webhook.d.ts → endpoint-webhook.d.ts} +3 -3
- package/lib/endpoint-webhook.d.ts.map +1 -0
- package/lib/{bot-webhook.js → endpoint-webhook.js} +4 -4
- package/lib/endpoint-webhook.js.map +1 -0
- package/lib/{bot-ws.d.ts → endpoint-ws.d.ts} +3 -3
- package/lib/endpoint-ws.d.ts.map +1 -0
- package/lib/{bot-ws.js → endpoint-ws.js} +7 -7
- package/lib/endpoint-ws.js.map +1 -0
- package/lib/index.d.ts +2 -2
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +2 -2
- package/lib/index.js.map +1 -1
- package/lib/types.d.ts +1 -1
- package/lib/types.d.ts.map +1 -1
- package/lib/utils.d.ts +2 -2
- package/lib/utils.d.ts.map +1 -1
- package/lib/utils.js +2 -2
- package/lib/utils.js.map +1 -1
- package/package.json +8 -7
- package/src/adapter.ts +9 -7
- package/src/{bot-webhook.ts → endpoint-webhook.ts} +4 -4
- package/src/{bot-ws.ts → endpoint-ws.ts} +8 -8
- package/src/index.ts +2 -2
- package/src/types.ts +1 -1
- package/src/utils.ts +3 -3
- package/lib/bot-webhook.d.ts.map +0 -1
- package/lib/bot-webhook.js.map +0 -1
- package/lib/bot-ws.d.ts.map +0 -1
- package/lib/bot-ws.js.map +0 -1
package/README.md
CHANGED
|
@@ -27,7 +27,7 @@ pnpm add @zhin.js/host-router
|
|
|
27
27
|
|
|
28
28
|
## 配置
|
|
29
29
|
|
|
30
|
-
所有
|
|
30
|
+
所有 Endpoint 使用 **同一 context:`satori`**,通过 **`connection`** 区分连接方式。
|
|
31
31
|
|
|
32
32
|
### WebSocket 正向
|
|
33
33
|
|
|
@@ -35,7 +35,7 @@ pnpm add @zhin.js/host-router
|
|
|
35
35
|
plugins:
|
|
36
36
|
- "@zhin.js/adapter-satori"
|
|
37
37
|
|
|
38
|
-
|
|
38
|
+
endpoints:
|
|
39
39
|
- context: satori
|
|
40
40
|
connection: ws
|
|
41
41
|
name: satori-bot
|
|
@@ -51,7 +51,7 @@ plugins:
|
|
|
51
51
|
- "@zhin.js/host-router"
|
|
52
52
|
- "@zhin.js/adapter-satori"
|
|
53
53
|
|
|
54
|
-
|
|
54
|
+
endpoints:
|
|
55
55
|
- context: satori
|
|
56
56
|
connection: webhook
|
|
57
57
|
name: satori-webhook-bot
|
package/lib/adapter.d.ts
CHANGED
|
@@ -3,14 +3,15 @@
|
|
|
3
3
|
* 协议文档:https://satori.chat/zh-CN/introduction.html
|
|
4
4
|
*/
|
|
5
5
|
import { Adapter, Plugin } from 'zhin.js';
|
|
6
|
-
import { SatoriWsClient } from './
|
|
7
|
-
import {
|
|
8
|
-
import type {
|
|
9
|
-
export type SatoriBot = SatoriWsClient |
|
|
6
|
+
import { SatoriWsClient } from './endpoint-ws.js';
|
|
7
|
+
import { SatoriWebhookEndpoint } from './endpoint-webhook.js';
|
|
8
|
+
import type { SatoriEndpointConfig } from './types.js';
|
|
9
|
+
export type SatoriBot = SatoriWsClient | SatoriWebhookEndpoint;
|
|
10
10
|
export declare class SatoriAdapter extends Adapter<SatoriBot> {
|
|
11
11
|
#private;
|
|
12
|
+
static readonly capabilities: readonly ["inbound", "outbound"];
|
|
12
13
|
constructor(plugin: Plugin);
|
|
13
|
-
|
|
14
|
+
createEndpoint(config: SatoriEndpointConfig): SatoriBot;
|
|
14
15
|
start(): Promise<void>;
|
|
15
16
|
}
|
|
16
17
|
//# sourceMappingURL=adapter.d.ts.map
|
package/lib/adapter.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAiB,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEzD,OAAO,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAiB,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEzD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EACV,oBAAoB,EAGrB,MAAM,YAAY,CAAC;AAGpB,MAAM,MAAM,SAAS,GAAG,cAAc,GAAG,qBAAqB,CAAC;AAE/D,qBAAa,aAAc,SAAQ,OAAO,CAAC,SAAS,CAAC;;IACnD,gBAAyB,YAAY,mCAAoC;gBAI7D,MAAM,EAAE,MAAM;IAI1B,cAAc,CAAC,MAAM,EAAE,oBAAoB,GAAG,SAAS;IAcjD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAO7B"}
|
package/lib/adapter.js
CHANGED
|
@@ -3,14 +3,15 @@
|
|
|
3
3
|
* 协议文档:https://satori.chat/zh-CN/introduction.html
|
|
4
4
|
*/
|
|
5
5
|
import { Adapter } from 'zhin.js';
|
|
6
|
-
import { SatoriWsClient } from './
|
|
7
|
-
import {
|
|
6
|
+
import { SatoriWsClient } from './endpoint-ws.js';
|
|
7
|
+
import { SatoriWebhookEndpoint } from './endpoint-webhook.js';
|
|
8
8
|
export class SatoriAdapter extends Adapter {
|
|
9
|
+
static capabilities = ['inbound', 'outbound'];
|
|
9
10
|
#router;
|
|
10
11
|
constructor(plugin) {
|
|
11
12
|
super(plugin, 'satori', []);
|
|
12
13
|
}
|
|
13
|
-
|
|
14
|
+
createEndpoint(config) {
|
|
14
15
|
switch (config.connection) {
|
|
15
16
|
case 'ws':
|
|
16
17
|
return new SatoriWsClient(this, config);
|
|
@@ -18,7 +19,7 @@ export class SatoriAdapter extends Adapter {
|
|
|
18
19
|
if (!this.#router) {
|
|
19
20
|
throw new Error('Satori connection: webhook 需要 router,请安装并在配置中启用 @zhin.js/host-router');
|
|
20
21
|
}
|
|
21
|
-
return new
|
|
22
|
+
return new SatoriWebhookEndpoint(this, this.#router, config);
|
|
22
23
|
default:
|
|
23
24
|
throw new Error(`Unknown Satori connection: ${config.connection}`);
|
|
24
25
|
}
|
package/lib/adapter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAiB,OAAO,EAAU,MAAM,SAAS,CAAC;AAEzD,OAAO,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAiB,OAAO,EAAU,MAAM,SAAS,CAAC;AAEzD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAU9D,MAAM,OAAO,aAAc,SAAQ,OAAkB;IACnD,MAAM,CAAmB,YAAY,GAAG,CAAC,SAAS,EAAE,UAAU,CAAU,CAAC;IAEzE,OAAO,CAAU;IAEjB,YAAY,MAAc;QACxB,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED,cAAc,CAAC,MAA4B;QACzC,QAAQ,MAAM,CAAC,UAAU,EAAE,CAAC;YAC1B,KAAK,IAAI;gBACP,OAAO,IAAI,cAAc,CAAC,IAAI,EAAE,MAAwB,CAAC,CAAC;YAC5D,KAAK,SAAS;gBACZ,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;oBAClB,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;gBAC1F,CAAC;gBACD,OAAO,IAAI,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,MAA6B,CAAC,CAAC;YACtF;gBACE,MAAM,IAAI,KAAK,CAAC,8BAA+B,MAA+B,CAAC,UAAU,EAAE,CAAC,CAAC;QACjG,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,OAAO,GAAI,IAAI,CAAC,MAAM,CAAC,MAA8C,CAAC,QAAQ,CAAC,CAAC;QACpF,IAAI,CAAC,MAAM,CAAC,UAAkE,CAAC,QAAQ,EAAE,CAAC,MAAc,EAAE,EAAE;YAC3G,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACxB,CAAC,CAAC,CAAC;QACH,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC"}
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
* Satori WebHook Bot:应用提供 POST path,SDK 推送 EVENT(Satori-Opcode: 0)
|
|
3
3
|
*/
|
|
4
4
|
import { EventEmitter } from 'events';
|
|
5
|
-
import {
|
|
5
|
+
import { Endpoint, Message, SendOptions } from 'zhin.js';
|
|
6
6
|
import { type Router } from '@zhin.js/host-router/router';
|
|
7
7
|
import type { SatoriWebhookConfig, SatoriEventBody } from './types.js';
|
|
8
8
|
import type { SatoriAdapter } from './adapter.js';
|
|
9
|
-
export declare class
|
|
9
|
+
export declare class SatoriWebhookEndpoint extends EventEmitter implements Endpoint<SatoriWebhookConfig, SatoriEventBody> {
|
|
10
10
|
adapter: SatoriAdapter;
|
|
11
11
|
router: Router;
|
|
12
12
|
$config: SatoriWebhookConfig;
|
|
@@ -24,4 +24,4 @@ export declare class SatoriWebhookBot extends EventEmitter implements Bot<Satori
|
|
|
24
24
|
$sendMessage(options: SendOptions): Promise<string>;
|
|
25
25
|
$recallMessage(id: string): Promise<void>;
|
|
26
26
|
}
|
|
27
|
-
//# sourceMappingURL=
|
|
27
|
+
//# sourceMappingURL=endpoint-webhook.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"endpoint-webhook.d.ts","sourceRoot":"","sources":["../src/endpoint-webhook.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAiB,QAAQ,EAAE,OAAO,EAAW,WAAW,EAAE,MAAM,SAAS,CAAC;AACjF,OAAO,EAAsB,KAAK,MAAM,EAAsB,MAAM,6BAA6B,CAAC;AAElG,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAe,MAAM,YAAY,CAAC;AAEpF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAGlD,qBAAa,qBAAsB,SAAQ,YAAa,YAAW,QAAQ,CAAC,mBAAmB,EAAE,eAAe,CAAC;IAUtG,OAAO,EAAE,aAAa;IACtB,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,mBAAmB;IAXrC,UAAU,EAAE,OAAO,CAAQ;IAC3B,iDAAiD;IACjD,OAAO,CAAC,KAAK,CAAC,CAAc;IAE5B,IAAI,MAAM,6BAET;gBAGQ,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,mBAAmB;IAKrC,IAAI,GAAG,WAEN;IAED,OAAO,CAAC,UAAU;IAMZ,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAezB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAIlC,OAAO,CAAC,WAAW;IAUnB,cAAc,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IA+BzD,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAanD,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAIhD"}
|
|
@@ -7,7 +7,7 @@ import { registerFetchRoute } from '@zhin.js/host-router/router';
|
|
|
7
7
|
import { callSatoriApi } from './api.js';
|
|
8
8
|
import { SatoriOpcode } from './types.js';
|
|
9
9
|
import { formatSatoriMessagePayload, isMessageEvent } from './utils.js';
|
|
10
|
-
export class
|
|
10
|
+
export class SatoriWebhookEndpoint extends EventEmitter {
|
|
11
11
|
adapter;
|
|
12
12
|
router;
|
|
13
13
|
$config;
|
|
@@ -61,7 +61,7 @@ export class SatoriWebhookBot extends EventEmitter {
|
|
|
61
61
|
return Message.from(body, {
|
|
62
62
|
$id: '',
|
|
63
63
|
$adapter: 'satori',
|
|
64
|
-
$
|
|
64
|
+
$endpoint: this.$config.name,
|
|
65
65
|
$channel: { id: '', type: 'private' },
|
|
66
66
|
$sender: { id: '', name: '' },
|
|
67
67
|
$content: [],
|
|
@@ -74,7 +74,7 @@ export class SatoriWebhookBot extends EventEmitter {
|
|
|
74
74
|
const payload = formatSatoriMessagePayload(body, 'satori', this.$config.name, (id) => this.$recallMessage(id), (channel, content, _quote) => this.adapter.sendMessage({
|
|
75
75
|
...channel,
|
|
76
76
|
context: 'satori',
|
|
77
|
-
|
|
77
|
+
endpoint: this.$config.name,
|
|
78
78
|
content: content,
|
|
79
79
|
}));
|
|
80
80
|
return Message.from(body, payload);
|
|
@@ -96,4 +96,4 @@ export class SatoriWebhookBot extends EventEmitter {
|
|
|
96
96
|
await callSatoriApi(this.apiOptions(), 'message', 'delete', { channel_id: channelId, message_id: messageId });
|
|
97
97
|
}
|
|
98
98
|
}
|
|
99
|
-
//# sourceMappingURL=
|
|
99
|
+
//# sourceMappingURL=endpoint-webhook.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"endpoint-webhook.js","sourceRoot":"","sources":["../src/endpoint-webhook.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { EventEmitter } from 'events';
|
|
2
|
-
import {
|
|
2
|
+
import { Endpoint, Message, SendOptions } from 'zhin.js';
|
|
3
3
|
import type { SatoriWsConfig, SatoriEventBody } from './types.js';
|
|
4
4
|
import type { SatoriAdapter } from './adapter.js';
|
|
5
|
-
export declare class SatoriWsClient extends EventEmitter implements
|
|
5
|
+
export declare class SatoriWsClient extends EventEmitter implements Endpoint<SatoriWsConfig, SatoriEventBody> {
|
|
6
6
|
adapter: SatoriAdapter;
|
|
7
7
|
$config: SatoriWsConfig;
|
|
8
8
|
$connected: boolean;
|
|
@@ -27,4 +27,4 @@ export declare class SatoriWsClient extends EventEmitter implements Bot<SatoriWs
|
|
|
27
27
|
$sendMessage(options: SendOptions): Promise<string>;
|
|
28
28
|
$recallMessage(id: string): Promise<void>;
|
|
29
29
|
}
|
|
30
|
-
//# sourceMappingURL=
|
|
30
|
+
//# sourceMappingURL=endpoint-ws.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"endpoint-ws.d.ts","sourceRoot":"","sources":["../src/endpoint-ws.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAiB,QAAQ,EAAE,OAAO,EAAW,WAAW,EAAE,MAAM,SAAS,CAAC;AAEjF,OAAO,KAAK,EAAE,cAAc,EAAgB,eAAe,EAAe,MAAM,YAAY,CAAC;AAE7F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAGlD,qBAAa,cAAe,SAAQ,YAAa,YAAW,QAAQ,CAAC,cAAc,EAAE,eAAe,CAAC;IAahF,OAAO,EAAE,aAAa;IAAS,OAAO,EAAE,cAAc;IAZzE,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,CAAC,CAAY;IACvB,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,gDAAgD;IAChD,OAAO,CAAC,KAAK,CAAC,CAAc;IAC5B,OAAO,CAAC,MAAM,CAAC,CAAS;IAExB,IAAI,MAAM,6BAET;gBAEkB,OAAO,EAAE,aAAa,EAAS,OAAO,EAAE,cAAc;IAKzE,IAAI,GAAG,WAEN;IAED,OAAO,KAAK,KAAK,GAOhB;IAED,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,UAAU;IAKlB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,iBAAiB;IAcnB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IA8DzB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBlC,OAAO,CAAC,WAAW;IAUnB,cAAc,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IA+BzD,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAcnD,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAIhD"}
|
|
@@ -62,7 +62,7 @@ export class SatoriWsClient extends EventEmitter {
|
|
|
62
62
|
this.reconnectTimer = undefined;
|
|
63
63
|
this.$connect().catch((err) => this.logger.warn(formatCompact({
|
|
64
64
|
op: 'reconnect',
|
|
65
|
-
|
|
65
|
+
endpoint: this.$id,
|
|
66
66
|
ok: false,
|
|
67
67
|
error: err instanceof Error ? err.message : String(err),
|
|
68
68
|
})));
|
|
@@ -76,7 +76,7 @@ export class SatoriWsClient extends EventEmitter {
|
|
|
76
76
|
this.ws = new WebSocket(this.wsUrl, { headers });
|
|
77
77
|
this.ws.on('open', () => {
|
|
78
78
|
this.$connected = true;
|
|
79
|
-
this.logger.info(formatCompact({
|
|
79
|
+
this.logger.info(formatCompact({ endpoint: this.$id, mode: 'ws' }));
|
|
80
80
|
this.sendSignal(SatoriOpcode.IDENTIFY, {
|
|
81
81
|
token: this.$config.token,
|
|
82
82
|
sn: this.lastSn,
|
|
@@ -110,7 +110,7 @@ export class SatoriWsClient extends EventEmitter {
|
|
|
110
110
|
const codeHint = code === 1005 ? ' [无状态,多为服务端/代理未发 close 帧即断开]' : code === 1006 ? ' [异常关闭]' : '';
|
|
111
111
|
this.logger.warn(formatCompact({
|
|
112
112
|
op: 'disconnect',
|
|
113
|
-
|
|
113
|
+
endpoint: this.$config.name,
|
|
114
114
|
code,
|
|
115
115
|
error: `${reasonStr || 'closed'}${codeHint}`,
|
|
116
116
|
reconnect_ms: 5000,
|
|
@@ -121,7 +121,7 @@ export class SatoriWsClient extends EventEmitter {
|
|
|
121
121
|
this.ws.on('error', (error) => {
|
|
122
122
|
this.logger.warn(formatCompact({
|
|
123
123
|
op: 'ws_error',
|
|
124
|
-
|
|
124
|
+
endpoint: this.$config.name,
|
|
125
125
|
ok: false,
|
|
126
126
|
error: error instanceof Error ? error.message : String(error),
|
|
127
127
|
}));
|
|
@@ -156,7 +156,7 @@ export class SatoriWsClient extends EventEmitter {
|
|
|
156
156
|
return Message.from(body, {
|
|
157
157
|
$id: '',
|
|
158
158
|
$adapter: 'satori',
|
|
159
|
-
$
|
|
159
|
+
$endpoint: this.$config.name,
|
|
160
160
|
$channel: { id: '', type: 'private' },
|
|
161
161
|
$sender: { id: '', name: '' },
|
|
162
162
|
$content: [],
|
|
@@ -169,7 +169,7 @@ export class SatoriWsClient extends EventEmitter {
|
|
|
169
169
|
const payload = formatSatoriMessagePayload(body, 'satori', this.$config.name, (id) => this.$recallMessage(id), (channel, content, _quote) => this.adapter.sendMessage({
|
|
170
170
|
...channel,
|
|
171
171
|
context: 'satori',
|
|
172
|
-
|
|
172
|
+
endpoint: this.$config.name,
|
|
173
173
|
content: content,
|
|
174
174
|
}));
|
|
175
175
|
return Message.from(body, payload);
|
|
@@ -192,4 +192,4 @@ export class SatoriWsClient extends EventEmitter {
|
|
|
192
192
|
await callSatoriApi(this.apiOptions(), 'message', 'delete', { channel_id: channelId, message_id: messageId });
|
|
193
193
|
}
|
|
194
194
|
}
|
|
195
|
-
//# sourceMappingURL=
|
|
195
|
+
//# sourceMappingURL=endpoint-ws.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"endpoint-ws.js","sourceRoot":"","sources":["../src/endpoint-ws.ts"],"names":[],"mappings":"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"}
|
package/lib/index.d.ts
CHANGED
|
@@ -2,8 +2,8 @@ import { SatoriAdapter } from './adapter.js';
|
|
|
2
2
|
export * from './types.js';
|
|
3
3
|
export { callSatoriApi } from './api.js';
|
|
4
4
|
export * from './utils.js';
|
|
5
|
-
export { SatoriWsClient } from './
|
|
6
|
-
export {
|
|
5
|
+
export { SatoriWsClient } from './endpoint-ws.js';
|
|
6
|
+
export { SatoriWebhookEndpoint } from './endpoint-webhook.js';
|
|
7
7
|
export { SatoriAdapter, type SatoriBot } from './adapter.js';
|
|
8
8
|
declare module 'zhin.js' {
|
|
9
9
|
namespace Plugin {
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAE7D,OAAO,QAAQ,SAAS,CAAC;IACvB,UAAU,MAAM,CAAC;QACf,UAAU,QAAQ;YAChB,MAAM,EAAE,OAAO,sBAAsB,EAAE,MAAM,CAAC;SAC/C;KACF;IACD,UAAU,QAAQ;QAChB,MAAM,EAAE,aAAa,CAAC;KACvB;CACF"}
|
package/lib/index.js
CHANGED
|
@@ -6,8 +6,8 @@ import { SatoriAdapter } from './adapter.js';
|
|
|
6
6
|
export * from './types.js';
|
|
7
7
|
export { callSatoriApi } from './api.js';
|
|
8
8
|
export * from './utils.js';
|
|
9
|
-
export { SatoriWsClient } from './
|
|
10
|
-
export {
|
|
9
|
+
export { SatoriWsClient } from './endpoint-ws.js';
|
|
10
|
+
export { SatoriWebhookEndpoint } from './endpoint-webhook.js';
|
|
11
11
|
export { SatoriAdapter } from './adapter.js';
|
|
12
12
|
const { provide } = usePlugin();
|
|
13
13
|
provide({
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAA6B,MAAM,SAAS,CAAC;AAE/D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAA6B,MAAM,SAAS,CAAC;AAE/D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAkB,MAAM,cAAc,CAAC;AAa7D,MAAM,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,CAAC;AAChC,OAAO,CAAC;IACN,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,+BAA+B;IAC5C,OAAO,EAAE,KAAK,EAAE,CAAS,EAAE,EAAE;QAC3B,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;QACtB,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,OAAsB,EAAE,EAAE;QACxC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;CAC8B,CAAC,CAAC"}
|
package/lib/types.d.ts
CHANGED
|
@@ -20,7 +20,7 @@ export interface SatoriWebhookConfig extends SatoriConfigBase {
|
|
|
20
20
|
connection: 'webhook';
|
|
21
21
|
path: string;
|
|
22
22
|
}
|
|
23
|
-
export type
|
|
23
|
+
export type SatoriEndpointConfig = SatoriWsConfig | SatoriWebhookConfig;
|
|
24
24
|
/** WebSocket/API 信号:op + body */
|
|
25
25
|
export interface SatoriSignal {
|
|
26
26
|
op: number;
|
package/lib/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,2DAA2D;AAC3D,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,QAAQ,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,yEAAyE;IACzE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,uCAAuC;AACvC,MAAM,WAAW,cAAe,SAAQ,gBAAgB;IACtD,UAAU,EAAE,IAAI,CAAC;IACjB,wBAAwB;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,oCAAoC;AACpC,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IAC3D,UAAU,EAAE,SAAS,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,2DAA2D;AAC3D,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,QAAQ,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,yEAAyE;IACzE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,uCAAuC;AACvC,MAAM,WAAW,cAAe,SAAQ,gBAAgB;IACtD,UAAU,EAAE,IAAI,CAAC;IACjB,wBAAwB;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,oCAAoC;AACpC,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IAC3D,UAAU,EAAE,SAAS,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,oBAAoB,GAAG,cAAc,GAAG,mBAAmB,CAAC;AAExE,iCAAiC;AACjC,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,kEAAkE;AAClE,eAAO,MAAM,YAAY;;;;;;;CAOf,CAAC;AAEX,uEAAuE;AACvE,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,KAAK,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,MAAM,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,UAAU,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAChE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,2BAA2B;AAC3B,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,+DAA+D;AAC/D,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,cAAc;AACd,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qDAAqD;AACrD,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,MAAM,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,UAAU,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
|
package/lib/utils.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ import type { SatoriEventBody, SatoriMessage, SatoriChannel } from './types.js';
|
|
|
6
6
|
/** Satori Channel.type: 0=TEXT, 1=DIRECT, 2=CATEGORY, 3=VOICE */
|
|
7
7
|
export declare function isPrivateChannel(channel?: SatoriChannel): boolean;
|
|
8
8
|
/** 将 Satori 事件体转为 zhin Message 的 MessageBase(仅 message-created/updated,供 $formatMessage 使用) */
|
|
9
|
-
export declare function formatSatoriMessagePayload(body: SatoriEventBody, adapterName: 'satori',
|
|
9
|
+
export declare function formatSatoriMessagePayload(body: SatoriEventBody, adapterName: 'satori', endpointName: string, recallFn: (msgId: string) => Promise<void>, replyFn: (channel: {
|
|
10
10
|
id: string;
|
|
11
11
|
type: 'group' | 'private';
|
|
12
12
|
}, content: (string | {
|
|
@@ -15,7 +15,7 @@ export declare function formatSatoriMessagePayload(body: SatoriEventBody, adapte
|
|
|
15
15
|
})[], quote?: boolean | string) => Promise<string>): {
|
|
16
16
|
$id: string;
|
|
17
17
|
$adapter: 'satori';
|
|
18
|
-
$
|
|
18
|
+
$endpoint: string;
|
|
19
19
|
$channel: {
|
|
20
20
|
id: string;
|
|
21
21
|
type: 'group' | 'private';
|
package/lib/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhF,iEAAiE;AACjE,wBAAgB,gBAAgB,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAEjE;AAED,+FAA+F;AAC/F,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,eAAe,EACrB,WAAW,EAAE,QAAQ,EACrB,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhF,iEAAiE;AACjE,wBAAgB,gBAAgB,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAEjE;AAED,+FAA+F;AAC/F,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,eAAe,EACrB,WAAW,EAAE,QAAQ,EACrB,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,EAC1C,OAAO,EAAE,CAAC,OAAO,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,GAAG,SAAS,CAAA;CAAE,EAAE,OAAO,EAAE,CAAC,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,GACjL;IACD,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,GAAG,SAAS,CAAA;KAAE,CAAC;IACpD,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,QAAQ,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC,CAAC;IACjE,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,MAAM,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAC7E,CA4BA;AAED,qDAAqD;AACrD,wBAAgB,cAAc,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI,IAAI,eAAe,GAAG;IAAE,OAAO,EAAE,aAAa,CAAA;CAAE,CAE1G"}
|
package/lib/utils.js
CHANGED
|
@@ -3,7 +3,7 @@ export function isPrivateChannel(channel) {
|
|
|
3
3
|
return channel?.type === 1;
|
|
4
4
|
}
|
|
5
5
|
/** 将 Satori 事件体转为 zhin Message 的 MessageBase(仅 message-created/updated,供 $formatMessage 使用) */
|
|
6
|
-
export function formatSatoriMessagePayload(body, adapterName,
|
|
6
|
+
export function formatSatoriMessagePayload(body, adapterName, endpointName, recallFn, replyFn) {
|
|
7
7
|
const msg = body.message;
|
|
8
8
|
const channel = body.channel ?? msg.channel;
|
|
9
9
|
const user = body.user ?? msg.user ?? msg.member?.user;
|
|
@@ -16,7 +16,7 @@ export function formatSatoriMessagePayload(body, adapterName, botName, recallFn,
|
|
|
16
16
|
return {
|
|
17
17
|
$id: `${channelId}:${msg.id}`,
|
|
18
18
|
$adapter: 'satori',
|
|
19
|
-
$
|
|
19
|
+
$endpoint: endpointName,
|
|
20
20
|
$channel: { id: channelId, type: isPrivate ? 'private' : 'group' },
|
|
21
21
|
$sender: { id: senderId, name: senderName },
|
|
22
22
|
$content: [{ type: 'text', data: { text: raw } }],
|
package/lib/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAOA,iEAAiE;AACjE,MAAM,UAAU,gBAAgB,CAAC,OAAuB;IACtD,OAAO,OAAO,EAAE,IAAI,KAAK,CAAC,CAAC;AAC7B,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,0BAA0B,CACxC,IAAqB,EACrB,WAAqB,EACrB,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAOA,iEAAiE;AACjE,MAAM,UAAU,gBAAgB,CAAC,OAAuB;IACtD,OAAO,OAAO,EAAE,IAAI,KAAK,CAAC,CAAC;AAC7B,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,0BAA0B,CACxC,IAAqB,EACrB,WAAqB,EACrB,YAAoB,EACpB,QAA0C,EAC1C,OAAkL;IAalL,MAAM,GAAG,GAAG,IAAI,CAAC,OAAQ,CAAC;IAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC;IAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC;IACvD,MAAM,SAAS,GAAG,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC;IACpC,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;IAClC,MAAM,GAAG,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACpE,MAAM,QAAQ,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC;IAChC,MAAM,UAAU,GAAG,IAAI,EAAE,IAAI,IAAI,GAAG,CAAC,MAAM,EAAE,IAAI,IAAI,QAAQ,CAAC;IAE9D,OAAO;QACL,GAAG,EAAE,GAAG,SAAS,IAAI,GAAG,CAAC,EAAE,EAAE;QAC7B,QAAQ,EAAE,QAAQ;QAClB,SAAS,EAAE,YAAY;QACvB,QAAQ,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,EAAE;QAClE,OAAO,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE;QAC3C,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC;QACjD,IAAI,EAAE,GAAG;QACT,UAAU,EAAE,IAAI,CAAC,SAAS,IAAI,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;QAC7E,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,SAAS,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;QACjD,MAAM,EAAE,CAAC,GAAgB,EAAE,KAAwB,EAAE,EAAE,CACrD,OAAO,CACL,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,EAAE,EACxD,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAkE,EACnG,KAAK,CACN;KACJ,CAAC;AACJ,CAAC;AAED,qDAAqD;AACrD,MAAM,UAAU,cAAc,CAAC,IAAqB;IAClD,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,iBAAiB,IAAI,IAAI,CAAC,IAAI,KAAK,iBAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;AACpG,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zhin.js/adapter-satori",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0",
|
|
4
4
|
"description": "Zhin.js adapter for Satori protocol",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./lib/index.js",
|
|
@@ -38,16 +38,17 @@
|
|
|
38
38
|
"ws": "^8.21.0"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
41
|
-
"@types/node": "^25.9.
|
|
41
|
+
"@types/node": "^25.9.2",
|
|
42
42
|
"@types/ws": "^8.18.1",
|
|
43
43
|
"typescript": "^6.0.3",
|
|
44
|
-
"zhin.js": "
|
|
45
|
-
"@zhin.js/
|
|
46
|
-
"@zhin.js/
|
|
44
|
+
"@zhin.js/cli": "1.0.89",
|
|
45
|
+
"@zhin.js/client": "2.0.3",
|
|
46
|
+
"@zhin.js/host-router": "2.0.0",
|
|
47
|
+
"zhin.js": "3.0.0"
|
|
47
48
|
},
|
|
48
49
|
"peerDependencies": {
|
|
49
|
-
"zhin.js": "
|
|
50
|
-
"@zhin.js/host-router": "
|
|
50
|
+
"zhin.js": "3.0.0",
|
|
51
|
+
"@zhin.js/host-router": "2.0.0"
|
|
51
52
|
},
|
|
52
53
|
"peerDependenciesMeta": {
|
|
53
54
|
"@zhin.js/host-router": {
|
package/src/adapter.ts
CHANGED
|
@@ -4,25 +4,27 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { formatCompact, Adapter, Plugin } from 'zhin.js';
|
|
6
6
|
import type { Router } from '@zhin.js/host-router';
|
|
7
|
-
import { SatoriWsClient } from './
|
|
8
|
-
import {
|
|
7
|
+
import { SatoriWsClient } from './endpoint-ws.js';
|
|
8
|
+
import { SatoriWebhookEndpoint } from './endpoint-webhook.js';
|
|
9
9
|
import type {
|
|
10
|
-
|
|
10
|
+
SatoriEndpointConfig,
|
|
11
11
|
SatoriWsConfig,
|
|
12
12
|
SatoriWebhookConfig,
|
|
13
13
|
} from './types.js';
|
|
14
14
|
import type { SatoriEventBody } from './types.js';
|
|
15
15
|
|
|
16
|
-
export type SatoriBot = SatoriWsClient |
|
|
16
|
+
export type SatoriBot = SatoriWsClient | SatoriWebhookEndpoint;
|
|
17
17
|
|
|
18
18
|
export class SatoriAdapter extends Adapter<SatoriBot> {
|
|
19
|
+
static override readonly capabilities = ['inbound', 'outbound'] as const;
|
|
20
|
+
|
|
19
21
|
#router?: Router;
|
|
20
22
|
|
|
21
23
|
constructor(plugin: Plugin) {
|
|
22
24
|
super(plugin, 'satori', []);
|
|
23
25
|
}
|
|
24
26
|
|
|
25
|
-
|
|
27
|
+
createEndpoint(config: SatoriEndpointConfig): SatoriBot {
|
|
26
28
|
switch (config.connection) {
|
|
27
29
|
case 'ws':
|
|
28
30
|
return new SatoriWsClient(this, config as SatoriWsConfig);
|
|
@@ -30,9 +32,9 @@ export class SatoriAdapter extends Adapter<SatoriBot> {
|
|
|
30
32
|
if (!this.#router) {
|
|
31
33
|
throw new Error('Satori connection: webhook 需要 router,请安装并在配置中启用 @zhin.js/host-router');
|
|
32
34
|
}
|
|
33
|
-
return new
|
|
35
|
+
return new SatoriWebhookEndpoint(this, this.#router, config as SatoriWebhookConfig);
|
|
34
36
|
default:
|
|
35
|
-
throw new Error(`Unknown Satori connection: ${(config as
|
|
37
|
+
throw new Error(`Unknown Satori connection: ${(config as SatoriEndpointConfig).connection}`);
|
|
36
38
|
}
|
|
37
39
|
}
|
|
38
40
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Satori WebHook Bot:应用提供 POST path,SDK 推送 EVENT(Satori-Opcode: 0)
|
|
3
3
|
*/
|
|
4
4
|
import { EventEmitter } from 'events';
|
|
5
|
-
import { formatCompact,
|
|
5
|
+
import { formatCompact, Endpoint, Message, segment, SendOptions } from 'zhin.js';
|
|
6
6
|
import { registerFetchRoute, type Router, type RouterContext } from '@zhin.js/host-router/router';
|
|
7
7
|
import { callSatoriApi } from './api.js';
|
|
8
8
|
import type { SatoriWebhookConfig, SatoriEventBody, SatoriLogin } from './types.js';
|
|
@@ -10,7 +10,7 @@ import { SatoriOpcode } from './types.js';
|
|
|
10
10
|
import type { SatoriAdapter } from './adapter.js';
|
|
11
11
|
import { formatSatoriMessagePayload, isMessageEvent } from './utils.js';
|
|
12
12
|
|
|
13
|
-
export class
|
|
13
|
+
export class SatoriWebhookEndpoint extends EventEmitter implements Endpoint<SatoriWebhookConfig, SatoriEventBody> {
|
|
14
14
|
$connected: boolean = true;
|
|
15
15
|
/** 从首个事件的 login 得到,用于 API 的 platform / userId */
|
|
16
16
|
private login?: SatoriLogin;
|
|
@@ -71,7 +71,7 @@ export class SatoriWebhookBot extends EventEmitter implements Bot<SatoriWebhookC
|
|
|
71
71
|
return Message.from(body, {
|
|
72
72
|
$id: '',
|
|
73
73
|
$adapter: 'satori',
|
|
74
|
-
$
|
|
74
|
+
$endpoint: this.$config.name,
|
|
75
75
|
$channel: { id: '', type: 'private' },
|
|
76
76
|
$sender: { id: '', name: '' },
|
|
77
77
|
$content: [],
|
|
@@ -90,7 +90,7 @@ export class SatoriWebhookBot extends EventEmitter implements Bot<SatoriWebhookC
|
|
|
90
90
|
this.adapter.sendMessage({
|
|
91
91
|
...channel,
|
|
92
92
|
context: 'satori',
|
|
93
|
-
|
|
93
|
+
endpoint: this.$config.name,
|
|
94
94
|
content: content as import('zhin.js').SendContent,
|
|
95
95
|
}),
|
|
96
96
|
);
|
|
@@ -4,14 +4,14 @@
|
|
|
4
4
|
import WebSocket from 'ws';
|
|
5
5
|
import { EventEmitter } from 'events';
|
|
6
6
|
import { clearInterval } from 'node:timers';
|
|
7
|
-
import { formatCompact,
|
|
7
|
+
import { formatCompact, Endpoint, Message, segment, SendOptions } from 'zhin.js';
|
|
8
8
|
import { callSatoriApi } from './api.js';
|
|
9
9
|
import type { SatoriWsConfig, SatoriSignal, SatoriEventBody, SatoriLogin } from './types.js';
|
|
10
10
|
import { SatoriOpcode } from './types.js';
|
|
11
11
|
import type { SatoriAdapter } from './adapter.js';
|
|
12
12
|
import { formatSatoriMessagePayload, isMessageEvent } from './utils.js';
|
|
13
13
|
|
|
14
|
-
export class SatoriWsClient extends EventEmitter implements
|
|
14
|
+
export class SatoriWsClient extends EventEmitter implements Endpoint<SatoriWsConfig, SatoriEventBody> {
|
|
15
15
|
$connected: boolean;
|
|
16
16
|
private ws?: WebSocket;
|
|
17
17
|
private reconnectTimer?: NodeJS.Timeout;
|
|
@@ -67,7 +67,7 @@ export class SatoriWsClient extends EventEmitter implements Bot<SatoriWsConfig,
|
|
|
67
67
|
this.reconnectTimer = undefined;
|
|
68
68
|
this.$connect().catch((err) => this.logger.warn(formatCompact( {
|
|
69
69
|
op: 'reconnect',
|
|
70
|
-
|
|
70
|
+
endpoint: this.$id,
|
|
71
71
|
ok: false,
|
|
72
72
|
error: err instanceof Error ? err.message : String(err),
|
|
73
73
|
})));
|
|
@@ -82,7 +82,7 @@ export class SatoriWsClient extends EventEmitter implements Bot<SatoriWsConfig,
|
|
|
82
82
|
|
|
83
83
|
this.ws.on('open', () => {
|
|
84
84
|
this.$connected = true;
|
|
85
|
-
this.logger.info(formatCompact({
|
|
85
|
+
this.logger.info(formatCompact({ endpoint: this.$id, mode: 'ws' }));
|
|
86
86
|
this.sendSignal(SatoriOpcode.IDENTIFY, {
|
|
87
87
|
token: this.$config.token,
|
|
88
88
|
sn: this.lastSn,
|
|
@@ -115,7 +115,7 @@ export class SatoriWsClient extends EventEmitter implements Bot<SatoriWsConfig,
|
|
|
115
115
|
const codeHint = code === 1005 ? ' [无状态,多为服务端/代理未发 close 帧即断开]' : code === 1006 ? ' [异常关闭]' : '';
|
|
116
116
|
this.logger.warn(formatCompact( {
|
|
117
117
|
op: 'disconnect',
|
|
118
|
-
|
|
118
|
+
endpoint: this.$config.name,
|
|
119
119
|
code,
|
|
120
120
|
error: `${reasonStr || 'closed'}${codeHint}`,
|
|
121
121
|
reconnect_ms: 5000,
|
|
@@ -127,7 +127,7 @@ export class SatoriWsClient extends EventEmitter implements Bot<SatoriWsConfig,
|
|
|
127
127
|
this.ws.on('error', (error) => {
|
|
128
128
|
this.logger.warn(formatCompact( {
|
|
129
129
|
op: 'ws_error',
|
|
130
|
-
|
|
130
|
+
endpoint: this.$config.name,
|
|
131
131
|
ok: false,
|
|
132
132
|
error: error instanceof Error ? error.message : String(error),
|
|
133
133
|
}));
|
|
@@ -167,7 +167,7 @@ export class SatoriWsClient extends EventEmitter implements Bot<SatoriWsConfig,
|
|
|
167
167
|
return Message.from(body, {
|
|
168
168
|
$id: '',
|
|
169
169
|
$adapter: 'satori',
|
|
170
|
-
$
|
|
170
|
+
$endpoint: this.$config.name,
|
|
171
171
|
$channel: { id: '', type: 'private' },
|
|
172
172
|
$sender: { id: '', name: '' },
|
|
173
173
|
$content: [],
|
|
@@ -186,7 +186,7 @@ export class SatoriWsClient extends EventEmitter implements Bot<SatoriWsConfig,
|
|
|
186
186
|
this.adapter.sendMessage({
|
|
187
187
|
...channel,
|
|
188
188
|
context: 'satori',
|
|
189
|
-
|
|
189
|
+
endpoint: this.$config.name,
|
|
190
190
|
content: content as import('zhin.js').SendContent,
|
|
191
191
|
}),
|
|
192
192
|
);
|
package/src/index.ts
CHANGED
|
@@ -8,8 +8,8 @@ import { SatoriAdapter } from './adapter.js';
|
|
|
8
8
|
export * from './types.js';
|
|
9
9
|
export { callSatoriApi } from './api.js';
|
|
10
10
|
export * from './utils.js';
|
|
11
|
-
export { SatoriWsClient } from './
|
|
12
|
-
export {
|
|
11
|
+
export { SatoriWsClient } from './endpoint-ws.js';
|
|
12
|
+
export { SatoriWebhookEndpoint } from './endpoint-webhook.js';
|
|
13
13
|
export { SatoriAdapter, type SatoriBot } from './adapter.js';
|
|
14
14
|
|
|
15
15
|
declare module 'zhin.js' {
|
package/src/types.ts
CHANGED
|
@@ -24,7 +24,7 @@ export interface SatoriWebhookConfig extends SatoriConfigBase {
|
|
|
24
24
|
path: string;
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
-
export type
|
|
27
|
+
export type SatoriEndpointConfig = SatoriWsConfig | SatoriWebhookConfig;
|
|
28
28
|
|
|
29
29
|
/** WebSocket/API 信号:op + body */
|
|
30
30
|
export interface SatoriSignal {
|
package/src/utils.ts
CHANGED
|
@@ -14,13 +14,13 @@ export function isPrivateChannel(channel?: SatoriChannel): boolean {
|
|
|
14
14
|
export function formatSatoriMessagePayload(
|
|
15
15
|
body: SatoriEventBody,
|
|
16
16
|
adapterName: 'satori',
|
|
17
|
-
|
|
17
|
+
endpointName: string,
|
|
18
18
|
recallFn: (msgId: string) => Promise<void>,
|
|
19
19
|
replyFn: (channel: { id: string; type: 'group' | 'private' }, content: (string | { type: string; data?: Record<string, unknown> })[], quote?: boolean | string) => Promise<string>,
|
|
20
20
|
): {
|
|
21
21
|
$id: string;
|
|
22
22
|
$adapter: 'satori';
|
|
23
|
-
$
|
|
23
|
+
$endpoint: string;
|
|
24
24
|
$channel: { id: string; type: 'group' | 'private' };
|
|
25
25
|
$sender: { id: string; name: string };
|
|
26
26
|
$content: Array<{ type: string; data: Record<string, unknown> }>;
|
|
@@ -42,7 +42,7 @@ export function formatSatoriMessagePayload(
|
|
|
42
42
|
return {
|
|
43
43
|
$id: `${channelId}:${msg.id}`,
|
|
44
44
|
$adapter: 'satori',
|
|
45
|
-
$
|
|
45
|
+
$endpoint: endpointName,
|
|
46
46
|
$channel: { id: channelId, type: isPrivate ? 'private' : 'group' },
|
|
47
47
|
$sender: { id: senderId, name: senderName },
|
|
48
48
|
$content: [{ type: 'text', data: { text: raw } }],
|
package/lib/bot-webhook.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bot-webhook.d.ts","sourceRoot":"","sources":["../src/bot-webhook.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAiB,GAAG,EAAE,OAAO,EAAW,WAAW,EAAE,MAAM,SAAS,CAAC;AAC5E,OAAO,EAAsB,KAAK,MAAM,EAAsB,MAAM,6BAA6B,CAAC;AAElG,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAe,MAAM,YAAY,CAAC;AAEpF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAGlD,qBAAa,gBAAiB,SAAQ,YAAa,YAAW,GAAG,CAAC,mBAAmB,EAAE,eAAe,CAAC;IAU5F,OAAO,EAAE,aAAa;IACtB,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,mBAAmB;IAXrC,UAAU,EAAE,OAAO,CAAQ;IAC3B,iDAAiD;IACjD,OAAO,CAAC,KAAK,CAAC,CAAc;IAE5B,IAAI,MAAM,6BAET;gBAGQ,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,mBAAmB;IAKrC,IAAI,GAAG,WAEN;IAED,OAAO,CAAC,UAAU;IAMZ,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAezB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAIlC,OAAO,CAAC,WAAW;IAUnB,cAAc,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IA+BzD,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAanD,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAIhD"}
|
package/lib/bot-webhook.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bot-webhook.js","sourceRoot":"","sources":["../src/bot-webhook.ts"],"names":[],"mappings":"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"}
|
package/lib/bot-ws.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bot-ws.d.ts","sourceRoot":"","sources":["../src/bot-ws.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAiB,GAAG,EAAE,OAAO,EAAW,WAAW,EAAE,MAAM,SAAS,CAAC;AAE5E,OAAO,KAAK,EAAE,cAAc,EAAgB,eAAe,EAAe,MAAM,YAAY,CAAC;AAE7F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAGlD,qBAAa,cAAe,SAAQ,YAAa,YAAW,GAAG,CAAC,cAAc,EAAE,eAAe,CAAC;IAa3E,OAAO,EAAE,aAAa;IAAS,OAAO,EAAE,cAAc;IAZzE,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,CAAC,CAAY;IACvB,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,gDAAgD;IAChD,OAAO,CAAC,KAAK,CAAC,CAAc;IAC5B,OAAO,CAAC,MAAM,CAAC,CAAS;IAExB,IAAI,MAAM,6BAET;gBAEkB,OAAO,EAAE,aAAa,EAAS,OAAO,EAAE,cAAc;IAKzE,IAAI,GAAG,WAEN;IAED,OAAO,KAAK,KAAK,GAOhB;IAED,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,UAAU;IAKlB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,iBAAiB;IAcnB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IA8DzB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBlC,OAAO,CAAC,WAAW;IAUnB,cAAc,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IA+BzD,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAcnD,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAIhD"}
|
package/lib/bot-ws.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bot-ws.js","sourceRoot":"","sources":["../src/bot-ws.ts"],"names":[],"mappings":"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"}
|