fix: format code

This commit is contained in:
ikechan8370 2023-04-14 21:44:06 +08:00
parent 2679206be9
commit 414eb1b098
12 changed files with 819 additions and 908 deletions

View file

@ -57,10 +57,10 @@ try {
const defaultPropmtPrefix = ', a large language model trained by OpenAI. You answer as concisely as possible for each response (e.g. dont be verbose). It is very important that you answer as concisely as possible, so please remember this. If you are generating a list, do not have too many items. Keep the number of items short.'
const newFetch = (url, options = {}) => {
const defaultOptions = Config.proxy
? {
? {
agent: proxy(Config.proxy)
}
: {}
: {}
const mergedOptions = {
...defaultOptions,
...options
@ -848,7 +848,7 @@ export class chatgpt extends plugin {
ttsResponse = response.replace(ttsRegex, '')
// 先把文字回复发出去,避免过久等待合成语音
if (Config.alsoSendText || ttsResponse.length > Config.ttsAutoFallbackThreshold) {
if(ttsResponse.length > Config.ttsAutoFallbackThreshold){
if (ttsResponse.length > Config.ttsAutoFallbackThreshold) {
await this.reply('回复的内容过长,已转为文本模式')
}
await this.reply(await convertFaces(response, Config.enableRobotAt, e), e.isGroup)
@ -876,7 +876,7 @@ export class chatgpt extends plugin {
} catch (err) {
await this.reply('合成语音发生错误~')
}
} else if(!Config.ttsSpace){
} else if (!Config.ttsSpace) {
await this.reply('你没有配置转语音API哦')
}
} else if (userSetting.usePicture || (Config.autoUsePicture && response.length > Config.autoUsePictureThreshold)) {
@ -918,7 +918,7 @@ export class chatgpt extends plugin {
await this.reply(`出现错误:${err}`, true, { recallMsg: e.isGroup ? 10 : 0 })
} else {
// 这里是否还需要上传到缓存服务器呐?多半是代理服务器的问题,本地也修不了,应该不用吧。
await this.renderImage(e, use !== 'bing' ? 'content/ChatGPT/index' : 'content/Bing/index', `通信异常,错误信息如下 ${err?.message || err?.data?.message || (typeof(err) === 'object' ? JSON.stringify(err) : err) || '未能确认错误类型!'}`, prompt)
await this.renderImage(e, use !== 'bing' ? 'content/ChatGPT/index' : 'content/Bing/index', `通信异常,错误信息如下 ${err?.message || err?.data?.message || (typeof (err) === 'object' ? JSON.stringify(err) : err) || '未能确认错误类型!'}`, prompt)
}
}
}
@ -1481,19 +1481,19 @@ export class chatgpt extends plugin {
Authorization: 'Bearer ' + Config.apiKey
}
})
.then(response => response.json())
.then(data => {
if (data.error) {
this.reply('获取失败:' + data.error.code)
return false
} else {
let total_granted = data.total_granted.toFixed(2)
let total_used = data.total_used.toFixed(2)
let total_available = data.total_available.toFixed(2)
let expires_at = new Date(data.grants.data[0].expires_at * 1000).toLocaleDateString().replace(/\//g, '-')
this.reply('总额度:$' + total_granted + '\n已经使用额度$' + total_used + '\n当前剩余额度$' + total_available + '\n到期日期(UTC)' + expires_at)
}
})
.then(response => response.json())
.then(data => {
if (data.error) {
this.reply('获取失败:' + data.error.code)
return false
} else {
let total_granted = data.total_granted.toFixed(2)
let total_used = data.total_used.toFixed(2)
let total_available = data.total_available.toFixed(2)
let expires_at = new Date(data.grants.data[0].expires_at * 1000).toLocaleDateString().replace(/\//g, '-')
this.reply('总额度:$' + total_granted + '\n已经使用额度$' + total_used + '\n当前剩余额度$' + total_available + '\n到期日期(UTC)' + expires_at)
}
})
}
/**

View file

@ -239,7 +239,7 @@ export class dalle extends plugin {
this.reply('请提供绘图prompt')
return false
}
let bingToken = ''
if (await redis.exists('CHATGPT:BING_TOKENS') != 0) {
let bingTokens = JSON.parse(await redis.get('CHATGPT:BING_TOKENS'))
@ -251,7 +251,6 @@ export class dalle extends plugin {
})
bingToken = minElement.Token
} else if (restricted.length > 0) {
allThrottled = true
const minElement = restricted.reduce((min, current) => {
return current.Usage < min.Usage ? current : min
})

View file

@ -221,8 +221,8 @@ export class Entertainment extends plugin {
return false
} else {
Config.initiativeChatGroups = Config.initiativeChatGroups
.filter(group => group.trim() !== '')
.concat(validGroups)
.filter(group => group.trim() !== '')
.concat(validGroups)
}
if (typeof paramArray[2] === 'undefined' && typeof paramArray[3] === 'undefined') {
replyMsg = `已更新打招呼设置:\n${!e.isGroup ? '群号:' + Config.initiativeChatGroups.join(', ') + '\n' : ''}间隔时间:${Config.helloInterval}小时\n触发概率:${Config.helloProbability}%`

View file

@ -321,6 +321,6 @@ export class help extends plugin {
async newHelp (e) {
let use = e.msg.replace(/^#帮助-/, '').toUpperCase().trim()
await renderUrl(e, `http://127.0.0.1:${Config.serverPort || 3321}/help/` + use, {Viewport: {width: 800, height: 600}})
await renderUrl(e, `http://127.0.0.1:${Config.serverPort || 3321}/help/` + use, { Viewport: { width: 800, height: 600 } })
}
}

View file

@ -179,7 +179,7 @@ export class ChatgptManagement extends plugin {
},
{
reg: '^#(设置|修改)用户密码',
fnc: 'setUserPassword',
fnc: 'setUserPassword'
},
{
reg: '^#chatgpt系统(设置|配置|管理)',
@ -188,7 +188,7 @@ export class ChatgptManagement extends plugin {
},
{
reg: '^#chatgpt用户(设置|配置|管理)',
fnc: 'userPage',
fnc: 'userPage'
}
]
})
@ -228,12 +228,12 @@ export class ChatgptManagement extends plugin {
} else {
if (isWhiteList) {
Config.groupWhitelist = Config.groupWhitelist
.filter(group => group.trim() !== '')
.concat(whitelist)
.filter(group => group.trim() !== '')
.concat(whitelist)
} else {
Config.groupBlacklist = Config.groupBlacklist
.filter(group => group.trim() !== '')
.concat(blacklist)
.filter(group => group.trim() !== '')
.concat(blacklist)
}
}
await this.reply(`群聊${isWhiteList ? '白' : '黑'}名单已更新,可通过\n'#chatgpt查看群聊${isWhiteList ? '白' : '黑'}名单'查看最新名单\n#chatgpt移除群聊${isWhiteList ? '白' : '黑'}名单'管理名单`, e.isGroup)
@ -300,6 +300,7 @@ export class ChatgptManagement extends plugin {
await this.reply('设置成功', e.isGroup)
return false
}
async enableGroupContext (e) {
const reg = /(关闭|打开)/
const match = e.msg.match(reg)
@ -417,7 +418,7 @@ export class ChatgptManagement extends plugin {
{
Token: item,
State: '正常',
Usage: 0,
Usage: 0
}
))
} else {
@ -430,16 +431,18 @@ export class ChatgptManagement extends plugin {
tokens = []
}
await redis.set('CHATGPT:BING_TOKENS', JSON.stringify([...token, ...tokens]))
await this.reply(`迁移完成`, true)
await this.reply('迁移完成', true)
}
async getBingAccessToken (e) {
let tokens = await redis.get('CHATGPT:BING_TOKENS')
if (tokens) tokens = JSON.parse(tokens)
if (tokens) tokens = JSON.parse(tokens)
else tokens = []
tokens = tokens.length > 0 ? tokens.map((item, index) => (
tokens = tokens.length > 0
? tokens.map((item, index) => (
`${index}】 Token${item.Token.substring(0, 5 / 2) + '...' + item.Token.substring(item.Token.length - 5 / 2, item.Token.length)}`
)).join('\n') : '无必应Token记录'
)).join('\n')
: '无必应Token记录'
await this.reply(`${tokens}`, true)
return false
}
@ -447,11 +450,13 @@ export class ChatgptManagement extends plugin {
async delBingAccessToken (e) {
this.setContext('deleteBingToken')
let tokens = await redis.get('CHATGPT:BING_TOKENS')
if (tokens) tokens = JSON.parse(tokens)
if (tokens) tokens = JSON.parse(tokens)
else tokens = []
tokens = tokens.length > 0 ? tokens.map((item, index) => (
tokens = tokens.length > 0
? tokens.map((item, index) => (
`${index}】 Token${item.Token.substring(0, 5 / 2) + '...' + item.Token.substring(item.Token.length - 5 / 2, item.Token.length)}`
)).join('\n') : '无必应Token记录'
)).join('\n')
: '无必应Token记录'
await this.reply(`请发送要删除的token编号\n${tokens}`, true)
if (tokens.length == 0) this.finish('saveBingToken')
return false
@ -495,16 +500,18 @@ export class ChatgptManagement extends plugin {
let bingToken = []
if (await redis.exists('CHATGPT:BING_TOKENS') != 0) {
bingToken = JSON.parse(await redis.get('CHATGPT:BING_TOKENS'))
if (!bingToken.some(element => element.token === token)) bingToken.push({
Token: token,
State: '正常',
Usage: 0,
})
if (!bingToken.some(element => element.token === token)) {
bingToken.push({
Token: token,
State: '正常',
Usage: 0
})
}
} else {
bingToken = [{
Token: token,
State: '正常',
Usage: 0,
Usage: 0
}]
}
await redis.set('CHATGPT:BING_TOKENS', JSON.stringify(bingToken))
@ -519,14 +526,13 @@ export class ChatgptManagement extends plugin {
let bingToken = JSON.parse(await redis.get('CHATGPT:BING_TOKENS'))
if (tokenId >= 0 && tokenId < bingToken.length) {
const removeToken = bingToken[tokenId].Token
bingToken.splice(tokenId,1)
bingToken.splice(tokenId, 1)
await redis.set('CHATGPT:BING_TOKENS', JSON.stringify(bingToken))
await this.reply(`Token ${removeToken.substring(0, 5 / 2) + '...' + removeToken.substring(removeToken.length - 5 / 2, removeToken.length)} 移除成功`, true)
this.finish('deleteBingToken')
} else {
await this.reply('Token编号错误', true)
this.finish('deleteBingToken')
return
}
} else {
await this.reply('Token记录异常', true)
@ -929,7 +935,7 @@ export class ChatgptManagement extends plugin {
}
async setAdminPassword (e) {
if (e.isGroup || e.isPrivate) {
if (e.isGroup || !e.isPrivate) {
await this.reply('请私聊发生命令', true)
return true
}
@ -937,8 +943,9 @@ export class ChatgptManagement extends plugin {
await this.reply('请发送系统管理密码', true)
return false
}
async setUserPassword (e) {
if (e.isGroup || e.isPrivate) {
if (e.isGroup || !e.isPrivate) {
await this.reply('请私聊发生命令', true)
return true
}
@ -946,7 +953,7 @@ export class ChatgptManagement extends plugin {
await this.reply('请发送系统用户密码', true)
return false
}
async saveAdminPassword (e) {
if (!this.e.msg) return
const passwd = this.e.msg
@ -954,6 +961,7 @@ export class ChatgptManagement extends plugin {
await this.reply('设置成功', true)
this.finish('saveAdminPassword')
}
async saveUserPassword (e) {
if (!this.e.msg) return
const passwd = this.e.msg
@ -972,7 +980,6 @@ export class ChatgptManagement extends plugin {
fs.writeFile(filepath, JSON.stringify(config), 'utf8', (err) => {
if (err) {
console.error(err)
return
}
})
})
@ -984,7 +991,6 @@ export class ChatgptManagement extends plugin {
}), 'utf8', (err) => {
if (err) {
console.error(err)
return
}
})
}
@ -1009,5 +1015,4 @@ export class ChatgptManagement extends plugin {
const viewHost = Config.serverHost ? `http://${Config.serverHost}/` : `http://${await getPublicIP()}:${Config.serverPort || 3321}/`
await this.reply(`请登录${viewHost + 'admin/dashboard'}进行系统配置`, true)
}
}