karin-plugin-kkk
Version:
Karin 的「抖音」「B 站」视频解析/动态推送插件
63 lines (62 loc) • 2.62 kB
JavaScript
import fs from "node:fs";
import karin, { logger } from "node-karin";
import require$$1 from "path";
import "../chunk/db-39zy-DOZ.js";
import "../root.js";
import "../chunk/vendor-BfPxWvnG.js";
import { C as Config, a as Common } from "../chunk/main-44zR6G4D.js";
import "node-karin/axios";
import "stream/promises";
import "node:path";
const task = Config.app.rmmp4 && karin.task("[kkk-视频缓存自动删除]", "0 0 4 * * *", async () => {
try {
await removeAllFiles(Common.tempDri.video);
logger.mark(Common.tempDri.video + "目录下所有文件已删除");
} catch (err) {
console.error("删除文件时出错:", err);
}
});
const biLogin = karin.command(/^#?(kkk)?\s*B站\s*(扫码)?\s*登录$/i, async (e) => {
await e.reply("暂时不可用");
return true;
}, { perm: Config.bilibili.loginPerm, name: "kkk-ck管理" });
const dylogin = karin.command(/^#?(kkk)?抖音(扫码)?登录$/, async (e) => {
await e.reply("暂时不可用");
return true;
}, { perm: Config.douyin.loginPerm, name: "kkk-ck管理" });
const setdyck = karin.command(/^#?(kkk)?s*设置抖音ck$/i, async (e) => {
const msg = await e.reply("请发在120秒内送抖音ck\n教程:https://ikenxuan.github.io/kkkkkk-10086/docs/intro/other#%E9%85%8D%E7%BD%AE%E4%B8%8D%E5%90%8C%E5%B9%B3%E5%8F%B0%E7%9A%84-cookies\n");
const context = await karin.ctx(e);
Config.Modify("cookies", "douyin", context.msg);
await e.bot.recallMsg(e.contact, msg.messageId);
await e.reply("设置成功!", { at: true });
return true;
}, { perm: "master", name: "kkk-ck管理", event: "message.friend" });
const setbilick = karin.command(/^#?(kkk)?s*设置s*(B站)ck$/i, async (e) => {
const msg = await e.reply("请发在120秒内送B站ck\n教程:https://ikenxuan.github.io/kkkkkk-10086/docs/intro/other#%E9%85%8D%E7%BD%AE%E4%B8%8D%E5%90%8C%E5%B9%B3%E5%8F%B0%E7%9A%84-cookies\n");
const context = await karin.ctx(e);
Config.Modify("cookies", "bilibili", context.msg);
await e.bot.recallMsg(e.contact, msg.messageId);
await e.reply("设置成功!", { at: true });
return true;
}, { perm: "master", name: "kkk-ck管理", event: "message.friend" });
async function removeAllFiles(dir) {
const files = await fs.promises.readdir(dir);
for (const file of files) {
const filePath = require$$1.join(dir, file);
const stats = await fs.promises.stat(filePath);
if (stats.isDirectory()) {
await removeAllFiles(filePath);
await fs.promises.rmdir(filePath);
} else {
await fs.promises.unlink(filePath);
}
}
}
export {
biLogin,
dylogin,
setbilick,
setdyck,
task
};