mirror of
https://github.com/jie65535/JChatGPT.git
synced 2025-12-08 18:31:36 +08:00
Initial commit
This commit is contained in:
54
src/main/kotlin/PluginCommands.kt
Normal file
54
src/main/kotlin/PluginCommands.kt
Normal file
@@ -0,0 +1,54 @@
|
||||
package top.jie65535.mirai
|
||||
|
||||
import net.mamoe.mirai.console.command.CommandSender
|
||||
import net.mamoe.mirai.console.command.CompositeCommand
|
||||
import net.mamoe.mirai.console.permission.PermissionService.Companion.permit
|
||||
import net.mamoe.mirai.console.permission.PermitteeId.Companion.permitteeId
|
||||
import net.mamoe.mirai.contact.Contact
|
||||
import net.mamoe.mirai.contact.Group
|
||||
import net.mamoe.mirai.contact.Member
|
||||
import net.mamoe.mirai.contact.User
|
||||
import top.jie65535.mirai.JChatGPT.reload
|
||||
import top.jie65535.mirai.JChatGPT.save
|
||||
|
||||
object PluginCommands : CompositeCommand(
|
||||
JChatGPT, "jgpt", description = "J OpenAI ChatGPT"
|
||||
) {
|
||||
@SubCommand
|
||||
suspend fun CommandSender.setToken(token: String) {
|
||||
PluginConfig.openAiToken = token
|
||||
PluginConfig.save()
|
||||
JChatGPT.updateOpenAiToken(token)
|
||||
sendMessage("OK")
|
||||
}
|
||||
|
||||
@SubCommand
|
||||
suspend fun CommandSender.enable(contact: Contact) {
|
||||
when (contact) {
|
||||
is Member -> contact.permitteeId.permit(JChatGPT.chatPermission)
|
||||
is User -> contact.permitteeId.permit(JChatGPT.chatPermission)
|
||||
is Group -> contact.permitteeId.permit(JChatGPT.chatPermission)
|
||||
}
|
||||
sendMessage("OK")
|
||||
}
|
||||
|
||||
@SubCommand
|
||||
suspend fun CommandSender.disable(contact: Contact) {
|
||||
when (contact) {
|
||||
is Member -> contact.permitteeId.permit(JChatGPT.chatPermission)
|
||||
is User -> contact.permitteeId.permit(JChatGPT.chatPermission)
|
||||
is Group -> contact.permitteeId.permit(JChatGPT.chatPermission)
|
||||
}
|
||||
sendMessage("OK")
|
||||
}
|
||||
|
||||
@SubCommand
|
||||
suspend fun CommandSender.reload() {
|
||||
val token = PluginConfig.openAiToken
|
||||
PluginConfig.reload()
|
||||
if (token != PluginConfig.openAiToken) {
|
||||
JChatGPT.updateOpenAiToken(PluginConfig.openAiToken)
|
||||
}
|
||||
sendMessage("OK")
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user