onebots 0.4.22 → 0.4.25

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.
Files changed (84) hide show
  1. package/README.md +129 -72
  2. package/lib/adapter.d.ts +55 -0
  3. package/lib/adapter.js +60 -0
  4. package/lib/adapters/icqq/index.d.ts +36 -0
  5. package/lib/adapters/icqq/index.js +300 -0
  6. package/lib/adapters/icqq/utils.d.ts +6 -0
  7. package/lib/adapters/icqq/utils.js +26 -0
  8. package/lib/adapters/qq/bot.d.ts +24 -0
  9. package/lib/adapters/qq/bot.js +20 -0
  10. package/lib/adapters/qq/constans.d.ts +69 -0
  11. package/lib/adapters/qq/constans.js +128 -0
  12. package/lib/adapters/qq/elements.d.ts +125 -0
  13. package/lib/adapters/qq/elements.js +8 -0
  14. package/lib/adapters/qq/entries/channel.d.ts +17 -0
  15. package/lib/adapters/qq/entries/channel.js +2 -0
  16. package/lib/adapters/qq/entries/friend.d.ts +8 -0
  17. package/lib/adapters/qq/entries/friend.js +2 -0
  18. package/lib/adapters/qq/entries/group.d.ts +6 -0
  19. package/lib/adapters/qq/entries/group.js +2 -0
  20. package/lib/adapters/qq/entries/groupMember.d.ts +7 -0
  21. package/lib/adapters/qq/entries/groupMember.js +2 -0
  22. package/lib/adapters/qq/entries/guild.d.ts +21 -0
  23. package/lib/adapters/qq/entries/guild.js +2 -0
  24. package/lib/adapters/qq/entries/guildMember.d.ts +9 -0
  25. package/lib/adapters/qq/entries/guildMember.js +2 -0
  26. package/lib/adapters/qq/entries/user.d.ts +9 -0
  27. package/lib/adapters/qq/entries/user.js +2 -0
  28. package/lib/adapters/qq/event.d.ts +28 -0
  29. package/lib/adapters/qq/event.js +24 -0
  30. package/lib/adapters/qq/index.d.ts +35 -0
  31. package/lib/adapters/qq/index.js +170 -0
  32. package/lib/adapters/qq/message.d.ts +83 -0
  33. package/lib/adapters/qq/message.js +272 -0
  34. package/lib/adapters/qq/qqBot.d.ts +122 -0
  35. package/lib/adapters/qq/qqBot.js +438 -0
  36. package/lib/adapters/qq/sessionManager.d.ts +33 -0
  37. package/lib/adapters/qq/sessionManager.js +257 -0
  38. package/lib/adapters/qq/types.d.ts +45 -0
  39. package/lib/adapters/qq/types.js +2 -0
  40. package/lib/adapters/qq/utils.d.ts +12 -0
  41. package/lib/adapters/qq/utils.js +86 -0
  42. package/lib/bin.js +17 -2
  43. package/lib/config.sample.yaml +11 -5
  44. package/lib/db.js +6 -6
  45. package/lib/index.d.ts +5 -5
  46. package/lib/onebot.d.ts +30 -22
  47. package/lib/onebot.js +42 -165
  48. package/lib/server/app.d.ts +22 -12
  49. package/lib/server/app.js +97 -71
  50. package/lib/service/V11/action/common.d.ts +11 -12
  51. package/lib/service/V11/action/common.js +19 -65
  52. package/lib/service/V11/action/friend.d.ts +6 -14
  53. package/lib/service/V11/action/friend.js +6 -16
  54. package/lib/service/V11/action/group.d.ts +20 -23
  55. package/lib/service/V11/action/group.js +20 -30
  56. package/lib/service/V11/action/index.d.ts +1 -1
  57. package/lib/service/V11/db_entities.d.ts +1 -1
  58. package/lib/service/V11/db_entities.js +1 -1
  59. package/lib/service/V11/db_sqlite.d.ts +1 -1
  60. package/lib/service/V11/db_sqlite.js +5 -7
  61. package/lib/service/V11/index.d.ts +46 -14
  62. package/lib/service/V11/index.js +163 -134
  63. package/lib/service/V12/action/common.d.ts +3 -67
  64. package/lib/service/V12/action/common.js +9 -63
  65. package/lib/service/V12/action/friend.d.ts +4 -10
  66. package/lib/service/V12/action/friend.js +4 -12
  67. package/lib/service/V12/action/group.d.ts +19 -21
  68. package/lib/service/V12/action/group.js +19 -27
  69. package/lib/service/V12/action/guild.d.ts +40 -13
  70. package/lib/service/V12/action/guild.js +99 -11
  71. package/lib/service/V12/action/index.d.ts +1 -1
  72. package/lib/service/V12/index.d.ts +37 -13
  73. package/lib/service/V12/index.js +63 -94
  74. package/lib/service.d.ts +7 -2
  75. package/lib/service.js +5 -1
  76. package/lib/types.d.ts +2 -2
  77. package/lib/types.js +3 -3
  78. package/lib/utils.d.ts +7 -4
  79. package/lib/utils.js +18 -1
  80. package/package.json +74 -70
  81. package/lib/service/V11/utils.d.ts +0 -9
  82. package/lib/service/V11/utils.js +0 -31
  83. package/lib/service/V12/utils.d.ts +0 -8
  84. package/lib/service/V12/utils.js +0 -47
@@ -3,7 +3,7 @@ import { FriendAction } from "./friend";
3
3
  import { GroupAction } from "./group";
4
4
  export interface Action extends CommonAction, FriendAction, GroupAction {
5
5
  }
6
- declare const Action_base: import("../../../utils").Class;
6
+ declare const Action_base: import("../../../utils").Class<any>;
7
7
  export declare class Action extends Action_base {
8
8
  }
9
9
  export {};
@@ -2,7 +2,7 @@ export declare class MsgEntry {
2
2
  id?: number;
3
3
  base64_id: string;
4
4
  seq: number;
5
- user_id: number;
5
+ user_id: string;
6
6
  nickname: string;
7
7
  group_id: number;
8
8
  group_name: string;
@@ -28,7 +28,7 @@ __decorate([
28
28
  ], MsgEntry.prototype, "seq", void 0);
29
29
  __decorate([
30
30
  (0, typeorm_1.Column)(),
31
- __metadata("design:type", Number)
31
+ __metadata("design:type", String)
32
32
  ], MsgEntry.prototype, "user_id", void 0);
33
33
  __decorate([
34
34
  (0, typeorm_1.Column)(),
@@ -38,7 +38,7 @@ export declare class Database {
38
38
  * @param group_id
39
39
  * @param seq
40
40
  */
41
- getMsgByParams(user_id: number, group_id: number, seq: number): Promise<MsgEntry | null>;
41
+ getMsgByParams(user_id: string, group_id: number, seq: number): Promise<MsgEntry | null>;
42
42
  /**
43
43
  * 将一条消息标记为 recalled
44
44
  * @param base64_id
@@ -96,7 +96,10 @@ class Database {
96
96
  */
97
97
  async markMsgAsRecalled(base64_id, id) {
98
98
  if (base64_id || id)
99
- await this.msgRepo.update(base64_id ? { base64_id: base64_id } : { id: id }, { recalled: true, recall_time: new Date() });
99
+ await this.msgRepo.update(base64_id ? { base64_id: base64_id } : { id: id }, {
100
+ recalled: true,
101
+ recall_time: new Date(),
102
+ });
100
103
  else
101
104
  throw new Error("base64_id 或 id 参数至少一个应该被赋值");
102
105
  }
@@ -106,12 +109,7 @@ class Database {
106
109
  async shrinkDB() {
107
110
  let dt = new Date();
108
111
  dt.setDate(dt.getDate() - this.msgHistoryPreserveDays);
109
- await this.msgRepo
110
- .createQueryBuilder()
111
- .delete()
112
- .from(db_entities_1.MsgEntry)
113
- .where("create_time < :dt", { dt: dt })
114
- .execute();
112
+ await this.msgRepo.createQueryBuilder().delete().from(db_entities_1.MsgEntry).where("create_time < :dt", { dt: dt }).execute();
115
113
  }
116
114
  }
117
115
  exports.Database = Database;
@@ -1,21 +1,20 @@
1
1
  /// <reference types="node" />
2
- import { Client } from "icqq";
3
2
  import { Config } from "./config";
4
3
  import { Action } from "./action";
5
- import { OneBot } from "../../onebot";
4
+ import { OneBot, OneBotStatus } from "../../onebot";
6
5
  import { Logger } from "log4js";
7
6
  import { WebSocket, WebSocketServer } from "ws";
8
7
  import { Dispose } from "../../types";
9
8
  import { Database } from "./db_sqlite";
10
9
  import { Service } from "../../service";
11
- export declare class V11 extends Service<'V11'> implements OneBot.Base {
10
+ import { Dict } from "@zhinjs/shared";
11
+ export declare class V11 extends Service<"V11"> implements OneBot.Base {
12
12
  oneBot: OneBot<'V11'>;
13
- client: Client;
13
+ config: OneBot.Config<'V11'>;
14
14
  action: Action;
15
- version: string;
15
+ version: OneBot.Version;
16
16
  protected timestamp: number;
17
17
  protected heartbeat?: NodeJS.Timeout;
18
- private path;
19
18
  db: Database;
20
19
  disposes: Dispose[];
21
20
  protected _queue: Array<{
@@ -26,15 +25,14 @@ export declare class V11 extends Service<'V11'> implements OneBot.Base {
26
25
  logger: Logger;
27
26
  wss?: WebSocketServer;
28
27
  wsr: Set<WebSocket>;
29
- constructor(oneBot: OneBot<'V11'>, client: Client, config: OneBot.Config<'V11'>);
30
- start(path?: string): void;
28
+ constructor(oneBot: OneBot<'V11'>, config: OneBot.Config<'V11'>);
29
+ start(): void;
31
30
  private startHttp;
32
31
  private startHttpReverse;
33
32
  private startWs;
34
33
  private startWsReverse;
35
34
  stop(force?: boolean): Promise<void>;
36
35
  format(_: any, data: any): any;
37
- system_online(data: any): void;
38
36
  dispatch(data: any): Promise<void>;
39
37
  private _formatEvent;
40
38
  private addMsgToDB;
@@ -68,20 +66,21 @@ export declare class V11 extends Service<'V11'> implements OneBot.Base {
68
66
  /**
69
67
  * 限速队列调用
70
68
  */
71
- protected _runQueue(): Promise<void>;
69
+ _runQueue(): Promise<void>;
72
70
  }
73
71
  export declare namespace V11 {
74
72
  interface Result<T extends any> {
75
73
  retcode: number;
76
- status: "ok" | 'async' | 'error';
74
+ status: "ok" | "async" | "error";
77
75
  data: T;
78
76
  error: string;
77
+ echo?: string;
79
78
  }
80
79
  function ok<T extends any>(data: T, retcode?: number, pending?: boolean): Result<T>;
81
80
  function error(error: string, retcode?: number): Result<any>;
82
81
  const defaultConfig: Config;
83
- function genMetaEvent(uin: number, type: string): {
84
- self_id: number;
82
+ function genMetaEvent(uin: string, type: string): {
83
+ self_id: string | number;
85
84
  time: number;
86
85
  post_type: string;
87
86
  meta_event_type: string;
@@ -98,7 +97,7 @@ export declare namespace V11 {
98
97
  enable_cors?: boolean;
99
98
  enable_reissue?: boolean;
100
99
  rate_limit_interval?: number;
101
- post_message_format?: 'string' | 'array';
100
+ post_message_format?: "string" | "array";
102
101
  heartbeat?: number;
103
102
  secret?: string;
104
103
  reconnect_interval?: number;
@@ -107,4 +106,37 @@ export declare namespace V11 {
107
106
  http_reverse?: (string | Config.HttpReverseConfig)[];
108
107
  ws_reverse?: string[];
109
108
  }
109
+ type Payload<T = Dict> = {
110
+ [P in string | symbol]: any;
111
+ } & T;
112
+ type SelfInfo = {
113
+ status: OneBotStatus;
114
+ nickname: string;
115
+ };
116
+ interface GroupInfo {
117
+ group_id: number;
118
+ group_name: string;
119
+ }
120
+ interface UserInfo {
121
+ user_id: number;
122
+ user_name: string;
123
+ }
124
+ interface GroupMemberInfo {
125
+ group_id: number;
126
+ user_id: number;
127
+ user_name: string;
128
+ }
129
+ interface Message {
130
+ }
131
+ interface Segment {
132
+ type: string;
133
+ data: Dict;
134
+ }
135
+ interface MessageElement {
136
+ type: string;
137
+ data: Dict;
138
+ }
139
+ interface MessageRet {
140
+ message_id: number;
141
+ }
110
142
  }