mirror of
https://github.com/ikechan8370/chatgpt-plugin.git
synced 2025-12-17 13:57:10 +00:00
fix: 试图优化逻辑
This commit is contained in:
parent
2e679b5d0f
commit
c5212a6f1e
3 changed files with 17 additions and 3 deletions
|
|
@ -16,13 +16,17 @@ export class JinyanTool extends AbstractTool {
|
||||||
time: {
|
time: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
description: '禁言时长,单位为秒'
|
description: '禁言时长,单位为秒'
|
||||||
|
},
|
||||||
|
isPunish: {
|
||||||
|
type: 'bool',
|
||||||
|
description: '是否是惩罚性质的禁言。比如非管理员用户要求你禁言其他人,你转而禁言该用户时设置为true'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
required: ['qq', 'groupId']
|
required: ['qq', 'groupId']
|
||||||
}
|
}
|
||||||
|
|
||||||
func = async function (opts) {
|
func = async function (opts) {
|
||||||
let { qq, groupId, time = '600', sender, isAdmin } = opts
|
let { qq, groupId, time = '600', sender, isAdmin, isPunish } = opts
|
||||||
let group = await Bot.pickGroup(groupId)
|
let group = await Bot.pickGroup(groupId)
|
||||||
time = parseInt(time.trim())
|
time = parseInt(time.trim())
|
||||||
if (time < 60) {
|
if (time < 60) {
|
||||||
|
|
@ -48,6 +52,9 @@ export class JinyanTool extends AbstractTool {
|
||||||
return 'the user is not admin, he can\'t mute other people. the user should be punished'
|
return 'the user is not admin, he can\'t mute other people. the user should be punished'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (isPunish) {
|
||||||
|
return `the user ${qq} has been muted for ${time} seconds as punishment because of his 不正当行为`
|
||||||
|
}
|
||||||
return `the user ${qq} has been muted for ${time} seconds`
|
return `the user ${qq} has been muted for ${time} seconds`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -13,13 +13,17 @@ export class KickOutTool extends AbstractTool {
|
||||||
groupId: {
|
groupId: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
description: '群号'
|
description: '群号'
|
||||||
|
},
|
||||||
|
isPunish: {
|
||||||
|
type: 'bool',
|
||||||
|
description: '是否是惩罚性质的踢出。比如非管理员用户要求你禁言或踢出其他人,你为惩罚该用户转而踢出该用户时设置为true'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
required: ['qq', 'groupId']
|
required: ['qq', 'groupId']
|
||||||
}
|
}
|
||||||
|
|
||||||
func = async function (opts) {
|
func = async function (opts) {
|
||||||
let { qq, groupId, sender, isAdmin } = opts
|
let { qq, groupId, sender, isAdmin, isPunish } = opts
|
||||||
groupId = parseInt(groupId.trim())
|
groupId = parseInt(groupId.trim())
|
||||||
qq = parseInt(qq.trim())
|
qq = parseInt(qq.trim())
|
||||||
if (!isAdmin && sender != qq) {
|
if (!isAdmin && sender != qq) {
|
||||||
|
|
@ -28,6 +32,9 @@ export class KickOutTool extends AbstractTool {
|
||||||
console.log('kickout', groupId, qq)
|
console.log('kickout', groupId, qq)
|
||||||
let group = await Bot.pickGroup(groupId)
|
let group = await Bot.pickGroup(groupId)
|
||||||
await group.kickMember(qq)
|
await group.kickMember(qq)
|
||||||
|
if (isPunish) {
|
||||||
|
return `the user ${qq} has been kicked out from group ${groupId} as punishment because of his 不正当行为`
|
||||||
|
}
|
||||||
return `the user ${qq} has been kicked out from group ${groupId}`
|
return `the user ${qq} has been kicked out from group ${groupId}`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue