From 943ee5951b4f4d5817dcf0f67b92d0b7ea3eea48 Mon Sep 17 00:00:00 2001 From: ikechan8370 Date: Mon, 3 Apr 2023 19:21:48 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20bing=E7=BB=98=E5=9B=BE=E5=8F=96=E6=B6=88?= =?UTF-8?q?=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/draw.js | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/apps/draw.js b/apps/draw.js index d41fa71..591b7a7 100644 --- a/apps/draw.js +++ b/apps/draw.js @@ -31,8 +31,7 @@ export class dalle extends plugin { }, { reg: '^#bing(画图|绘图)', - fnc: 'bingDraw', - permission: 'master' + fnc: 'bingDraw' } ] }) @@ -230,7 +229,16 @@ export class dalle extends plugin { } async bingDraw (e) { + let ttl = await redis.ttl(`CHATGPT:DRAW:${e.sender.user_id}`) + if (ttl > 0 && !e.isMaster) { + this.reply(`冷却中,请${ttl}秒后再试`) + return false + } let prompt = e.msg.replace(/^#bing(画图|绘图)/, '') + if (!prompt) { + this.reply('请提供绘图prompt') + return false + } let bingToken = await redis.get('CHATGPT:BING_TOKEN') if (!bingToken) { throw new Error('未绑定Bing Cookie,请使用#chatgpt设置必应token命令绑定Bing Cookie') @@ -246,9 +254,11 @@ export class dalle extends plugin { baseUrl: Config.sydneyReverseProxy, userToken: bingToken }) + await redis.set(`CHATGPT:DRAW:${e.sender.user_id}`, 'c', { EX: 30 }) try { await client.getImages(prompt, e) } catch (err) { + await redis.del(`CHATGPT:DRAW:${e.sender.user_id}`) await e.reply('绘图失败:' + err) } }