From f34a4a58e4af1f94ac0d5a36570b94e8f94c2cb0 Mon Sep 17 00:00:00 2001 From: 3944Realms Date: Sat, 16 Aug 2025 18:50:45 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E9=83=A8=E5=88=86Req?= =?UTF-8?q?uest=E8=AF=B7=E6=B1=82=E6=8A=BD=E8=B1=A1=E7=B1=BB=20=EF=BC=88?= =?UTF-8?q?=E7=AC=AC2=E6=AC=A1=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ltdmanager/napcat/data/MessageElement.kt | 4 + .../requests/message/DeleteMsgRequest.kt | 21 +++ .../requests/message/FetchEmojiLikeRequest.kt | 34 ++++ .../requests/message/GetForwardMsgRequest.kt | 37 ++++ .../message/GetFriendMsgHistoryRequest.kt | 37 ++++ .../message/GetGroupMsgHistoryRequest.kt | 37 ++++ .../requests/message/GetImageRequest.kt | 28 +++ .../napcat/requests/message/GetMsgRequest.kt | 21 +++ .../requests/message/GetRecordRequest.kt | 42 +++++ .../requests/message/SendForwardMsgRequest.kt | 170 ++++++++++++++++++ .../message/SendGroupAiRecordRequest.kt | 31 ++++ .../requests/message/SendPokeRequest.kt | 36 ++++ .../message/SetMsgEmojiLikeRequest.kt | 32 ++++ .../group/ForwardGroupSingleMsgRequest.kt | 25 +++ .../message/group/GroupPokeRequest.kt | 25 +++ .../group/SendGroupForwardMsgRequest.kt | 41 +++++ .../message/group/SendGroupMsgRequest.kt | 24 +++ .../personal/ForwardFriendSingleMsgRequest.kt | 25 +++ .../message/personal/FriendPokeRequest.kt | 31 ++++ .../personal/SendPrivateForwardMsgRequest.kt | 42 +++++ .../message/personal/SendPrivateMsgRequest.kt | 24 +++ .../requests/other/CheckUrlSafelyRequest.kt | 18 ++ .../other/GetCollectionListRequest.kt | 21 +++ .../other/GetGroupIgnoreAddRequestRequest.kt | 16 ++ .../requests/other/GetGuildListRequest.kt | 18 ++ .../other/GetGuildServiceProfileRequest.kt | 18 ++ .../requests/other/SendGroupMsgRequest.kt | 24 +++ .../napcat/requests/other/SendMsgRequest.kt | 32 ++++ .../requests/other/SendPrivateMsgRequest.kt | 24 +++ .../napcat/requests/other/UnknownRequest.kt | 18 ++ 30 files changed, 956 insertions(+) create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/data/MessageElement.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/DeleteMsgRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/FetchEmojiLikeRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetForwardMsgRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetFriendMsgHistoryRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetGroupMsgHistoryRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetImageRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetMsgRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetRecordRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/SendForwardMsgRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/SendGroupAiRecordRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/SendPokeRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/SetMsgEmojiLikeRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/group/ForwardGroupSingleMsgRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/group/GroupPokeRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/group/SendGroupForwardMsgRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/group/SendGroupMsgRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/personal/ForwardFriendSingleMsgRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/personal/FriendPokeRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/personal/SendPrivateForwardMsgRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/personal/SendPrivateMsgRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/CheckUrlSafelyRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/GetCollectionListRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/GetGroupIgnoreAddRequestRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/GetGuildListRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/GetGuildServiceProfileRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/SendGroupMsgRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/SendMsgRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/SendPrivateMsgRequest.kt create mode 100644 src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/UnknownRequest.kt diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/data/MessageElement.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/data/MessageElement.kt new file mode 100644 index 0000000..cc41410 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/data/MessageElement.kt @@ -0,0 +1,4 @@ +package top.r3944realms.ltdmanager.napcat.data + +class MessageElement { +} \ No newline at end of file diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/DeleteMsgRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/DeleteMsgRequest.kt new file mode 100644 index 0000000..049d11b --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/DeleteMsgRequest.kt @@ -0,0 +1,21 @@ + +package top.r3944realms.ltdmanager.napcat.requests.message + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import org.yaml.snakeyaml.events.Event.ID + +/** + * DeleteMsg请求 + */ +@Serializable +data class DeleteMsgRequest( + @SerialName("message_id") + val messageId: ID +) : AbstractMessageRequest() { + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/delete_msg" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/FetchEmojiLikeRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/FetchEmojiLikeRequest.kt new file mode 100644 index 0000000..7e47876 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/FetchEmojiLikeRequest.kt @@ -0,0 +1,34 @@ + +package top.r3944realms.ltdmanager.napcat.requests.message + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.data.ID + +/** + * FetchEmojiLike请求 + */ +@Serializable +data class FetchEmojiLikeRequest( + val count: Double? = null, + + /** + * 表情ID + */ + @SerialName("emojiId") + val emojiId: String, + + /** + * 表情类型 + */ + val emojiType: String, + + @SerialName("message_id") + val messageId: ID +) : AbstractMessageRequest() { + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/fetch_emoji_like" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetForwardMsgRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetForwardMsgRequest.kt new file mode 100644 index 0000000..fb20eb1 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetForwardMsgRequest.kt @@ -0,0 +1,37 @@ + +package top.r3944realms.ltdmanager.napcat.requests.message + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.data.ID + +/** + * GetForwardMsg请求 + */ +@Serializable +data class GetForwardMsgRequest( + /** + * 数量 + */ + val count: Double? = null, + + /** + * 0为最新 + */ + @SerialName("message_seq") + val messageSeq: ID? = null, + + /** + * 倒序 + */ + val reverseOrder: Boolean? = null, + + @SerialName("user_id") + val userId: ID +) : AbstractMessageRequest() { + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/get_forward_msg" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetFriendMsgHistoryRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetFriendMsgHistoryRequest.kt new file mode 100644 index 0000000..39ae589 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetFriendMsgHistoryRequest.kt @@ -0,0 +1,37 @@ + +package top.r3944realms.ltdmanager.napcat.requests.message + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.data.ID + +/** + * GetFriendMsgHistory请求 + */ +@Serializable +data class GetFriendMsgHistoryRequest( + /** + * 数量 + */ + val count: Double? = null, + + /** + * 0为最新 + */ + @SerialName("message_seq") + val messageSeq: ID? = null, + + /** + * 倒序 + */ + val reverseOrder: Boolean? = null, + + @SerialName("user_id") + val userId: ID +) : AbstractMessageRequest() { + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/get_friend_msg_history" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetGroupMsgHistoryRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetGroupMsgHistoryRequest.kt new file mode 100644 index 0000000..8af3583 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetGroupMsgHistoryRequest.kt @@ -0,0 +1,37 @@ + +package top.r3944realms.ltdmanager.napcat.requests.message + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.data.ID + +/** + * GetGroupMsgHistory请求 + */ +@Serializable +data class GetGroupMsgHistoryRequest( + /** + * 数量 + */ + val count: Double? = null, + + @SerialName("group_id") + val groupId: ID, + + /** + * 0为最新 + */ + @SerialName("message_seq") + val messageSeq: ID? = null, + + /** + * 倒序 + */ + val reverseOrder: Boolean? = null +) : AbstractMessageRequest() { + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/get_group_msg_history" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetImageRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetImageRequest.kt new file mode 100644 index 0000000..7989be5 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetImageRequest.kt @@ -0,0 +1,28 @@ + +package top.r3944realms.ltdmanager.napcat.requests.message + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json + +/** + * GetImage请求 + */ +@Serializable +data class GetImageRequest( + /** + * 二选一 + */ + val file: String? = null, + + /** + * 二选一 + */ + @SerialName("file_id") + val fileId: String? = null +) : AbstractMessageRequest() { + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/get_image" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetMsgRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetMsgRequest.kt new file mode 100644 index 0000000..5021576 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetMsgRequest.kt @@ -0,0 +1,21 @@ + +package top.r3944realms.ltdmanager.napcat.requests.message + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.data.ID + +/** + * GetMsg请求 + */ +@Serializable +data class GetMsgRequest( + @SerialName("message_id") + val messageId: ID +) : AbstractMessageRequest() { + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/get_msg" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetRecordRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetRecordRequest.kt new file mode 100644 index 0000000..21ee554 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/GetRecordRequest.kt @@ -0,0 +1,42 @@ + +package top.r3944realms.ltdmanager.napcat.requests.message + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json + +/** + * GetRecord请求 + */ +@Serializable +data class GetRecordRequest( + val file: String? = null, + + @SerialName("file_id") + val fileId: String? = null, + + /** + * 输出格式 + */ + @SerialName("out_format") + val outFormat: OutFormat +) : AbstractMessageRequest() { + /** + * 输出格式 + */ + @Serializable + enum class OutFormat(val value: String) { + @SerialName("amr") AMR("amr"), + @SerialName("flac") FLAC("flac"), + @SerialName("m4a") M4A("m4a"), + @SerialName("mp3") Mp3("mp3"), + @SerialName("ogg") Ogg("ogg"), + @SerialName("spx") Spx("spx"), + @SerialName("wma") WMA("wma"), + @SerialName("wav") Wav("wav"); + } + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/get_record" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/SendForwardMsgRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/SendForwardMsgRequest.kt new file mode 100644 index 0000000..617893a --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/SendForwardMsgRequest.kt @@ -0,0 +1,170 @@ + +package top.r3944realms.ltdmanager.napcat.requests.message + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.data.ID +import top.r3944realms.ltdmanager.napcat.data.MessageType + +/** + * SendForwardMsg请求 + */ +@Serializable +data class SendForwardMsgRequest( + @SerialName("group_id") + val groupId: ID? = null, + + val messages: List, + val news: List, + + /** + * 外显 + */ + val prompt: String, + + /** + * 内容 + */ + val source: String, + + /** + * 底下文本 + */ + val summary: String, + + @SerialName("user_id") + val userId: ID? = null +) : AbstractMessageRequest() { + /** + * 一级合并转发消息 + */ + @Serializable + data class TopForwardMsg ( + val data: MessageData, + val type: MessageType + ) + + @Serializable + data class MessageData ( + /** + * 构建 + */ + val content: List, + + val nickname: String, + + @SerialName("user_id") + val userId: ID + ) + + @Serializable + sealed class ContentUnion { + class ContentClassValue(val value: ContentClass) : ContentUnion() + class StringValue(val value: String) : ContentUnion() + class MessageListValue(val value: List) : ContentUnion() + } + + @Serializable + data class PurpleData ( + val text: String? = null, + val id: ID? = null, + val file: String? = null, + + /** + * 外显 + * + * 底下文本 + */ + val summary: String? = null, + + val data: String? = null, + val name: String? = null, + + /** + * 构建 + */ + val content: ContentUnion? = null, + + val nickname: String? = null, + + @SerialName("user_id") + val userId: ID? = null, + + /** + * 外显 + */ + val news: List? = null, + + /** + * 外显 + */ + val prompt: String? = null, + + /** + * 标题 + */ + val source: String? = null + ) + /** + * 文本消息 + * + * 表情消息 + * + * 图片消息 + * + * 回复消息 + * + * JSON消息 + * + * 视频消息 + * + * 文件消息 + * + * markdown消息 + * + * 发送forward + * + * 二级合并转发消息 + */ + @Serializable + data class Message ( + val data: PurpleData, + val type: MessageType, + ) + @Serializable + data class ContentClass ( + val data: FluffyData, + val type: PurpleType + ) + + @Serializable + data class FluffyData ( + /** + * res_id + */ + val id: String + ) + + @Serializable + enum class PurpleType(val value: String) { + @SerialName("forward") Forward("forward"); + } + + @Serializable + data class DataNews ( + /** + * 内容 + */ + val text: String + ) + + @Serializable + data class ForwardModelNews ( + val text: String + ) + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/send_forward_msg" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/SendGroupAiRecordRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/SendGroupAiRecordRequest.kt new file mode 100644 index 0000000..98037d6 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/SendGroupAiRecordRequest.kt @@ -0,0 +1,31 @@ + +package top.r3944realms.ltdmanager.napcat.requests.message + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.data.ID + +/** + * SendGroupAiRecord请求 + */ +@Serializable +data class SendGroupAiRecordRequest( + /** + * character_id + */ + val character: String, + + @SerialName("group_id") + val groupId: ID, + + /** + * 文本 + */ + val text: String +) : AbstractMessageRequest() { + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/send_group_ai_record" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/SendPokeRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/SendPokeRequest.kt new file mode 100644 index 0000000..4775a26 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/SendPokeRequest.kt @@ -0,0 +1,36 @@ + +package top.r3944realms.ltdmanager.napcat.requests.message + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.data.ID + +/** + * SendPoke请求 + */ +@Serializable +data class SendPokeRequest( + /** + * 不填则为私聊戳 + */ + @SerialName("group_id") + val groupId: ID? = null, + + /** + * 戳一戳对象 + */ + @SerialName("target_id") + val targetId: String? = null, + + /** + * 必填 + */ + @SerialName("user_id") + val userId: ID +) : AbstractMessageRequest() { + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/send_poke" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/SetMsgEmojiLikeRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/SetMsgEmojiLikeRequest.kt new file mode 100644 index 0000000..bb17a95 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/SetMsgEmojiLikeRequest.kt @@ -0,0 +1,32 @@ + +package top.r3944realms.ltdmanager.napcat.requests.message + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.data.ID + +/** + * SetMsgEmojiLike请求 + */ +@Serializable +data class SetMsgEmojiLikeRequest( + /** + * 表情ID + */ + @SerialName("emoji_id") + val emojiId: Double, + + @SerialName("message_id") + val messageId: ID, + + /** + * 是否贴 + */ + val set: Boolean +) : AbstractMessageRequest() { + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/set_msg_emoji_like" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/group/ForwardGroupSingleMsgRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/group/ForwardGroupSingleMsgRequest.kt new file mode 100644 index 0000000..925d844 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/group/ForwardGroupSingleMsgRequest.kt @@ -0,0 +1,25 @@ + +package top.r3944realms.ltdmanager.napcat.requests.message.group + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.data.ID +import top.r3944realms.ltdmanager.napcat.requests.message.AbstractMessageRequest + +/** + * ForwardGroupSingleMsg请求 + */ +@Serializable +data class ForwardGroupSingleMsgRequest( + @SerialName("group_id") + val groupId: ID, + + @SerialName("message_id") + val messageId: ID +) : AbstractMessageRequest() { + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/forward_group_single_msg" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/group/GroupPokeRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/group/GroupPokeRequest.kt new file mode 100644 index 0000000..56fd774 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/group/GroupPokeRequest.kt @@ -0,0 +1,25 @@ + +package top.r3944realms.ltdmanager.napcat.requests.message.group + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.data.ID +import top.r3944realms.ltdmanager.napcat.requests.message.AbstractMessageRequest + +/** + * GroupPoke请求 + */ +@Serializable +data class GroupPokeRequest( + @SerialName("group_id") + val groupId: ID, + + @SerialName("user_id") + val userId: ID +) : AbstractMessageRequest() { + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/group_poke" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/group/SendGroupForwardMsgRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/group/SendGroupForwardMsgRequest.kt new file mode 100644 index 0000000..fa0e80b --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/group/SendGroupForwardMsgRequest.kt @@ -0,0 +1,41 @@ + +package top.r3944realms.ltdmanager.napcat.requests.message.group + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.data.ID +import top.r3944realms.ltdmanager.napcat.requests.message.AbstractMessageRequest +import top.r3944realms.ltdmanager.napcat.requests.message.SendForwardMsgRequest.ForwardModelNews +import top.r3944realms.ltdmanager.napcat.requests.message.SendForwardMsgRequest.TopForwardMsg + +/** + * SendGroupForwardMsg请求 + */ +@Serializable +data class SendGroupForwardMsgRequest( + @SerialName("group_id") + val groupId: ID, + val messages: List, + val news: List, + /** + * 外显 + */ + val prompt: String, + + /** + * 内容 + */ + val source: String, + + /** + * 底下文本 + */ + val summary: String +) : AbstractMessageRequest() { + + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/send_group_forward_msg" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/group/SendGroupMsgRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/group/SendGroupMsgRequest.kt new file mode 100644 index 0000000..9acf390 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/group/SendGroupMsgRequest.kt @@ -0,0 +1,24 @@ + +package top.r3944realms.ltdmanager.napcat.requests.message.group + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.data.ID +import top.r3944realms.ltdmanager.napcat.data.MessageElement +import top.r3944realms.ltdmanager.napcat.requests.message.AbstractMessageRequest + +/** + * SendGroupMsg请求 + */ +@Serializable +data class SendGroupMsgRequest( + @SerialName("group_id") + val groupId: ID, + val message: List +) : AbstractMessageRequest() { + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/send_group_msg" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/personal/ForwardFriendSingleMsgRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/personal/ForwardFriendSingleMsgRequest.kt new file mode 100644 index 0000000..f200964 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/personal/ForwardFriendSingleMsgRequest.kt @@ -0,0 +1,25 @@ + +package top.r3944realms.ltdmanager.napcat.requests.message.personal + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.data.ID +import top.r3944realms.ltdmanager.napcat.requests.message.AbstractMessageRequest + +/** + * ForwardFriendSingleMsg请求 + */ +@Serializable +data class ForwardFriendSingleMsgRequest( + @SerialName("message_id") + val messageId: ID, + + @SerialName("user_id") + val userId: ID +) : AbstractMessageRequest() { + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/forward_friend_single_msg" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/personal/FriendPokeRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/personal/FriendPokeRequest.kt new file mode 100644 index 0000000..8f7f80a --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/personal/FriendPokeRequest.kt @@ -0,0 +1,31 @@ + +package top.r3944realms.ltdmanager.napcat.requests.message.personal + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.data.ID +import top.r3944realms.ltdmanager.napcat.requests.message.AbstractMessageRequest + +/** + * FriendPoke请求 + */ +@Serializable +data class FriendPokeRequest( + /** + * 戳一戳对象,可不填 + */ + @SerialName("target_id") + val targetID: ID? = null, + + /** + * 私聊对象 + */ + @SerialName("user_id") + val userID: ID +) : AbstractMessageRequest() { + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/friend_poke" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/personal/SendPrivateForwardMsgRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/personal/SendPrivateForwardMsgRequest.kt new file mode 100644 index 0000000..9c5c767 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/personal/SendPrivateForwardMsgRequest.kt @@ -0,0 +1,42 @@ + +package top.r3944realms.ltdmanager.napcat.requests.message.personal + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.data.ID +import top.r3944realms.ltdmanager.napcat.requests.message.AbstractMessageRequest +import top.r3944realms.ltdmanager.napcat.requests.message.SendForwardMsgRequest.ForwardModelNews +import top.r3944realms.ltdmanager.napcat.requests.message.SendForwardMsgRequest.TopForwardMsg + +/** + * SendPrivateForwardMsg请求 + */ +@Serializable +data class SendPrivateForwardMsgRequest( + val messages: List, + val news: List, + + /** + * 外显 + */ + val prompt: String, + + /** + * 内容 + */ + val source: String, + + /** + * 底下文本 + */ + val summary: String, + + @SerialName("user_id") + val userId: ID? = null +) : AbstractMessageRequest() { + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/send_private_forward_msg" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/personal/SendPrivateMsgRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/personal/SendPrivateMsgRequest.kt new file mode 100644 index 0000000..0d23a64 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/message/personal/SendPrivateMsgRequest.kt @@ -0,0 +1,24 @@ + +package top.r3944realms.ltdmanager.napcat.requests.message.personal + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.data.ID +import top.r3944realms.ltdmanager.napcat.data.MessageElement +import top.r3944realms.ltdmanager.napcat.requests.message.AbstractMessageRequest + +/** + * SendPrivateMsg请求 + */ +@Serializable +data class SendPrivateMsgRequest( + @SerialName("user_id") + val userId: ID, + val message: List +) : AbstractMessageRequest() { + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/send_private_msg" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/CheckUrlSafelyRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/CheckUrlSafelyRequest.kt new file mode 100644 index 0000000..ff8e1d0 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/CheckUrlSafelyRequest.kt @@ -0,0 +1,18 @@ + +package top.r3944realms.ltdmanager.napcat.requests.other + +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.Developing + +/** + * CheckUrlSafely请求 + */ +@Developing +@Serializable +class CheckUrlSafelyRequest : AbstractOtherRequest() { + override fun toJSON(): String = "{}" + + override fun path(): String = "/check_url_safely" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/GetCollectionListRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/GetCollectionListRequest.kt new file mode 100644 index 0000000..1cdb748 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/GetCollectionListRequest.kt @@ -0,0 +1,21 @@ + +package top.r3944realms.ltdmanager.napcat.requests.other + +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.Developing + +/** + * GetCollectionList请求 + */ +@Developing +@Serializable +data class GetCollectionListRequest( + val category: Int, + val count: Int +) : AbstractOtherRequest() { + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/get_collection_list" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/GetGroupIgnoreAddRequestRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/GetGroupIgnoreAddRequestRequest.kt new file mode 100644 index 0000000..8e973f4 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/GetGroupIgnoreAddRequestRequest.kt @@ -0,0 +1,16 @@ + +package top.r3944realms.ltdmanager.napcat.requests.other + +import kotlinx.serialization.Serializable +import top.r3944realms.ltdmanager.napcat.Developing + +/** + * GetGroupIgnoreAdd请求 + */ +@Developing +@Serializable +class GetGroupIgnoreAddRequestRequest : AbstractOtherRequest() { + override fun toJSON(): String = "{}" + + override fun path(): String = "/get_group_ignore_add_request" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/GetGuildListRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/GetGuildListRequest.kt new file mode 100644 index 0000000..2bdc362 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/GetGuildListRequest.kt @@ -0,0 +1,18 @@ + +package top.r3944realms.ltdmanager.napcat.requests.other + +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.Developing + +/** + * GetGuildList请求 + */ +@Developing +@Serializable +class GetGuildListRequest : AbstractOtherRequest() { + override fun toJSON(): String = "{}" + + override fun path(): String = "/get_guild_list" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/GetGuildServiceProfileRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/GetGuildServiceProfileRequest.kt new file mode 100644 index 0000000..b76aa2e --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/GetGuildServiceProfileRequest.kt @@ -0,0 +1,18 @@ + +package top.r3944realms.ltdmanager.napcat.requests.other + +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.Developing + +/** + * GetGuildServiceProfile请求 + */ +@Developing +@Serializable +class GetGuildServiceProfileRequest: AbstractOtherRequest() { + override fun toJSON(): String = "{}" + + override fun path(): String = "/get_guild_service_profile" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/SendGroupMsgRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/SendGroupMsgRequest.kt new file mode 100644 index 0000000..381703b --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/SendGroupMsgRequest.kt @@ -0,0 +1,24 @@ + +package top.r3944realms.ltdmanager.napcat.requests.other + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.data.ID +import top.r3944realms.ltdmanager.napcat.data.MessageElement + +/** + * SendGroupMsg请求 + */ +@Serializable +data class SendGroupMsgRequest( + val message: List, + + @SerialName("group_id") + val groupId: ID +) : AbstractOtherRequest() { + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/send_group_msg" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/SendMsgRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/SendMsgRequest.kt new file mode 100644 index 0000000..450db85 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/SendMsgRequest.kt @@ -0,0 +1,32 @@ + +package top.r3944realms.ltdmanager.napcat.requests.other + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.data.ID +import top.r3944realms.ltdmanager.napcat.data.MessageElement + +/** + * SendMsg请求 + */ +@Serializable +data class SendMsgRequest( + val message: List, + @SerialName("message_type") + val messageType: MessageType, + @SerialName("group_id") + val groupId: ID, + @SerialName("user_id") + val userId: ID +) : AbstractOtherRequest() { + @Serializable + enum class MessageType(val value: String) { + @SerialName("private")PRIVATE("private"), + @SerialName("group")GROUP("group"), + } + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/send_msg" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/SendPrivateMsgRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/SendPrivateMsgRequest.kt new file mode 100644 index 0000000..d07987f --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/SendPrivateMsgRequest.kt @@ -0,0 +1,24 @@ + +package top.r3944realms.ltdmanager.napcat.requests.other + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.data.ID +import top.r3944realms.ltdmanager.napcat.data.MessageElement + +/** + * SendPrivateMsg请求 + */ +@Serializable +data class SendPrivateMsgRequest( + val message: List, + + @SerialName("user_id") + val userId: ID +) : AbstractOtherRequest() { + override fun toJSON(): String = Json.encodeToString(this) + + override fun path(): String = "/send_private_msg" +} diff --git a/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/UnknownRequest.kt b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/UnknownRequest.kt new file mode 100644 index 0000000..0331051 --- /dev/null +++ b/src/main/kotlin/top/r3944realms/ltdmanager/napcat/requests/other/UnknownRequest.kt @@ -0,0 +1,18 @@ + +package top.r3944realms.ltdmanager.napcat.requests.other + +import kotlinx.serialization.Serializable +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import top.r3944realms.ltdmanager.napcat.Developing + +/** + * Unknown请求 + */ +@Developing +@Serializable +class UnknownRequest: AbstractOtherRequest() { + override fun toJSON(): String = "{}" + + override fun path(): String = "/unknown" +}