Merge pull request #268 from huankong233/master

修正错误部分错误
This commit is contained in:
白池 2024-03-01 01:34:47 +08:00 committed by GitHub
commit 352aa5f737
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 32 additions and 17 deletions

View File

@ -16,7 +16,7 @@ import moe.fuqiuluo.symbols.OneBotHandler
import moe.fuqiuluo.symbols.decodeProtobuf import moe.fuqiuluo.symbols.decodeProtobuf
import protobuf.fav.WeiyunComm import protobuf.fav.WeiyunComm
@OneBotHandler("fav.add_text_msg", ["fav.add_text_msg"]) @OneBotHandler("fav.add_text_msg", ["fav.add_text_message"])
internal object FavAddTextMsg: IActionHandler() { internal object FavAddTextMsg: IActionHandler() {
override suspend fun internalHandle(session: ActionSession): String { override suspend fun internalHandle(session: ActionSession): String {
val uin = session.getLong("user_id") val uin = session.getLong("user_id")

View File

@ -106,7 +106,7 @@ internal object QuickOperation : IActionHandler() {
} }
return logic("操作成功", session.echo) return ok("操作成功", session.echo)
} }
override val requiredParams: Array<String> = arrayOf("context", "operation", "self_id") override val requiredParams: Array<String> = arrayOf("context", "operation", "self_id")

View File

@ -7,7 +7,7 @@ import moe.fuqiuluo.shamrock.remote.action.ActionSession
import moe.fuqiuluo.shamrock.remote.action.IActionHandler import moe.fuqiuluo.shamrock.remote.action.IActionHandler
import moe.fuqiuluo.symbols.OneBotHandler import moe.fuqiuluo.symbols.OneBotHandler
@OneBotHandler("sanc_qrcode") @OneBotHandler("scan_qrcode")
internal object ScanQRCode: IActionHandler() { internal object ScanQRCode: IActionHandler() {
override suspend fun internalHandle(session: ActionSession): String { override suspend fun internalHandle(session: ActionSession): String {
val qrcode = QRoute.api(IQRCodeApi::class.java) val qrcode = QRoute.api(IQRCodeApi::class.java)

View File

@ -1,6 +1,7 @@
package moe.fuqiuluo.shamrock.remote.action.handlers package moe.fuqiuluo.shamrock.remote.action.handlers
import com.tencent.qqnt.kernel.nativeinterface.MsgConstant import com.tencent.qqnt.kernel.nativeinterface.MsgConstant
import moe.fuqiuluo.shamrock.helper.ParamsException
import moe.fuqiuluo.shamrock.remote.action.ActionSession import moe.fuqiuluo.shamrock.remote.action.ActionSession
import moe.fuqiuluo.shamrock.remote.action.IActionHandler import moe.fuqiuluo.shamrock.remote.action.IActionHandler
import moe.fuqiuluo.shamrock.tools.jsonArray import moe.fuqiuluo.shamrock.tools.jsonArray
@ -9,19 +10,25 @@ import moe.fuqiuluo.symbols.OneBotHandler
@OneBotHandler("send_group_message", ["send_group_msg"]) @OneBotHandler("send_group_message", ["send_group_msg"])
internal object SendGroupMessage: IActionHandler() { internal object SendGroupMessage: IActionHandler() {
override suspend fun internalHandle(session: ActionSession): String { override suspend fun internalHandle(session: ActionSession): String {
val groupId = session.getLong("group_id") try{
val retryCnt = session.getIntOrNull("retry_cnt") val groupId = session.getLong("group_id")
val recallDuration = session.getLongOrNull("recall_duration") val retryCnt = session.getIntOrNull("retry_cnt")
return if (session.isString("message")) { val recallDuration = session.getLongOrNull("recall_duration")
val autoEscape = session.getBooleanOrDefault("auto_escape", false) return if (session.isString("message")) {
val message = session.getString("message") val autoEscape = session.getBooleanOrDefault("auto_escape", false)
SendMessage(MsgConstant.KCHATTYPEGROUP, groupId.toString(), message, autoEscape, echo = session.echo, retryCnt = retryCnt ?: 5, recallDuration = recallDuration) val message = session.getString("message")
} else if (session.isObject("message")) { SendMessage(MsgConstant.KCHATTYPEGROUP, groupId.toString(), message, autoEscape, echo = session.echo, retryCnt = retryCnt ?: 5, recallDuration = recallDuration)
val message = session.getObject("message") } else if (session.isObject("message")) {
SendMessage(MsgConstant.KCHATTYPEGROUP, groupId.toString(), listOf( message ).jsonArray, session.echo, retryCnt = retryCnt ?: 5, recallDuration = recallDuration) val message = session.getObject("message")
} else { SendMessage(MsgConstant.KCHATTYPEGROUP, groupId.toString(), listOf( message ).jsonArray, session.echo, retryCnt = retryCnt ?: 5, recallDuration = recallDuration)
val message = session.getArray("message") } else {
SendMessage(MsgConstant.KCHATTYPEGROUP, groupId.toString(), message, session.echo, retryCnt = retryCnt ?: 5, recallDuration = recallDuration) val message = session.getArray("message")
SendMessage(MsgConstant.KCHATTYPEGROUP, groupId.toString(), message, session.echo, retryCnt = retryCnt ?: 5, recallDuration = recallDuration)
}
} catch (e: ParamsException) {
return noParam(e.message!!, session.echo)
} catch (e: Throwable) {
return logic(e.message ?: e.toString(), session.echo)
} }
} }

View File

@ -1,7 +1,10 @@
package moe.fuqiuluo.shamrock.remote.action.handlers package moe.fuqiuluo.shamrock.remote.action.handlers
import kotlinx.serialization.SerialName
import kotlinx.serialization.Serializable
import kotlinx.serialization.json.JsonElement import kotlinx.serialization.json.JsonElement
import moe.fuqiuluo.qqinterface.servlet.GroupSvc import moe.fuqiuluo.qqinterface.servlet.GroupSvc
import moe.fuqiuluo.qqinterface.servlet.structures.GuildInfo
import moe.fuqiuluo.shamrock.remote.action.ActionSession import moe.fuqiuluo.shamrock.remote.action.ActionSession
import moe.fuqiuluo.shamrock.remote.action.IActionHandler import moe.fuqiuluo.shamrock.remote.action.IActionHandler
import moe.fuqiuluo.shamrock.tools.EmptyJsonString import moe.fuqiuluo.shamrock.tools.EmptyJsonString
@ -17,11 +20,16 @@ internal object SendGroupSign: IActionHandler() {
suspend operator fun invoke(groupId: Long, echo: JsonElement = EmptyJsonString): String { suspend operator fun invoke(groupId: Long, echo: JsonElement = EmptyJsonString): String {
val ret = GroupSvc.groupSign(groupId) val ret = GroupSvc.groupSign(groupId)
return if (ret.isSuccess) { return if (ret.isSuccess) {
ok(ret.getOrNull() ?: "", echo) ok(Message(message = ret.getOrNull() ?: ""), echo, "成功")
} else { } else {
logic(ret.exceptionOrNull()?.message ?: "", echo) logic(ret.exceptionOrNull()?.message ?: "", echo)
} }
} }
override val requiredParams: Array<String> = arrayOf("group_id") override val requiredParams: Array<String> = arrayOf("group_id")
@Serializable
data class Message(
@SerialName("message") var message: String = ""
)
} }