代码拉取完成,页面将自动刷新
import fetch from "node-fetch";
import plugin from "../../lib/plugins/plugin.js";
let cooldowns = new Map();
let cdtime = 60; // 冷却时间秒
let mr = 300; //自动撤回时间秒
let NumReg = '[一壹二两三四五六七八九十百千万亿\\d]+'
export class iw233 extends plugin {
constructor() {
super({
/** 功能名称 */
name: 'iw233',
/** 功能描述 */
dsc: 'iw233',
/** https://oicqjs.github.io/oicq/#events */
event: 'message',
/** 优先级,数字越小等级越高 */
priority: 500,
rule: [
{
reg: '^#*来份(.*)$',
fnc: 'ciyuan'
},
]
})
}
async ciyuan(e) {
if (!e.isGroup && !e.isMaster) {
e.reply('不可以私聊瑟瑟哦~')
return;
}
if (!e.isMaster ) {
let groupId = e.group_id; // 获取群聊号
const cooldown = cooldowns[groupId];
if (cooldown && cooldown > Date.now()) {
const remainingTime = Math.ceil((cooldown - Date.now()) / 1000);
e.reply("当前群聊共享cd,还有" + remainingTime + "秒~");
return;
}
cooldowns[groupId] = Date.now() + cdtime * 1000;
}
logger.info("[用户命令]", e.msg);
let msg = e.msg.replace(/#|来份/g, "").trim();
msg = msg.replace("来份", "").trim();
let string = msg;
let stringlist = string.split(" ");
let keyword = stringlist[0];
let num = e.msg.match(new RegExp(`(${NumReg})张`));
if (!num) {
num = 10; // 如果没有匹配到复数张图的数量,则默认获取一张图
}
else {
keyword = keyword.replace(num[0], "").trim();
num = Number(num[1])
if (isNaN(num)) {
e.reply('请输入阿拉伯数字');
return;
}
}
if (num>100){e.reply("最大数量100")
return;
}
let url;
if (keyword === "二次元") {
url = `http://api.iw233.cn/api.php?sort=random&type=json&num=${num}`;
} else if (keyword === "兽耳") {
url = `http://api.iw233.cn/api.php?sort=cat&type=json&num=${num}`;
} else if (keyword === "推荐") {
url = `http://api.iw233.cn/api.php?sort=top&type=json&num=${num}`;
} else if (keyword === "银发") {
url = `http://api.iw233.cn/api.php?sort=yin&type=json&num=${num}`;
} else if (keyword === "星空") {
url = `http://api.iw233.cn/api.php?sort=xing&type=json&num=${num}`;
} else if (keyword === "竖屏壁纸") {
url = `http://api.iw233.cn/api.php?sort=mp&type=json&num=${num}`;
} else if (keyword === "横屏壁纸") {
url = `http://api.iw233.cn/api.php?sort=pc&type=json&num=${num}`;
} else {
e.reply("输入例子:#来份星空,仅支持关键词【二次元,推荐,银发,兽耳,星空,竖屏壁纸,横屏壁纸】");
return true;
}
e.reply("开始执行任务"+keyword+" 数量"+num)
let response = ""; //调用接口获取数据
let res = ""; //结果json字符串转对象
let msgRes = [];
let img = [];
try {
response = await fetch(url);
res = await response.json();
for (let i = 0; i < res.pic.length; i++) {
img[i] = res.pic[i]
}
} catch {
e.reply('未知错误')
return
}
console.log(img)
//发送消息
for (let i = 0; i < img.length; i++) {
msgRes.push({
message: segment.image(img[i]),
nickname: e.nickname,
user_id: e.user_id
});
}
let ForwardMsg;
if (e.isGroup) {
ForwardMsg = await e.group.makeForwardMsg(msgRes);
}
let abc = e.reply(ForwardMsg,true,{ recallMsg: mr });//回复消息
if (abc == undefined) {
e.reply("消息被风控了,图被吞掉了捏");
}
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。