@xbibzlibrary/telebibz 0.3.2 → 0.4.2
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/CHANGELOG.md +34 -1
- package/README.id.md +65 -5
- package/README.md +46 -6
- package/README.zh-CN.md +75 -15
- package/dist/src/api/client.d.ts.map +1 -1
- package/dist/src/api/client.js +12 -0
- package/dist/src/api/client.js.map +1 -1
- package/dist/src/context/context.d.ts +46 -1
- package/dist/src/context/context.d.ts.map +1 -1
- package/dist/src/context/context.js +107 -0
- package/dist/src/context/context.js.map +1 -1
- package/dist/src/core/bot.d.ts +48 -3
- package/dist/src/core/bot.d.ts.map +1 -1
- package/dist/src/core/bot.js +95 -7
- package/dist/src/core/bot.js.map +1 -1
- package/dist/src/core/webhook-reply.d.ts +34 -0
- package/dist/src/core/webhook-reply.d.ts.map +1 -0
- package/dist/src/core/webhook-reply.js +37 -0
- package/dist/src/core/webhook-reply.js.map +1 -0
- package/dist/src/index.d.ts +2 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/observability/logger.d.ts.map +1 -1
- package/dist/src/observability/logger.js +4 -1
- package/dist/src/observability/logger.js.map +1 -1
- package/dist/src/webhook/handler.d.ts +8 -0
- package/dist/src/webhook/handler.d.ts.map +1 -1
- package/dist/src/webhook/handler.js +26 -6
- package/dist/src/webhook/handler.js.map +1 -1
- package/dist-cjs/src/api/client.js +12 -0
- package/dist-cjs/src/context/context.js +107 -0
- package/dist-cjs/src/core/bot.js +97 -8
- package/dist-cjs/src/core/webhook-reply.js +42 -0
- package/dist-cjs/src/index.js +7 -1
- package/dist-cjs/src/observability/logger.js +4 -1
- package/dist-cjs/src/webhook/handler.js +26 -6
- package/docs/API.id.md +48 -4
- package/docs/API.md +48 -4
- package/docs/API.zh-CN.md +48 -4
- package/package.json +1 -1
|
@@ -175,6 +175,113 @@ export class Context {
|
|
|
175
175
|
async getUserProfilePhotos(userId = this.from?.id, extra = {}) { if (!userId)
|
|
176
176
|
throw new Error("No user in this update."); return this.api.call("getUserProfilePhotos", { user_id: userId, ...extra }); }
|
|
177
177
|
async getFile(fileId) { return this.api.methods.getFile({ file_id: fileId }); }
|
|
178
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
179
|
+
// Admin & moderation (full Telegraf-parity surface; chat defaults to ctx.chat)
|
|
180
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
181
|
+
requireChatId() { if (this.chat?.id === undefined)
|
|
182
|
+
throw new Error("This update has no chat to act on."); return this.chat.id; }
|
|
183
|
+
async banChatMember(userId, untilDate, extra = {}) {
|
|
184
|
+
return this.api.call("banChatMember", { chat_id: this.requireChatId(), user_id: userId, ...(untilDate !== undefined ? { until_date: untilDate } : {}), ...extra });
|
|
185
|
+
}
|
|
186
|
+
async unbanChatMember(userId, onlyIfBanned, extra = {}) {
|
|
187
|
+
return this.api.call("unbanChatMember", { chat_id: this.requireChatId(), user_id: userId, ...(onlyIfBanned !== undefined ? { only_if_banned: onlyIfBanned } : {}), ...extra });
|
|
188
|
+
}
|
|
189
|
+
async restrictChatMember(userId, permissions, untilDate, extra = {}) {
|
|
190
|
+
return this.api.call("restrictChatMember", { chat_id: this.requireChatId(), user_id: userId, permissions, ...(untilDate !== undefined ? { until_date: untilDate } : {}), ...extra });
|
|
191
|
+
}
|
|
192
|
+
async promoteChatMember(userId, extra = {}) {
|
|
193
|
+
return this.api.call("promoteChatMember", { chat_id: this.requireChatId(), user_id: userId, ...extra });
|
|
194
|
+
}
|
|
195
|
+
async banChatSenderChat(senderChatId, extra = {}) {
|
|
196
|
+
return this.api.call("banChatSenderChat", { chat_id: this.requireChatId(), sender_chat_id: senderChatId, ...extra });
|
|
197
|
+
}
|
|
198
|
+
async unbanChatSenderChat(senderChatId, extra = {}) {
|
|
199
|
+
return this.api.call("unbanChatSenderChat", { chat_id: this.requireChatId(), sender_chat_id: senderChatId, ...extra });
|
|
200
|
+
}
|
|
201
|
+
// ── Chat management ──
|
|
202
|
+
async setChatTitle(title) { return this.api.call("setChatTitle", { chat_id: this.requireChatId(), title }); }
|
|
203
|
+
async setChatDescription(description) { return this.api.call("setChatDescription", { chat_id: this.requireChatId(), description }); }
|
|
204
|
+
async setChatPhoto(photo) { return this.api.call("setChatPhoto", { chat_id: this.requireChatId(), photo }); }
|
|
205
|
+
async deleteChatPhoto() { return this.api.call("deleteChatPhoto", { chat_id: this.requireChatId() }); }
|
|
206
|
+
async setChatPermissions(permissions, extra = {}) {
|
|
207
|
+
return this.api.call("setChatPermissions", { chat_id: this.requireChatId(), permissions, ...extra });
|
|
208
|
+
}
|
|
209
|
+
async leaveChat() { return this.api.call("leaveChat", { chat_id: this.requireChatId() }); }
|
|
210
|
+
async unpinAllChatMessages(extra = {}) { return this.api.call("unpinAllChatMessages", { chat_id: this.requireChatId(), ...extra }); }
|
|
211
|
+
async setChatStickerSet(stickerSetName) { return this.api.call("setChatStickerSet", { chat_id: this.requireChatId(), sticker_set_name: stickerSetName }); }
|
|
212
|
+
async deleteChatStickerSet() { return this.api.call("deleteChatStickerSet", { chat_id: this.requireChatId() }); }
|
|
213
|
+
// ── Chat & member info ──
|
|
214
|
+
async getChatAdministrators() { return this.api.call("getChatAdministrators", { chat_id: this.requireChatId() }); }
|
|
215
|
+
async getChatMemberCount() { return this.api.call("getChatMemberCount", { chat_id: this.requireChatId() }); }
|
|
216
|
+
async getChatMember(userId) { return this.api.call("getChatMember", { chat_id: this.requireChatId(), user_id: userId }); }
|
|
217
|
+
// ── Invite links ──
|
|
218
|
+
async exportChatInviteLink() { return this.api.call("exportChatInviteLink", { chat_id: this.requireChatId() }); }
|
|
219
|
+
async createChatInviteLink(extra = {}) { return this.api.call("createChatInviteLink", { chat_id: this.requireChatId(), ...extra }); }
|
|
220
|
+
async editChatInviteLink(inviteLink, extra = {}) { return this.api.call("editChatInviteLink", { chat_id: this.requireChatId(), invite_link: inviteLink, ...extra }); }
|
|
221
|
+
async revokeChatInviteLink(inviteLink) { return this.api.call("revokeChatInviteLink", { chat_id: this.requireChatId(), invite_link: inviteLink }); }
|
|
222
|
+
// ── Join requests ──
|
|
223
|
+
async approveChatJoinRequest(userId) { return this.api.call("approveChatJoinRequest", { chat_id: this.requireChatId(), user_id: userId }); }
|
|
224
|
+
async declineChatJoinRequest(userId) { return this.api.call("declineChatJoinRequest", { chat_id: this.requireChatId(), user_id: userId }); }
|
|
225
|
+
// ── Polls, live location, games, invoices ──
|
|
226
|
+
async replyWithQuiz(question, options, extra = {}) {
|
|
227
|
+
return this.sendMethod("sendPoll", { question, options, type: "quiz" }, extra);
|
|
228
|
+
}
|
|
229
|
+
async stopPoll(messageId = this.message?.message_id, extra = {}) {
|
|
230
|
+
if (messageId === undefined)
|
|
231
|
+
throw new Error("Cannot stop a poll without a message id.");
|
|
232
|
+
return this.api.call("stopPoll", { chat_id: this.requireChatId(), message_id: messageId, ...extra });
|
|
233
|
+
}
|
|
234
|
+
async editMessageLiveLocation(latitude, longitude, extra = {}) {
|
|
235
|
+
return this.api.call("editMessageLiveLocation", { chat_id: this.chat?.id, message_id: this.message?.message_id, latitude, longitude, ...extra });
|
|
236
|
+
}
|
|
237
|
+
async stopMessageLiveLocation(extra = {}) {
|
|
238
|
+
return this.api.call("stopMessageLiveLocation", { chat_id: this.chat?.id, message_id: this.message?.message_id, ...extra });
|
|
239
|
+
}
|
|
240
|
+
async replyWithGame(gameShortName, extra = {}) {
|
|
241
|
+
return this.sendMethod("sendGame", { game_short_name: gameShortName }, extra);
|
|
242
|
+
}
|
|
243
|
+
async setGameScore(userId, score, extra = {}) {
|
|
244
|
+
return this.api.call("setGameScore", { chat_id: this.chat?.id, message_id: this.message?.message_id, user_id: userId, score, ...extra });
|
|
245
|
+
}
|
|
246
|
+
async getGameHighScores(userId = this.from?.id, extra = {}) {
|
|
247
|
+
if (userId === undefined)
|
|
248
|
+
throw new Error("No user in this update; pass a user_id explicitly.");
|
|
249
|
+
return this.api.call("getGameHighScores", { chat_id: this.chat?.id, message_id: this.message?.message_id, user_id: userId, ...extra });
|
|
250
|
+
}
|
|
251
|
+
async replyWithInvoice(title, description, payload, providerToken, currency, prices, extra = {}) {
|
|
252
|
+
return this.sendMethod("sendInvoice", { title, description, payload, provider_token: providerToken, currency, prices }, extra);
|
|
253
|
+
}
|
|
254
|
+
// ── Forum topics ──
|
|
255
|
+
async createForumTopic(name, extra = {}) { return this.api.call("createForumTopic", { chat_id: this.requireChatId(), name, ...extra }); }
|
|
256
|
+
async editForumTopic(extra = {}) {
|
|
257
|
+
return this.api.call("editForumTopic", { chat_id: this.requireChatId(), message_thread_id: this.message?.message_thread_id, ...extra });
|
|
258
|
+
}
|
|
259
|
+
async closeForumTopic(messageThreadId = this.message?.message_thread_id) {
|
|
260
|
+
if (messageThreadId === undefined)
|
|
261
|
+
throw new Error("Cannot act on a forum topic without a message_thread_id.");
|
|
262
|
+
return this.api.call("closeForumTopic", { chat_id: this.requireChatId(), message_thread_id: messageThreadId });
|
|
263
|
+
}
|
|
264
|
+
async reopenForumTopic(messageThreadId = this.message?.message_thread_id) {
|
|
265
|
+
if (messageThreadId === undefined)
|
|
266
|
+
throw new Error("Cannot act on a forum topic without a message_thread_id.");
|
|
267
|
+
return this.api.call("reopenForumTopic", { chat_id: this.requireChatId(), message_thread_id: messageThreadId });
|
|
268
|
+
}
|
|
269
|
+
async deleteForumTopic(messageThreadId = this.message?.message_thread_id) {
|
|
270
|
+
if (messageThreadId === undefined)
|
|
271
|
+
throw new Error("Cannot act on a forum topic without a message_thread_id.");
|
|
272
|
+
return this.api.call("deleteForumTopic", { chat_id: this.requireChatId(), message_thread_id: messageThreadId });
|
|
273
|
+
}
|
|
274
|
+
async unpinAllForumTopicMessages(messageThreadId = this.message?.message_thread_id) {
|
|
275
|
+
if (messageThreadId === undefined)
|
|
276
|
+
throw new Error("Cannot act on a forum topic without a message_thread_id.");
|
|
277
|
+
return this.api.call("unpinAllForumTopicMessages", { chat_id: this.requireChatId(), message_thread_id: messageThreadId });
|
|
278
|
+
}
|
|
279
|
+
async getForumTopicIconStickers() { return this.api.call("getForumTopicIconStickers", {}); }
|
|
280
|
+
async editGeneralForumTopic(name) { return this.api.call("editGeneralForumTopic", { chat_id: this.requireChatId(), name }); }
|
|
281
|
+
async closeGeneralForumTopic() { return this.api.call("closeGeneralForumTopic", { chat_id: this.requireChatId() }); }
|
|
282
|
+
async reopenGeneralForumTopic() { return this.api.call("reopenGeneralForumTopic", { chat_id: this.requireChatId() }); }
|
|
283
|
+
async hideGeneralForumTopic() { return this.api.call("hideGeneralForumTopic", { chat_id: this.requireChatId() }); }
|
|
284
|
+
async unhideGeneralForumTopic() { return this.api.call("unhideGeneralForumTopic", { chat_id: this.requireChatId() }); }
|
|
178
285
|
withReplyMarkup(markup) { this.state.reply_markup = markup; return this; }
|
|
179
286
|
}
|
|
180
287
|
//# sourceMappingURL=context.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/context/context.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/context/context.ts"],"names":[],"mappings":"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"}
|
package/dist/src/core/bot.d.ts
CHANGED
|
@@ -10,6 +10,14 @@ import { PluginManager, type Plugin } from "../plugins/plugin.js";
|
|
|
10
10
|
import { Logger, type LoggerOptions } from "../observability/logger.js";
|
|
11
11
|
import { type Wizard } from "../state/conversation.js";
|
|
12
12
|
import { type BroadcastOptions, type BroadcastReport } from "../broadcast/broadcast.js";
|
|
13
|
+
import { type WebhookReplySink } from "./webhook-reply.js";
|
|
14
|
+
import type { ContextOptions } from "../context/context.js";
|
|
15
|
+
/** Thrown when a single update exceeds `handlerTimeout`; the handler keeps running in the background. */
|
|
16
|
+
export declare class UpdateTimeoutError extends Error {
|
|
17
|
+
readonly name: string;
|
|
18
|
+
readonly updateId: number;
|
|
19
|
+
constructor(updateId: number, timeoutMs: number);
|
|
20
|
+
}
|
|
13
21
|
export type BotStatus = "created" | "initialized" | "starting" | "running" | "stopping" | "stopped" | "error";
|
|
14
22
|
export type BotContext<S extends object = Record<string, unknown>> = Context<S>;
|
|
15
23
|
export interface BotOptions<S extends object = Record<string, unknown>> {
|
|
@@ -35,6 +43,15 @@ export interface BotOptions<S extends object = Record<string, unknown>> {
|
|
|
35
43
|
updates?: {
|
|
36
44
|
concurrency?: number;
|
|
37
45
|
};
|
|
46
|
+
/**
|
|
47
|
+
* Per-update processing timeout in milliseconds (default `90000`, matching
|
|
48
|
+
* Telegraf; `Infinity` disables). On timeout the update error flow runs
|
|
49
|
+
* (`update:error`, `bot:error`, `catch()` boundary) and `handleUpdate()`
|
|
50
|
+
* rejects, while the handler keeps running to completion in the background.
|
|
51
|
+
*/
|
|
52
|
+
handlerTimeout?: number;
|
|
53
|
+
/** Custom `Context` subclass instantiated for every update (Telegraf's `contextType`). */
|
|
54
|
+
contextType?: new (options: ContextOptions<S>) => Context<S>;
|
|
38
55
|
router?: RouterOptions;
|
|
39
56
|
logger?: Logger | LoggerOptions;
|
|
40
57
|
branding?: boolean;
|
|
@@ -63,8 +80,18 @@ export declare class Bot<S extends object = Record<string, unknown>> {
|
|
|
63
80
|
private me?;
|
|
64
81
|
/** Caps how many updates run at once (default: unlimited). */
|
|
65
82
|
private readonly updateLimiter;
|
|
83
|
+
/** Per-update timeout in ms; `Infinity` disables. */
|
|
84
|
+
private readonly handlerTimeoutMs;
|
|
85
|
+
/** Context class instantiated per update (default `Context`). */
|
|
86
|
+
private readonly contextType;
|
|
66
87
|
/** Per-chat processing chains: parallel across chats, ordered within a chat. */
|
|
67
88
|
private readonly chatChains;
|
|
89
|
+
/**
|
|
90
|
+
* Identifies the update chain executing in the current async context so
|
|
91
|
+
* `stop()` called from inside a handler never deadlocks waiting on itself
|
|
92
|
+
* (Telegraf allows `bot.stop()` from within a handler).
|
|
93
|
+
*/
|
|
94
|
+
private readonly currentUpdateChain;
|
|
68
95
|
/** Memoized init so a burst of updates triggers exactly one getMe call. */
|
|
69
96
|
private initOnce;
|
|
70
97
|
private readonly brandingEnabled;
|
|
@@ -80,6 +107,8 @@ export declare class Bot<S extends object = Record<string, unknown>> {
|
|
|
80
107
|
use(...middleware: Middleware<Context<S>>[]): this;
|
|
81
108
|
command(name: string, handler: Middleware<Context<S>>): this;
|
|
82
109
|
callback(pattern: string | RegExp, handler: Middleware<Context<S>>): this;
|
|
110
|
+
/** Telegraf-style alias for `callback()`: registers a handler for callback-query button data. */
|
|
111
|
+
action(pattern: string | RegExp, handler: Middleware<Context<S>>): this;
|
|
83
112
|
onText(text: string, handler: Middleware<Context<S>>): this;
|
|
84
113
|
onRegex(expression: RegExp, handler: Middleware<Context<S>>): this;
|
|
85
114
|
/** Registers a handler for update types: `bot.on("message:photo", handler)` or `bot.on(["message:text", "callback_query:data"], handler)`. */
|
|
@@ -101,13 +130,20 @@ export declare class Bot<S extends object = Record<string, unknown>> {
|
|
|
101
130
|
cancelCommand?: string;
|
|
102
131
|
}): this;
|
|
103
132
|
init(): Promise<this>;
|
|
104
|
-
start(
|
|
133
|
+
start(options?: {
|
|
134
|
+
timeout?: number;
|
|
135
|
+
allowedUpdates?: string[];
|
|
136
|
+
dropPendingUpdates?: boolean;
|
|
137
|
+
}): Promise<void>;
|
|
105
138
|
launch(options?: {
|
|
106
139
|
mode: "polling";
|
|
107
140
|
timeout?: number;
|
|
108
141
|
allowedUpdates?: string[];
|
|
142
|
+
dropPendingUpdates?: boolean;
|
|
109
143
|
}): Promise<void>;
|
|
110
144
|
stop(): Promise<void>;
|
|
145
|
+
/** Waits (bounded by `handlerTimeout`) for updates that are still processing. */
|
|
146
|
+
private drainInFlightUpdates;
|
|
111
147
|
restart(): Promise<void>;
|
|
112
148
|
health(): Promise<HealthStatus>;
|
|
113
149
|
getMe(): Promise<User>;
|
|
@@ -118,8 +154,17 @@ export declare class Bot<S extends object = Record<string, unknown>> {
|
|
|
118
154
|
* updates for the same chat are processed strictly in arrival order so
|
|
119
155
|
* sessions, wizards, and conversations never interleave. Rejects for this
|
|
120
156
|
* update's failure (as before) without affecting other updates.
|
|
157
|
+
*
|
|
158
|
+
* `options.webhookReply` installs a Telegraf-style responder: the first
|
|
159
|
+
* outgoing API call during this update is answered through the webhook HTTP
|
|
160
|
+
* response instead of a separate request, and resolves with `true` because
|
|
161
|
+
* Telegram never sends the method result back to a webhook response.
|
|
121
162
|
*/
|
|
122
|
-
handleUpdate(update: Update
|
|
163
|
+
handleUpdate(update: Update, options?: {
|
|
164
|
+
webhookReply?: WebhookReplySink;
|
|
165
|
+
}): Promise<void>;
|
|
166
|
+
/** Rejects with `UpdateTimeoutError` after `timeoutMs` unless `promise` settles first; `timeoutMs <= 0` or a non-finite value disables the guard. */
|
|
167
|
+
private withTimeout;
|
|
123
168
|
/**
|
|
124
169
|
* Handles a whole batch of updates at once: every chat in the batch is
|
|
125
170
|
* processed immediately (parallel across chats, ordered per chat), so a
|
|
@@ -136,7 +181,7 @@ export declare class Bot<S extends object = Record<string, unknown>> {
|
|
|
136
181
|
* bursts deliver completely instead of failing.
|
|
137
182
|
*/
|
|
138
183
|
broadcast(chatIds: readonly ChatId[], send: (chatId: ChatId) => Promise<unknown>, options?: BroadcastOptions): Promise<BroadcastReport>;
|
|
139
|
-
/** Runs init() once even when many updates arrive concurrently. */
|
|
184
|
+
/** Runs init() once even when many updates arrive concurrently; never claims a webhook reply slot. */
|
|
140
185
|
private ensureInitialized;
|
|
141
186
|
private processUpdate;
|
|
142
187
|
private runUpdate;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bot.d.ts","sourceRoot":"","sources":["../../../src/core/bot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAkB,KAAK,qBAAqB,EAAE,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACjG,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACzF,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAW,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,KAAK,aAAa,EAAE,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACpF,OAAO,EAAE,QAAQ,EAAE,KAAK,QAAQ,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAiB,KAAK,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAwC,MAAM,EAAmB,KAAK,aAAa,EAAmB,MAAM,4BAA4B,CAAC;AAEhJ,OAAO,EAA8B,KAAK,MAAM,EAAE,MAAM,0BAA0B,CAAC;AACnF,OAAO,EAAgB,KAAK,gBAAgB,EAAE,KAAK,eAAe,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"bot.d.ts","sourceRoot":"","sources":["../../../src/core/bot.ts"],"names":[],"mappings":"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"}
|
package/dist/src/core/bot.js
CHANGED
|
@@ -11,6 +11,17 @@ import { printStatusLine, printTeleBibzBanner, runStartupSequence, startTeleBibz
|
|
|
11
11
|
import { conversationKeyFromContext } from "../state/conversation.js";
|
|
12
12
|
import { runBroadcast } from "../broadcast/broadcast.js";
|
|
13
13
|
import { Limiter } from "../utils/concurrency.js";
|
|
14
|
+
import { runWithWebhookReply, runWithoutWebhookReply } from "./webhook-reply.js";
|
|
15
|
+
import { AsyncLocalStorage } from "node:async_hooks";
|
|
16
|
+
/** Thrown when a single update exceeds `handlerTimeout`; the handler keeps running in the background. */
|
|
17
|
+
export class UpdateTimeoutError extends Error {
|
|
18
|
+
name = "UpdateTimeoutError";
|
|
19
|
+
updateId;
|
|
20
|
+
constructor(updateId, timeoutMs) {
|
|
21
|
+
super(`Update ${updateId} handler timed out after ${timeoutMs}ms`);
|
|
22
|
+
this.updateId = updateId;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
14
25
|
export class Bot {
|
|
15
26
|
api;
|
|
16
27
|
router;
|
|
@@ -28,8 +39,18 @@ export class Bot {
|
|
|
28
39
|
me;
|
|
29
40
|
/** Caps how many updates run at once (default: unlimited). */
|
|
30
41
|
updateLimiter;
|
|
42
|
+
/** Per-update timeout in ms; `Infinity` disables. */
|
|
43
|
+
handlerTimeoutMs;
|
|
44
|
+
/** Context class instantiated per update (default `Context`). */
|
|
45
|
+
contextType;
|
|
31
46
|
/** Per-chat processing chains: parallel across chats, ordered within a chat. */
|
|
32
47
|
chatChains = new Map();
|
|
48
|
+
/**
|
|
49
|
+
* Identifies the update chain executing in the current async context so
|
|
50
|
+
* `stop()` called from inside a handler never deadlocks waiting on itself
|
|
51
|
+
* (Telegraf allows `bot.stop()` from within a handler).
|
|
52
|
+
*/
|
|
53
|
+
currentUpdateChain = new AsyncLocalStorage();
|
|
33
54
|
/** Memoized init so a burst of updates triggers exactly one getMe call. */
|
|
34
55
|
initOnce;
|
|
35
56
|
brandingEnabled;
|
|
@@ -59,6 +80,8 @@ export class Bot {
|
|
|
59
80
|
});
|
|
60
81
|
this.plugins = new PluginManager(this);
|
|
61
82
|
this.updateLimiter = new Limiter(config.updates?.concurrency ?? Infinity);
|
|
83
|
+
this.handlerTimeoutMs = config.handlerTimeout ?? 90_000;
|
|
84
|
+
this.contextType = config.contextType ?? Context;
|
|
62
85
|
this.pollingOptions = {
|
|
63
86
|
allowedUpdates: config.polling?.allowedUpdates ?? [],
|
|
64
87
|
limit: config.polling?.limit ?? 100,
|
|
@@ -81,6 +104,8 @@ export class Bot {
|
|
|
81
104
|
use(...middleware) { this.middlewares.push(...middleware); return this; }
|
|
82
105
|
command(name, handler) { this.router.command(name, handler); return this; }
|
|
83
106
|
callback(pattern, handler) { this.router.callback(pattern, handler); return this; }
|
|
107
|
+
/** Telegraf-style alias for `callback()`: registers a handler for callback-query button data. */
|
|
108
|
+
action(pattern, handler) { this.router.callback(pattern, handler); return this; }
|
|
84
109
|
onText(text, handler) { this.router.text(text, handler); return this; }
|
|
85
110
|
onRegex(expression, handler) { this.router.regex(expression, handler); return this; }
|
|
86
111
|
/** Registers a handler for update types: `bot.on("message:photo", handler)` or `bot.on(["message:text", "callback_query:data"], handler)`. */
|
|
@@ -152,7 +177,7 @@ export class Bot {
|
|
|
152
177
|
throw error;
|
|
153
178
|
}
|
|
154
179
|
}
|
|
155
|
-
async start() { await this.launch({ mode: "polling" }); }
|
|
180
|
+
async start(options = {}) { await this.launch({ mode: "polling", ...options }); }
|
|
156
181
|
async launch(options = { mode: "polling" }) {
|
|
157
182
|
if (options.mode !== "polling")
|
|
158
183
|
throw new Error("Use createWebhookHandler() for webhook mode.");
|
|
@@ -177,6 +202,11 @@ export class Bot {
|
|
|
177
202
|
}
|
|
178
203
|
if (this.statusValue === "running")
|
|
179
204
|
return;
|
|
205
|
+
if (options.dropPendingUpdates) {
|
|
206
|
+
// Same mechanism Telegraf uses: drop everything Telegram is holding for
|
|
207
|
+
// this bot before the first getUpdates call.
|
|
208
|
+
await this.api.call("deleteWebhook", { drop_pending_updates: true });
|
|
209
|
+
}
|
|
180
210
|
this.statusValue = "starting";
|
|
181
211
|
this.startupLog("bot.starting", { mode: options.mode });
|
|
182
212
|
await this.events.emit("bot:starting", { bot: this });
|
|
@@ -194,6 +224,9 @@ export class Bot {
|
|
|
194
224
|
await this.events.emit("bot:stopping", { bot: this });
|
|
195
225
|
this.pollingAbort?.abort();
|
|
196
226
|
this.pollingAbort = undefined;
|
|
227
|
+
// Graceful shutdown: wait for updates still being processed (bounded by
|
|
228
|
+
// handlerTimeout) so sessions finish writing before plugins are disposed.
|
|
229
|
+
await this.drainInFlightUpdates();
|
|
197
230
|
await this.plugins.stop();
|
|
198
231
|
await this.plugins.dispose();
|
|
199
232
|
this.statusValue = "stopped";
|
|
@@ -203,6 +236,17 @@ export class Bot {
|
|
|
203
236
|
this.logger.info("bot.stopped");
|
|
204
237
|
await this.events.emit("bot:stopped", { bot: this });
|
|
205
238
|
}
|
|
239
|
+
/** Waits (bounded by `handlerTimeout`) for updates that are still processing. */
|
|
240
|
+
async drainInFlightUpdates() {
|
|
241
|
+
// A handler calling stop() must not wait on its own chain (deadlock); it
|
|
242
|
+
// keeps running in the background, exactly like Telegraf.
|
|
243
|
+
const current = this.currentUpdateChain.getStore();
|
|
244
|
+
const inFlight = [...this.chatChains.values()].filter((chain) => chain !== current);
|
|
245
|
+
if (inFlight.length === 0)
|
|
246
|
+
return;
|
|
247
|
+
this.logger.info("bot.draining_updates", { inFlight: inFlight.length });
|
|
248
|
+
await this.withTimeout(Promise.allSettled(inFlight), this.handlerTimeoutMs, -1);
|
|
249
|
+
}
|
|
206
250
|
async restart() { await this.stop(); await this.start(); }
|
|
207
251
|
async health() {
|
|
208
252
|
try {
|
|
@@ -221,18 +265,62 @@ export class Bot {
|
|
|
221
265
|
* updates for the same chat are processed strictly in arrival order so
|
|
222
266
|
* sessions, wizards, and conversations never interleave. Rejects for this
|
|
223
267
|
* update's failure (as before) without affecting other updates.
|
|
268
|
+
*
|
|
269
|
+
* `options.webhookReply` installs a Telegraf-style responder: the first
|
|
270
|
+
* outgoing API call during this update is answered through the webhook HTTP
|
|
271
|
+
* response instead of a separate request, and resolves with `true` because
|
|
272
|
+
* Telegram never sends the method result back to a webhook response.
|
|
224
273
|
*/
|
|
225
|
-
async handleUpdate(update) {
|
|
274
|
+
async handleUpdate(update, options = {}) {
|
|
226
275
|
const key = this.conversationKey(update);
|
|
227
276
|
const previous = this.chatChains.get(key);
|
|
228
|
-
const
|
|
277
|
+
const execute = options.webhookReply === undefined
|
|
278
|
+
? () => this.processUpdate(update)
|
|
279
|
+
: () => runWithWebhookReply(options.webhookReply, () => this.processUpdate(update));
|
|
280
|
+
// The chain waits for the real completion so same-chat ordering holds
|
|
281
|
+
// even when the caller-facing await below is released by a timeout. The
|
|
282
|
+
// chain is installed as the current AsyncLocalStorage value so a handler
|
|
283
|
+
// calling bot.stop() is excluded from the drain set.
|
|
284
|
+
const run = (previous ?? Promise.resolve()).catch(() => undefined).then(() => this.currentUpdateChain.run(tail, execute));
|
|
229
285
|
const tail = run.then(() => undefined, () => undefined);
|
|
230
286
|
this.chatChains.set(key, tail);
|
|
231
287
|
void tail.then(() => {
|
|
232
288
|
if (this.chatChains.get(key) === tail)
|
|
233
289
|
this.chatChains.delete(key);
|
|
234
290
|
});
|
|
235
|
-
|
|
291
|
+
try {
|
|
292
|
+
await this.withTimeout(run, this.handlerTimeoutMs, update.update_id);
|
|
293
|
+
}
|
|
294
|
+
catch (error) {
|
|
295
|
+
if (!(error instanceof UpdateTimeoutError))
|
|
296
|
+
throw error;
|
|
297
|
+
// A timed-out update follows the same error flow as a failed handler;
|
|
298
|
+
// the handler itself keeps running to completion in the background.
|
|
299
|
+
this.logger.error("update.handler_timeout", { updateId: update.update_id, timeoutMs: this.handlerTimeoutMs });
|
|
300
|
+
await this.events.emit("update:error", { update, error });
|
|
301
|
+
await this.events.emit("bot:error", { bot: this, error });
|
|
302
|
+
if (this.errorHandler) {
|
|
303
|
+
await this.errorHandler(error, new Context({ update, api: this.api, session: {}, services: this.services, me: this.me }));
|
|
304
|
+
return;
|
|
305
|
+
}
|
|
306
|
+
throw error;
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
/** Rejects with `UpdateTimeoutError` after `timeoutMs` unless `promise` settles first; `timeoutMs <= 0` or a non-finite value disables the guard. */
|
|
310
|
+
async withTimeout(promise, timeoutMs, updateId) {
|
|
311
|
+
if (!Number.isFinite(timeoutMs) || timeoutMs <= 0)
|
|
312
|
+
return promise;
|
|
313
|
+
let timer;
|
|
314
|
+
const timeout = new Promise((_, reject) => {
|
|
315
|
+
timer = setTimeout(() => reject(new UpdateTimeoutError(updateId, timeoutMs)), timeoutMs);
|
|
316
|
+
});
|
|
317
|
+
try {
|
|
318
|
+
return await Promise.race([promise, timeout]);
|
|
319
|
+
}
|
|
320
|
+
finally {
|
|
321
|
+
if (timer !== undefined)
|
|
322
|
+
clearTimeout(timer);
|
|
323
|
+
}
|
|
236
324
|
}
|
|
237
325
|
/**
|
|
238
326
|
* Handles a whole batch of updates at once: every chat in the batch is
|
|
@@ -262,12 +350,12 @@ export class Bot {
|
|
|
262
350
|
async broadcast(chatIds, send, options) {
|
|
263
351
|
return runBroadcast(chatIds, send, options);
|
|
264
352
|
}
|
|
265
|
-
/** Runs init() once even when many updates arrive concurrently. */
|
|
353
|
+
/** Runs init() once even when many updates arrive concurrently; never claims a webhook reply slot. */
|
|
266
354
|
ensureInitialized() {
|
|
267
355
|
if (this.me)
|
|
268
356
|
return Promise.resolve();
|
|
269
357
|
if (!this.initOnce) {
|
|
270
|
-
this.initOnce = this.init().then(() => { this.initOnce = undefined; }, (error) => {
|
|
358
|
+
this.initOnce = runWithoutWebhookReply(() => this.init()).then(() => { this.initOnce = undefined; }, (error) => {
|
|
271
359
|
this.initOnce = undefined;
|
|
272
360
|
throw error;
|
|
273
361
|
});
|
|
@@ -293,7 +381,7 @@ export class Bot {
|
|
|
293
381
|
await this.ensureInitialized();
|
|
294
382
|
if (!this.me)
|
|
295
383
|
return;
|
|
296
|
-
const ctx = new
|
|
384
|
+
const ctx = new this.contextType({ update, api: this.api, session, services: this.services, me: this.me });
|
|
297
385
|
await this.events.emit("update", { update });
|
|
298
386
|
if (message) {
|
|
299
387
|
await this.events.emit("message", { message });
|
package/dist/src/core/bot.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bot.js","sourceRoot":"","sources":["../../../src/core/bot.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bot.js","sourceRoot":"","sources":["../../../src/core/bot.ts"],"names":[],"mappings":"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"}
|