MCPcopy Create free account
hub / github.com/TeleBoxOrg/TeleBox_Plugins / handleRemoveTask

Method handleRemoveTask

sendat/sendat.ts:550–580  ·  view source on GitHub ↗
(msg: Api.Message, taskIdStr: string)

Source from the content-addressed store, hash-verified

548 });
549
550 await msg.edit({ text: response, parseMode: "html" });
551 }
552
553 private async handleRemoveTask(msg: Api.Message, taskIdStr: string): Promise<void> {
554 const taskId = parseInt(taskIdStr);
555 if (isNaN(taskId)) {
556 await msg.edit({ text: "❌ 请输入有效的任务ID", parseMode: "html" });
557 return;
558 }
559
560 const task = this.taskManager.getTask(taskId);
561 if (!task) {
562 await msg.edit({ text: "❌ 任务不存在", parseMode: "html" });
563 return;
564 }
565
566 // 权限检查:只能删除自己的任务或者是管理员
567 const chatId = msg.chatId?.toJSNumber() || 0;
568 const userId = msg.senderId?.toJSNumber();
569
570 if (task.cid !== chatId && !(await this.isSudoUser(userId))) {
571 await msg.edit({ text: "❌ 只能删除自己的任务", parseMode: "html" });
572 return;
573 }
574
575 const success = await this.taskManager.removeTask(taskId);
576 if (success) {
577 await msg.edit({ text: `✅ 已删除任务 #${taskId}`, parseMode: "html" });
578 } else {
579 await msg.edit({ text: "❌ 删除任务失败", parseMode: "html" });
580 }
581 }
582
583 private async handlePauseTask(msg: Api.Message, taskIdStr: string): Promise<void> {

Callers 1

handleSendAtCommandMethod · 0.95

Calls 3

getTaskMethod · 0.80
removeTaskMethod · 0.80
editMethod · 0.45

Tested by

no test coverage detected