fix(telegram): use numeric callback message ids
This commit is contained in:
1 parent
b826ff1044
commit
a4e7247271
3 files changed
+57
-51
No files matched your search
Vendored
+19
-17
@@ -5978,7 +5978,7 @@ async function handleStorageCleanupCallback(client2, update, data) {
|
||||
const stats = await scanLocalDownloadFiles();
|
||||
if (data === "storage_clear_cancel") {
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: stats.count > 0 ? `\u5DF2\u53D6\u6D88\u6E05\u7406\u3002\u5F53\u524D\u672C\u5730\u4E0B\u8F7D\u6587\u4EF6\uFF1A${stats.count} \u4E2A\uFF0C\u5360\u7528 ${formatBytes(stats.totalSize)}\u3002` : "\u5DF2\u53D6\u6D88\u6E05\u7406\u3002\u5F53\u524D\u6CA1\u6709\u672C\u5730\u4E0B\u8F7D\u6587\u4EF6\u3002",
|
||||
buttons: buildStorageMaintenanceKeyboard(stats.count)
|
||||
});
|
||||
@@ -5987,7 +5987,7 @@ async function handleStorageCleanupCallback(client2, update, data) {
|
||||
}
|
||||
if (data === "storage_clear_ask") {
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: [
|
||||
"\u26A0\uFE0F **\u786E\u8BA4\u5220\u9664\u672C\u5730\u670D\u52A1\u5668\u5168\u90E8\u4E0B\u8F7D\u6587\u4EF6\uFF1F**",
|
||||
"",
|
||||
@@ -6014,7 +6014,7 @@ async function handleStorageCleanupCallback(client2, update, data) {
|
||||
}
|
||||
const after = await scanLocalDownloadFiles();
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: [
|
||||
"\u2705 **\u672C\u5730\u670D\u52A1\u5668\u4E0B\u8F7D\u6587\u4EF6\u5DF2\u6E05\u7406**",
|
||||
"",
|
||||
@@ -6102,7 +6102,7 @@ async function handleDeleteConfirmCallback(client2, update, data) {
|
||||
}
|
||||
if (action === "cancel") {
|
||||
pendingDeleteConfirmations.delete(confirmId);
|
||||
await client2.editMessage(update.peer, { message: update.msgId, text: `\u5DF2\u53D6\u6D88\u5220\u9664\uFF1A${pending.name}`, buttons: new Api4.ReplyInlineMarkup({ rows: [] }) });
|
||||
await client2.editMessage(update.peer, { message: Number(update.msgId), text: `\u5DF2\u53D6\u6D88\u5220\u9664\uFF1A${pending.name}`, buttons: new Api4.ReplyInlineMarkup({ rows: [] }) });
|
||||
await client2.invoke(new Api4.messages.SetBotCallbackAnswer({ queryId: update.queryId, message: "\u5DF2\u53D6\u6D88" }));
|
||||
return;
|
||||
}
|
||||
@@ -6112,7 +6112,7 @@ async function handleDeleteConfirmCallback(client2, update, data) {
|
||||
const file = result.rows[0];
|
||||
if (!file) {
|
||||
pendingDeleteConfirmations.delete(confirmId);
|
||||
await client2.editMessage(update.peer, { message: update.msgId, text: "\u274C \u6587\u4EF6\u5DF2\u4E0D\u5B58\u5728\u6216\u4E0D\u5728\u5F53\u524D\u5B58\u50A8\u8303\u56F4\u5185\u3002", buttons: new Api4.ReplyInlineMarkup({ rows: [] }) });
|
||||
await client2.editMessage(update.peer, { message: Number(update.msgId), text: "\u274C \u6587\u4EF6\u5DF2\u4E0D\u5B58\u5728\u6216\u4E0D\u5728\u5F53\u524D\u5B58\u50A8\u8303\u56F4\u5185\u3002", buttons: new Api4.ReplyInlineMarkup({ rows: [] }) });
|
||||
await client2.invoke(new Api4.messages.SetBotCallbackAnswer({ queryId: update.queryId, message: "\u6587\u4EF6\u4E0D\u5B58\u5728", alert: true }));
|
||||
return;
|
||||
}
|
||||
@@ -6123,7 +6123,7 @@ async function handleDeleteConfirmCallback(client2, update, data) {
|
||||
}
|
||||
await query("DELETE FROM files WHERE id = $1", [file.id]);
|
||||
pendingDeleteConfirmations.delete(confirmId);
|
||||
await client2.editMessage(update.peer, { message: update.msgId, text: buildDeleteSuccess(file.name, file.id), buttons: new Api4.ReplyInlineMarkup({ rows: [] }) });
|
||||
await client2.editMessage(update.peer, { message: Number(update.msgId), text: buildDeleteSuccess(file.name, file.id), buttons: new Api4.ReplyInlineMarkup({ rows: [] }) });
|
||||
await client2.invoke(new Api4.messages.SetBotCallbackAnswer({ queryId: update.queryId, message: "\u5DF2\u5220\u9664" }));
|
||||
} catch (error) {
|
||||
console.error("\u{1F916} \u786E\u8BA4\u5220\u9664\u6587\u4EF6\u5931\u8D25:", error);
|
||||
@@ -6312,7 +6312,7 @@ async function handlePathRulesCallback(client2, update, data) {
|
||||
return;
|
||||
}
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: buildPathSettingsText(pathCenterState, chatKey),
|
||||
buttons: buildPathSettingsKeyboard(pathCenterState)
|
||||
});
|
||||
@@ -6341,7 +6341,7 @@ async function handleDuplicateModeCallback(client2, update, data) {
|
||||
const mode = match[1];
|
||||
await setSetting("duplicate_file_mode", mode);
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: buildDuplicateModeText(mode),
|
||||
buttons: buildDuplicateModeKeyboard(mode)
|
||||
});
|
||||
@@ -6374,7 +6374,7 @@ async function handleCleanupSettingsCallback(client2, update, data) {
|
||||
stopPeriodicCleanup();
|
||||
}
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: buildCleanupSettingsText(enabled),
|
||||
buttons: buildCleanupSettingsKeyboard(enabled)
|
||||
});
|
||||
@@ -6398,7 +6398,7 @@ async function handleDownloadWorkersCallback(client2, update, data) {
|
||||
if (data === "dw_cancel") {
|
||||
const current = await getCurrentDownloadWorkers();
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: buildDownloadWorkersText(current),
|
||||
buttons: buildDownloadWorkersKeyboard(current)
|
||||
});
|
||||
@@ -6410,7 +6410,7 @@ async function handleDownloadWorkersCallback(client2, update, data) {
|
||||
const workers = Number(setMatch[1]);
|
||||
if (workers >= 12) {
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: [
|
||||
`\u26A0\uFE0F **\u786E\u8BA4\u4F7F\u7528 ${workers} workers\uFF1F**`,
|
||||
"",
|
||||
@@ -6428,7 +6428,7 @@ async function handleDownloadWorkersCallback(client2, update, data) {
|
||||
}
|
||||
await setSetting("telegram_download_workers", String(workers));
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: `${buildDownloadWorkersText(workers)}
|
||||
|
||||
\u2705 \u5DF2\u5207\u6362\u4E3A ${workers} workers\uFF0C\u540E\u7EED\u65B0\u4E0B\u8F7D\u4EFB\u52A1\u7ACB\u5373\u751F\u6548\u3002`,
|
||||
@@ -6442,7 +6442,7 @@ async function handleDownloadWorkersCallback(client2, update, data) {
|
||||
const workers = Number(confirmMatch[1]);
|
||||
await setSetting("telegram_download_workers", String(workers));
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: `${buildDownloadWorkersText(workers)}
|
||||
|
||||
\u26A0\uFE0F \u5DF2\u786E\u8BA4\u5E76\u5207\u6362\u4E3A ${workers} workers\u3002\u82E5\u51FA\u73B0\u65AD\u6D41\u3001\u9650\u901F\u3001\u98CE\u63A7\u63D0\u793A\uFF0C\u8BF7\u7ACB\u5373\u964D\u56DE 4 \u6216 8\u3002`,
|
||||
@@ -6474,7 +6474,7 @@ async function handleFileConcurrencyCallback(client2, update, data) {
|
||||
const current = await getCurrentFileConcurrency();
|
||||
setFileDownloadConcurrency(current);
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: buildFileConcurrencyText(current),
|
||||
buttons: buildFileConcurrencyKeyboard(current)
|
||||
});
|
||||
@@ -6486,7 +6486,7 @@ async function handleFileConcurrencyCallback(client2, update, data) {
|
||||
const concurrency = Number(setMatch[1]);
|
||||
if (concurrency === 4) {
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: [
|
||||
"\u26A0\uFE0F **\u786E\u8BA4\u540C\u65F6\u4E0B\u8F7D 4 \u4E2A\u6587\u4EF6\uFF1F**",
|
||||
"",
|
||||
@@ -6505,7 +6505,8 @@ async function handleFileConcurrencyCallback(client2, update, data) {
|
||||
await setSetting("telegram_file_download_concurrency", String(concurrency));
|
||||
const normalized = setFileDownloadConcurrency(concurrency);
|
||||
await client2.editMessage(update.peer, {
|
||||
message: `${buildFileConcurrencyText(normalized)}
|
||||
message: Number(update.msgId),
|
||||
text: `${buildFileConcurrencyText(normalized)}
|
||||
|
||||
\u2705 \u5DF2\u5207\u6362\u4E3A\u540C\u65F6\u4E0B\u8F7D ${normalized} \u4E2A\u6587\u4EF6\u3002`,
|
||||
buttons: buildFileConcurrencyKeyboard(normalized)
|
||||
@@ -6518,7 +6519,8 @@ async function handleFileConcurrencyCallback(client2, update, data) {
|
||||
await setSetting("telegram_file_download_concurrency", "4");
|
||||
const normalized = setFileDownloadConcurrency(4);
|
||||
await client2.editMessage(update.peer, {
|
||||
message: `${buildFileConcurrencyText(normalized)}
|
||||
message: Number(update.msgId),
|
||||
text: `${buildFileConcurrencyText(normalized)}
|
||||
|
||||
\u26A0\uFE0F \u5DF2\u786E\u8BA4\u5E76\u5207\u6362\u4E3A\u540C\u65F6\u4E0B\u8F7D 4 \u4E2A\u6587\u4EF6\u3002\u82E5\u51FA\u73B0\u9650\u6D41\u3001\u65AD\u6D41\u6216\u4E0A\u4F20\u5931\u8D25\uFF0C\u8BF7\u7ACB\u5373\u964D\u56DE 2 \u6216 3\u3002`,
|
||||
buttons: buildFileConcurrencyKeyboard(normalized)
|
||||
|
||||
@@ -376,7 +376,7 @@ export async function handleStorageCleanupCallback(client: TelegramClient, updat
|
||||
const stats = await scanLocalDownloadFiles();
|
||||
if (data === 'storage_clear_cancel') {
|
||||
await client.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: stats.count > 0 ? `已取消清理。当前本地下载文件:${stats.count} 个,占用 ${formatBytes(stats.totalSize)}。` : '已取消清理。当前没有本地下载文件。',
|
||||
buttons: buildStorageMaintenanceKeyboard(stats.count),
|
||||
});
|
||||
@@ -386,7 +386,7 @@ export async function handleStorageCleanupCallback(client: TelegramClient, updat
|
||||
|
||||
if (data === 'storage_clear_ask') {
|
||||
await client.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: [
|
||||
'⚠️ **确认删除本地服务器全部下载文件?**',
|
||||
'',
|
||||
@@ -414,7 +414,7 @@ export async function handleStorageCleanupCallback(client: TelegramClient, updat
|
||||
}
|
||||
const after = await scanLocalDownloadFiles();
|
||||
await client.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: [
|
||||
'✅ **本地服务器下载文件已清理**',
|
||||
'',
|
||||
@@ -548,7 +548,7 @@ export async function handleDeleteConfirmCallback(client: TelegramClient, update
|
||||
}
|
||||
if (action === 'cancel') {
|
||||
pendingDeleteConfirmations.delete(confirmId);
|
||||
await client.editMessage(update.peer, { message: update.msgId, text: `已取消删除:${pending.name}`, buttons: new Api.ReplyInlineMarkup({ rows: [] }) });
|
||||
await client.editMessage(update.peer, { message: Number(update.msgId), text: `已取消删除:${pending.name}`, buttons: new Api.ReplyInlineMarkup({ rows: [] }) });
|
||||
await client.invoke(new Api.messages.SetBotCallbackAnswer({ queryId: update.queryId, message: '已取消' }));
|
||||
return;
|
||||
}
|
||||
@@ -558,14 +558,14 @@ export async function handleDeleteConfirmCallback(client: TelegramClient, update
|
||||
const file = result.rows[0];
|
||||
if (!file) {
|
||||
pendingDeleteConfirmations.delete(confirmId);
|
||||
await client.editMessage(update.peer, { message: update.msgId, text: '❌ 文件已不存在或不在当前存储范围内。', buttons: new Api.ReplyInlineMarkup({ rows: [] }) });
|
||||
await client.editMessage(update.peer, { message: Number(update.msgId), text: '❌ 文件已不存在或不在当前存储范围内。', buttons: new Api.ReplyInlineMarkup({ rows: [] }) });
|
||||
await client.invoke(new Api.messages.SetBotCallbackAnswer({ queryId: update.queryId, message: '文件不存在', alert: true }));
|
||||
return;
|
||||
}
|
||||
try { await removePhysicalFile(file); } catch (err) { console.warn('🤖 文件物理删除失败或文件已不存在:', err); }
|
||||
await query('DELETE FROM files WHERE id = $1', [file.id]);
|
||||
pendingDeleteConfirmations.delete(confirmId);
|
||||
await client.editMessage(update.peer, { message: update.msgId, text: buildDeleteSuccess(file.name, file.id), buttons: new Api.ReplyInlineMarkup({ rows: [] }) });
|
||||
await client.editMessage(update.peer, { message: Number(update.msgId), text: buildDeleteSuccess(file.name, file.id), buttons: new Api.ReplyInlineMarkup({ rows: [] }) });
|
||||
await client.invoke(new Api.messages.SetBotCallbackAnswer({ queryId: update.queryId, message: '已删除' }));
|
||||
} catch (error) {
|
||||
console.error('🤖 确认删除文件失败:', error);
|
||||
@@ -749,7 +749,7 @@ export async function handlePathRulesCallback(client: TelegramClient, update: Ap
|
||||
}
|
||||
|
||||
await client.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: buildPathSettingsText(pathCenterState, chatKey),
|
||||
buttons: buildPathSettingsKeyboard(pathCenterState),
|
||||
});
|
||||
@@ -781,7 +781,7 @@ export async function handleDuplicateModeCallback(client: TelegramClient, update
|
||||
const mode = match[1] as DuplicateMode;
|
||||
await setSetting('duplicate_file_mode', mode);
|
||||
await client.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: buildDuplicateModeText(mode),
|
||||
buttons: buildDuplicateModeKeyboard(mode),
|
||||
});
|
||||
@@ -817,7 +817,7 @@ export async function handleCleanupSettingsCallback(client: TelegramClient, upda
|
||||
stopPeriodicCleanup();
|
||||
}
|
||||
await client.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: buildCleanupSettingsText(enabled),
|
||||
buttons: buildCleanupSettingsKeyboard(enabled),
|
||||
});
|
||||
@@ -843,7 +843,7 @@ export async function handleDownloadWorkersCallback(client: TelegramClient, upda
|
||||
if (data === 'dw_cancel') {
|
||||
const current = await getCurrentDownloadWorkers();
|
||||
await client.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: buildDownloadWorkersText(current),
|
||||
buttons: buildDownloadWorkersKeyboard(current),
|
||||
});
|
||||
@@ -856,7 +856,7 @@ export async function handleDownloadWorkersCallback(client: TelegramClient, upda
|
||||
const workers = Number(setMatch[1]);
|
||||
if (workers >= 12) {
|
||||
await client.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: [
|
||||
`⚠️ **确认使用 ${workers} workers?**`,
|
||||
'',
|
||||
@@ -875,7 +875,7 @@ export async function handleDownloadWorkersCallback(client: TelegramClient, upda
|
||||
|
||||
await setSetting('telegram_download_workers', String(workers));
|
||||
await client.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: `${buildDownloadWorkersText(workers)}\n\n✅ 已切换为 ${workers} workers,后续新下载任务立即生效。`,
|
||||
buttons: buildDownloadWorkersKeyboard(workers),
|
||||
});
|
||||
@@ -888,7 +888,7 @@ export async function handleDownloadWorkersCallback(client: TelegramClient, upda
|
||||
const workers = Number(confirmMatch[1]);
|
||||
await setSetting('telegram_download_workers', String(workers));
|
||||
await client.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: `${buildDownloadWorkersText(workers)}\n\n⚠️ 已确认并切换为 ${workers} workers。若出现断流、限速、风控提示,请立即降回 4 或 8。`,
|
||||
buttons: buildDownloadWorkersKeyboard(workers),
|
||||
});
|
||||
@@ -920,7 +920,7 @@ export async function handleFileConcurrencyCallback(client: TelegramClient, upda
|
||||
const current = await getCurrentFileConcurrency();
|
||||
setFileDownloadConcurrency(current);
|
||||
await client.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: buildFileConcurrencyText(current),
|
||||
buttons: buildFileConcurrencyKeyboard(current),
|
||||
});
|
||||
@@ -933,7 +933,7 @@ export async function handleFileConcurrencyCallback(client: TelegramClient, upda
|
||||
const concurrency = Number(setMatch[1]);
|
||||
if (concurrency === 4) {
|
||||
await client.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: [
|
||||
'⚠️ **确认同时下载 4 个文件?**',
|
||||
'',
|
||||
@@ -953,7 +953,8 @@ export async function handleFileConcurrencyCallback(client: TelegramClient, upda
|
||||
await setSetting('telegram_file_download_concurrency', String(concurrency));
|
||||
const normalized = setFileDownloadConcurrency(concurrency);
|
||||
await client.editMessage(update.peer, {
|
||||
message: `${buildFileConcurrencyText(normalized)}\n\n✅ 已切换为同时下载 ${normalized} 个文件。`,
|
||||
message: Number(update.msgId),
|
||||
text: `${buildFileConcurrencyText(normalized)}\n\n✅ 已切换为同时下载 ${normalized} 个文件。`,
|
||||
buttons: buildFileConcurrencyKeyboard(normalized),
|
||||
});
|
||||
await client.invoke(new Api.messages.SetBotCallbackAnswer({ queryId: update.queryId, message: `已设置为 ${normalized}` }));
|
||||
@@ -965,7 +966,8 @@ export async function handleFileConcurrencyCallback(client: TelegramClient, upda
|
||||
await setSetting('telegram_file_download_concurrency', '4');
|
||||
const normalized = setFileDownloadConcurrency(4);
|
||||
await client.editMessage(update.peer, {
|
||||
message: `${buildFileConcurrencyText(normalized)}\n\n⚠️ 已确认并切换为同时下载 4 个文件。若出现限流、断流或上传失败,请立即降回 2 或 3。`,
|
||||
message: Number(update.msgId),
|
||||
text: `${buildFileConcurrencyText(normalized)}\n\n⚠️ 已确认并切换为同时下载 4 个文件。若出现限流、断流或上传失败,请立即降回 2 或 3。`,
|
||||
buttons: buildFileConcurrencyKeyboard(normalized),
|
||||
});
|
||||
await client.invoke(new Api.messages.SetBotCallbackAnswer({ queryId: update.queryId, message: '已确认 4 个文件并发', alert: true }));
|
||||
|
||||
Vendored
+19
-17
@@ -5978,7 +5978,7 @@ async function handleStorageCleanupCallback(client2, update, data) {
|
||||
const stats = await scanLocalDownloadFiles();
|
||||
if (data === "storage_clear_cancel") {
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: stats.count > 0 ? `\u5DF2\u53D6\u6D88\u6E05\u7406\u3002\u5F53\u524D\u672C\u5730\u4E0B\u8F7D\u6587\u4EF6\uFF1A${stats.count} \u4E2A\uFF0C\u5360\u7528 ${formatBytes(stats.totalSize)}\u3002` : "\u5DF2\u53D6\u6D88\u6E05\u7406\u3002\u5F53\u524D\u6CA1\u6709\u672C\u5730\u4E0B\u8F7D\u6587\u4EF6\u3002",
|
||||
buttons: buildStorageMaintenanceKeyboard(stats.count)
|
||||
});
|
||||
@@ -5987,7 +5987,7 @@ async function handleStorageCleanupCallback(client2, update, data) {
|
||||
}
|
||||
if (data === "storage_clear_ask") {
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: [
|
||||
"\u26A0\uFE0F **\u786E\u8BA4\u5220\u9664\u672C\u5730\u670D\u52A1\u5668\u5168\u90E8\u4E0B\u8F7D\u6587\u4EF6\uFF1F**",
|
||||
"",
|
||||
@@ -6014,7 +6014,7 @@ async function handleStorageCleanupCallback(client2, update, data) {
|
||||
}
|
||||
const after = await scanLocalDownloadFiles();
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: [
|
||||
"\u2705 **\u672C\u5730\u670D\u52A1\u5668\u4E0B\u8F7D\u6587\u4EF6\u5DF2\u6E05\u7406**",
|
||||
"",
|
||||
@@ -6102,7 +6102,7 @@ async function handleDeleteConfirmCallback(client2, update, data) {
|
||||
}
|
||||
if (action === "cancel") {
|
||||
pendingDeleteConfirmations.delete(confirmId);
|
||||
await client2.editMessage(update.peer, { message: update.msgId, text: `\u5DF2\u53D6\u6D88\u5220\u9664\uFF1A${pending.name}`, buttons: new Api4.ReplyInlineMarkup({ rows: [] }) });
|
||||
await client2.editMessage(update.peer, { message: Number(update.msgId), text: `\u5DF2\u53D6\u6D88\u5220\u9664\uFF1A${pending.name}`, buttons: new Api4.ReplyInlineMarkup({ rows: [] }) });
|
||||
await client2.invoke(new Api4.messages.SetBotCallbackAnswer({ queryId: update.queryId, message: "\u5DF2\u53D6\u6D88" }));
|
||||
return;
|
||||
}
|
||||
@@ -6112,7 +6112,7 @@ async function handleDeleteConfirmCallback(client2, update, data) {
|
||||
const file = result.rows[0];
|
||||
if (!file) {
|
||||
pendingDeleteConfirmations.delete(confirmId);
|
||||
await client2.editMessage(update.peer, { message: update.msgId, text: "\u274C \u6587\u4EF6\u5DF2\u4E0D\u5B58\u5728\u6216\u4E0D\u5728\u5F53\u524D\u5B58\u50A8\u8303\u56F4\u5185\u3002", buttons: new Api4.ReplyInlineMarkup({ rows: [] }) });
|
||||
await client2.editMessage(update.peer, { message: Number(update.msgId), text: "\u274C \u6587\u4EF6\u5DF2\u4E0D\u5B58\u5728\u6216\u4E0D\u5728\u5F53\u524D\u5B58\u50A8\u8303\u56F4\u5185\u3002", buttons: new Api4.ReplyInlineMarkup({ rows: [] }) });
|
||||
await client2.invoke(new Api4.messages.SetBotCallbackAnswer({ queryId: update.queryId, message: "\u6587\u4EF6\u4E0D\u5B58\u5728", alert: true }));
|
||||
return;
|
||||
}
|
||||
@@ -6123,7 +6123,7 @@ async function handleDeleteConfirmCallback(client2, update, data) {
|
||||
}
|
||||
await query("DELETE FROM files WHERE id = $1", [file.id]);
|
||||
pendingDeleteConfirmations.delete(confirmId);
|
||||
await client2.editMessage(update.peer, { message: update.msgId, text: buildDeleteSuccess(file.name, file.id), buttons: new Api4.ReplyInlineMarkup({ rows: [] }) });
|
||||
await client2.editMessage(update.peer, { message: Number(update.msgId), text: buildDeleteSuccess(file.name, file.id), buttons: new Api4.ReplyInlineMarkup({ rows: [] }) });
|
||||
await client2.invoke(new Api4.messages.SetBotCallbackAnswer({ queryId: update.queryId, message: "\u5DF2\u5220\u9664" }));
|
||||
} catch (error) {
|
||||
console.error("\u{1F916} \u786E\u8BA4\u5220\u9664\u6587\u4EF6\u5931\u8D25:", error);
|
||||
@@ -6312,7 +6312,7 @@ async function handlePathRulesCallback(client2, update, data) {
|
||||
return;
|
||||
}
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: buildPathSettingsText(pathCenterState, chatKey),
|
||||
buttons: buildPathSettingsKeyboard(pathCenterState)
|
||||
});
|
||||
@@ -6341,7 +6341,7 @@ async function handleDuplicateModeCallback(client2, update, data) {
|
||||
const mode = match[1];
|
||||
await setSetting("duplicate_file_mode", mode);
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: buildDuplicateModeText(mode),
|
||||
buttons: buildDuplicateModeKeyboard(mode)
|
||||
});
|
||||
@@ -6374,7 +6374,7 @@ async function handleCleanupSettingsCallback(client2, update, data) {
|
||||
stopPeriodicCleanup();
|
||||
}
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: buildCleanupSettingsText(enabled),
|
||||
buttons: buildCleanupSettingsKeyboard(enabled)
|
||||
});
|
||||
@@ -6398,7 +6398,7 @@ async function handleDownloadWorkersCallback(client2, update, data) {
|
||||
if (data === "dw_cancel") {
|
||||
const current = await getCurrentDownloadWorkers();
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: buildDownloadWorkersText(current),
|
||||
buttons: buildDownloadWorkersKeyboard(current)
|
||||
});
|
||||
@@ -6410,7 +6410,7 @@ async function handleDownloadWorkersCallback(client2, update, data) {
|
||||
const workers = Number(setMatch[1]);
|
||||
if (workers >= 12) {
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: [
|
||||
`\u26A0\uFE0F **\u786E\u8BA4\u4F7F\u7528 ${workers} workers\uFF1F**`,
|
||||
"",
|
||||
@@ -6428,7 +6428,7 @@ async function handleDownloadWorkersCallback(client2, update, data) {
|
||||
}
|
||||
await setSetting("telegram_download_workers", String(workers));
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: `${buildDownloadWorkersText(workers)}
|
||||
|
||||
\u2705 \u5DF2\u5207\u6362\u4E3A ${workers} workers\uFF0C\u540E\u7EED\u65B0\u4E0B\u8F7D\u4EFB\u52A1\u7ACB\u5373\u751F\u6548\u3002`,
|
||||
@@ -6442,7 +6442,7 @@ async function handleDownloadWorkersCallback(client2, update, data) {
|
||||
const workers = Number(confirmMatch[1]);
|
||||
await setSetting("telegram_download_workers", String(workers));
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: `${buildDownloadWorkersText(workers)}
|
||||
|
||||
\u26A0\uFE0F \u5DF2\u786E\u8BA4\u5E76\u5207\u6362\u4E3A ${workers} workers\u3002\u82E5\u51FA\u73B0\u65AD\u6D41\u3001\u9650\u901F\u3001\u98CE\u63A7\u63D0\u793A\uFF0C\u8BF7\u7ACB\u5373\u964D\u56DE 4 \u6216 8\u3002`,
|
||||
@@ -6474,7 +6474,7 @@ async function handleFileConcurrencyCallback(client2, update, data) {
|
||||
const current = await getCurrentFileConcurrency();
|
||||
setFileDownloadConcurrency(current);
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: buildFileConcurrencyText(current),
|
||||
buttons: buildFileConcurrencyKeyboard(current)
|
||||
});
|
||||
@@ -6486,7 +6486,7 @@ async function handleFileConcurrencyCallback(client2, update, data) {
|
||||
const concurrency = Number(setMatch[1]);
|
||||
if (concurrency === 4) {
|
||||
await client2.editMessage(update.peer, {
|
||||
message: update.msgId,
|
||||
message: Number(update.msgId),
|
||||
text: [
|
||||
"\u26A0\uFE0F **\u786E\u8BA4\u540C\u65F6\u4E0B\u8F7D 4 \u4E2A\u6587\u4EF6\uFF1F**",
|
||||
"",
|
||||
@@ -6505,7 +6505,8 @@ async function handleFileConcurrencyCallback(client2, update, data) {
|
||||
await setSetting("telegram_file_download_concurrency", String(concurrency));
|
||||
const normalized = setFileDownloadConcurrency(concurrency);
|
||||
await client2.editMessage(update.peer, {
|
||||
message: `${buildFileConcurrencyText(normalized)}
|
||||
message: Number(update.msgId),
|
||||
text: `${buildFileConcurrencyText(normalized)}
|
||||
|
||||
\u2705 \u5DF2\u5207\u6362\u4E3A\u540C\u65F6\u4E0B\u8F7D ${normalized} \u4E2A\u6587\u4EF6\u3002`,
|
||||
buttons: buildFileConcurrencyKeyboard(normalized)
|
||||
@@ -6518,7 +6519,8 @@ async function handleFileConcurrencyCallback(client2, update, data) {
|
||||
await setSetting("telegram_file_download_concurrency", "4");
|
||||
const normalized = setFileDownloadConcurrency(4);
|
||||
await client2.editMessage(update.peer, {
|
||||
message: `${buildFileConcurrencyText(normalized)}
|
||||
message: Number(update.msgId),
|
||||
text: `${buildFileConcurrencyText(normalized)}
|
||||
|
||||
\u26A0\uFE0F \u5DF2\u786E\u8BA4\u5E76\u5207\u6362\u4E3A\u540C\u65F6\u4E0B\u8F7D 4 \u4E2A\u6587\u4EF6\u3002\u82E5\u51FA\u73B0\u9650\u6D41\u3001\u65AD\u6D41\u6216\u4E0A\u4F20\u5931\u8D25\uFF0C\u8BF7\u7ACB\u5373\u964D\u56DE 2 \u6216 3\u3002`,
|
||||
buttons: buildFileConcurrencyKeyboard(normalized)
|
||||
|
||||
Reference in new issue
Block a user