feat: 完成请求的类抽象化
This commit is contained in:
parent
f34a4a58e4
commit
bf6c5b9a46
|
|
@ -9,6 +9,6 @@ def main():
|
|||
"/forward_group_single_msg", # 转发单条消息到群
|
||||
"/group_poke" # 发送群聊戳一戳
|
||||
]
|
||||
kg.generateEventKt("message.group", "AbstractGroup", api_paths)
|
||||
kg.generateEventKt("message.group", "AbstractMessage", api_paths)
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
|
@ -17,6 +17,6 @@ def main():
|
|||
"/get_image", # 获取图片消息详情
|
||||
"/send_group_ai_record" # 发送群AI语音
|
||||
]
|
||||
kg.generateEventKt("message", "AbstractGroup", api_paths)
|
||||
kg.generateEventKt("message", "AbstractMessage", api_paths)
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
|
@ -4,11 +4,11 @@ sys.path.append("../..") # 添加父目录到模块搜索路径
|
|||
import KtEventGenerator as kg
|
||||
def main():
|
||||
api_paths = [
|
||||
"/send_private_msg", # 发送私聊消息(文本、图片、表情、JSON、语音、视频、回复、音乐卡片等)
|
||||
"/send_private_forward_msg", # 发送私聊合并转发消息
|
||||
"/forward_friend_single_msg", # 转发单条消息到私聊
|
||||
"/friend_poke" # 发送私聊戳一戳
|
||||
"/send_private_msg", # 发送私聊消息(文本、图片、表情、JSON、语音、视频、回复、音乐卡片等)
|
||||
"/send_private_forward_msg", # 发送私聊合并转发消息
|
||||
"/forward_friend_single_msg", # 转发单条消息到私聊
|
||||
"/friend_poke" # 发送私聊戳一戳
|
||||
]
|
||||
kg.generateEventKt("message.personal", "AbstractGroup", api_paths)
|
||||
kg.generateEventKt("message.personal", "AbstractMessage", api_paths)
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
|
@ -12,7 +12,7 @@ def main():
|
|||
"/can_send_record", # 检查是否可以发送语音
|
||||
"/get_ai_characters", # 获取AI语音人物
|
||||
"/click_inline_keyboard_button", # 点击按钮
|
||||
"/get_ai_record" # 获取AI语音
|
||||
"/get_ai_record", # 获取AI语音
|
||||
"/set_input_status" # 设置输入状态
|
||||
]
|
||||
kg.generateEventKt("personal", "AbstractPersonal", api_paths)
|
||||
|
|
|
|||
|
|
@ -8,7 +8,9 @@ cd ../message/personal
|
|||
python ktg.py
|
||||
cd ../group
|
||||
python ktg.py
|
||||
cd ../../personal
|
||||
cd ..
|
||||
python ktg.py
|
||||
cd ../personal
|
||||
python ktg.py
|
||||
cd ../passkey
|
||||
python ktg.py
|
||||
|
|
|
|||
BIN
python/requests/__pycache__/KtRequestGenerator.cpython-311.pyc
Normal file
BIN
python/requests/__pycache__/KtRequestGenerator.cpython-311.pyc
Normal file
Binary file not shown.
|
|
@ -1,7 +1,7 @@
|
|||
# ktg.py
|
||||
import sys
|
||||
sys.path.append("..") # 添加父目录到模块搜索路径
|
||||
import KtEventGenerator as kg
|
||||
import KtRequestGenerator as kg
|
||||
def main():
|
||||
api_paths = [
|
||||
# 账号信息管理
|
||||
|
|
@ -48,6 +48,6 @@ def main():
|
|||
"/ArkShareGroup", # 获取推荐群聊卡片
|
||||
"/get_mini_app_ark", # 获取小程序卡片
|
||||
]
|
||||
kg.generateEventKt("account", "AbstractAccount", api_paths)
|
||||
kg.generateRequestKt("account", "AbstractAccount", api_paths)
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
# ktg.py
|
||||
import sys
|
||||
sys.path.append("..") # 添加父目录到模块搜索路径
|
||||
import requests.KtRequestGenerator as kg
|
||||
import KtRequestGenerator as kg
|
||||
def main():
|
||||
api_paths = [
|
||||
"/move_group_file", # 移动群文件
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# ktg.py
|
||||
import sys
|
||||
sys.path.append("..") # 添加父目录到模块搜索路径
|
||||
import requests.KtRequestGenerator as kg
|
||||
import KtRequestGenerator as kg
|
||||
def main():
|
||||
api_paths = [
|
||||
# 群信息获取
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# ktg.py
|
||||
import sys
|
||||
sys.path.append("../..") # 添加父目录到模块搜索路径
|
||||
import requests.KtRequestGenerator as kg
|
||||
import KtRequestGenerator as kg
|
||||
def main():
|
||||
api_paths = [
|
||||
"/send_group_msg", # 发送群消息(文本、图片、表情、JSON、语音、视频、回复、音乐卡片等)
|
||||
|
|
@ -9,6 +9,6 @@ def main():
|
|||
"/forward_group_single_msg", # 转发单条消息到群
|
||||
"/group_poke" # 发送群聊戳一戳
|
||||
]
|
||||
kg.generateRequestKt("message.group", "AbstractGroup", api_paths)
|
||||
kg.generateRequestKt("message.group", "AbstractMessage", api_paths)
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
# ktg.py
|
||||
import sys
|
||||
sys.path.append("..") # 添加父目录到模块搜索路径
|
||||
import requests.KtRequestGenerator as kg
|
||||
import KtRequestGenerator as kg
|
||||
def main():
|
||||
api_paths = [
|
||||
"/send_poke", # 发送戳一戳(通用版,可能同时适用于群和私聊)
|
||||
|
|
@ -17,6 +17,6 @@ def main():
|
|||
"/get_image", # 获取图片消息详情
|
||||
"/send_group_ai_record" # 发送群AI语音
|
||||
]
|
||||
kg.generateRequestKt("message", "AbstractGroup", api_paths)
|
||||
kg.generateRequestKt("message", "AbstractMessage", api_paths)
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
# ktg.py
|
||||
import sys
|
||||
sys.path.append("../..") # 添加父目录到模块搜索路径
|
||||
import requests.KtRequestGenerator as kg
|
||||
import KtRequestGenerator as kg
|
||||
def main():
|
||||
api_paths = [
|
||||
"/send_private_msg", # 发送私聊消息(文本、图片、表情、JSON、语音、视频、回复、音乐卡片等)
|
||||
|
|
@ -9,6 +9,6 @@ def main():
|
|||
"/forward_friend_single_msg", # 转发单条消息到私聊
|
||||
"/friend_poke" # 发送私聊戳一戳
|
||||
]
|
||||
kg.generateRequestKt("message.personal", "AbstractGroup", api_paths)
|
||||
kg.generateRequestKt("message.personal", "AbstractMessage", api_paths)
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
# ktg.py
|
||||
import sys
|
||||
sys.path.append("..") # 添加父目录到模块搜索路径
|
||||
import requests.KtRequestGenerator as kg
|
||||
import KtRequestGenerator as kg
|
||||
def main():
|
||||
api_paths = [
|
||||
# 保留
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# ktg.py
|
||||
import sys
|
||||
sys.path.append("..") # 添加父目录到模块搜索路径
|
||||
import requests.KtRequestGenerator as kg
|
||||
import KtRequestGenerator as kg
|
||||
def main():
|
||||
api_paths = [
|
||||
"/get_clientkey", # 获取 clientkey
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# ktg.py
|
||||
import sys
|
||||
sys.path.append("..") # 添加父目录到模块搜索路径
|
||||
import requests.KtRequestGenerator as kg
|
||||
import KtRequestGenerator as kg
|
||||
def main():
|
||||
api_paths = [
|
||||
"/ocr_image", # OCR 图片识别
|
||||
|
|
@ -12,7 +12,7 @@ def main():
|
|||
"/can_send_record", # 检查是否可以发送语音
|
||||
"/get_ai_characters", # 获取AI语音人物
|
||||
"/click_inline_keyboard_button", # 点击按钮
|
||||
"/get_ai_record" # 获取AI语音
|
||||
"/get_ai_record", # 获取AI语音
|
||||
"/set_input_status" # 设置输入状态
|
||||
]
|
||||
kg.generateRequestKt("personal", "AbstractPersonal", api_paths)
|
||||
|
|
|
|||
|
|
@ -8,7 +8,9 @@ cd ../message/personal
|
|||
python ktg.py
|
||||
cd ../group
|
||||
python ktg.py
|
||||
cd ../../personal
|
||||
cd ..
|
||||
python ktg.py
|
||||
cd ../personal
|
||||
python ktg.py
|
||||
cd ../passkey
|
||||
python ktg.py
|
||||
|
|
|
|||
|
|
@ -8,6 +8,8 @@ cd ../message/personal
|
|||
python ktg.py
|
||||
cd ../group
|
||||
python ktg.py
|
||||
cd ..
|
||||
python ktg.py
|
||||
cd ../../personal
|
||||
python ktg.py
|
||||
cd ../passkey
|
||||
|
|
|
|||
|
|
@ -1,30 +1,8 @@
|
|||
# ktg.py
|
||||
import sys
|
||||
sys.path.append("..") # 添加父目录到模块搜索路径
|
||||
import KtEventGenerator as kg
|
||||
import KtRequestGenerator as kg
|
||||
def main():
|
||||
# Kotlin事件类模板
|
||||
kotlin_template_system = """
|
||||
package top.r3944realms.ltdmanager.napcat.events.{path}
|
||||
|
||||
import kotlinx.serialization.SerialName
|
||||
import kotlinx.serialization.Serializable
|
||||
import kotlinx.serialization.Transient
|
||||
|
||||
/**
|
||||
* {event_description}事件
|
||||
* @property data 响应数据
|
||||
*/
|
||||
@Serializable
|
||||
data class {class_name}(
|
||||
|
||||
) : {super_class}Event() {{
|
||||
|
||||
override fun subtype(): String {{
|
||||
return "{original_name}"
|
||||
}}
|
||||
}}
|
||||
"""
|
||||
api_paths = [
|
||||
# 账号控制
|
||||
"/get_robot_uin_range", # 获取机器人可操作的账号范围(多账号托管时使用)
|
||||
|
|
@ -37,6 +15,6 @@ data class {class_name}(
|
|||
# 系统信息
|
||||
"/get_version_info" # 获取机器人框架/客户端的版本信息
|
||||
]
|
||||
kg.generateEventKt("system", "AbstractSystem", api_paths, kotlin_template_system)
|
||||
kg.generateRequestKt("system", "AbstractSystem", api_paths)
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
|
@ -5,7 +5,6 @@ import top.r3944realms.ltdmanager.napcat.events.NapCatEvent
|
|||
import top.r3944realms.ltdmanager.napcat.events.group.SetGroupPortraitEvent
|
||||
import top.r3944realms.ltdmanager.napcat.events.group.SetGroupSearchEvent
|
||||
import top.r3944realms.ltdmanager.napcat.events.personal.CanSendImageEvent
|
||||
import top.r3944realms.ltdmanager.napcat.requests.account.SetOnlineStatusRequest
|
||||
|
||||
fun main() {
|
||||
val logger = LoggerFactory.getLogger("log")
|
||||
|
|
|
|||
|
|
@ -1,4 +1,165 @@
|
|||
package top.r3944realms.ltdmanager.napcat.data
|
||||
|
||||
class MessageElement {
|
||||
import kotlinx.serialization.SerialName
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
@Serializable
|
||||
class MessageElement(
|
||||
val type: MessageType,
|
||||
val data: Message? = null
|
||||
) {
|
||||
companion object {
|
||||
fun text(text: String): MessageElement = MessageElement(MessageType.Text, TextMessage(text))
|
||||
fun at(qq: ID, name: String?): MessageElement = MessageElement(MessageType.At, AtMessage(qq, name))
|
||||
fun image(file: String, summary: String?): MessageElement = MessageElement(MessageType.Image, ImageMessage(file, summary))
|
||||
fun json(json: String): MessageElement = MessageElement(MessageType.JSON, JSONMessage(json))
|
||||
fun face(id: Int): MessageElement = MessageElement(MessageType.Face, FaceMessage(id))
|
||||
fun record(file: String): MessageElement = MessageElement(MessageType.Record, RecordMessage(file))
|
||||
fun markdown(text: String): MessageElement = MessageElement(MessageType.Record, RecordMessage(text))
|
||||
fun video(video: String): MessageElement = MessageElement(MessageType.Video, VideoMessage(video))
|
||||
fun reply(id: ID, text: String):List<MessageElement> = ArrayList<MessageElement>(2).apply{
|
||||
add(MessageElement(MessageType.Reply, ReplyMessage(id)))
|
||||
add(text(text))
|
||||
}
|
||||
fun qqMusic(id: String): MessageElement = MessageElement(MessageType.Music, MusicMessage(MusicMessage.Type.QQ, id))
|
||||
fun neteaseMusic(id: String): MessageElement = MessageElement(MessageType.Music, MusicMessage(MusicMessage.Type.NETEASE, id))
|
||||
fun customMusic(url: String, audio: String, title: String, image: String): MessageElement = MessageElement(MessageType.Music, CustomMusicMessage(CustomMusicMessage.Type.Custom, url, audio, title, image))
|
||||
fun dice(): MessageElement = MessageElement(MessageType.Dice)
|
||||
fun rps(): MessageElement = MessageElement(MessageType.Rps)
|
||||
|
||||
}
|
||||
@Serializable
|
||||
abstract class Message
|
||||
|
||||
/**
|
||||
* 文本
|
||||
*/
|
||||
@Serializable
|
||||
data class TextMessage(
|
||||
val text: String
|
||||
) : Message()
|
||||
|
||||
/**
|
||||
* At
|
||||
*/
|
||||
@Serializable
|
||||
data class AtMessage(
|
||||
val qq: ID,
|
||||
val name: String? = null
|
||||
) : Message() {
|
||||
fun isAtAll():Boolean {
|
||||
if (qq is ID.StringValue) {
|
||||
return qq.value == "all"
|
||||
}
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 图片
|
||||
*/
|
||||
@Serializable
|
||||
data class ImageMessage(
|
||||
val file: String,
|
||||
val summary: String? = "[图片]"
|
||||
) : Message()
|
||||
|
||||
/**
|
||||
* JSON
|
||||
*/
|
||||
@Serializable
|
||||
data class JSONMessage(
|
||||
val data: String
|
||||
) : Message()
|
||||
|
||||
/**
|
||||
* 语音 && MarkDown(在其它/保留接口里)
|
||||
*/
|
||||
@Serializable
|
||||
data class RecordMessage(
|
||||
val file: String
|
||||
) : Message()
|
||||
/**
|
||||
* 视频
|
||||
*/
|
||||
@Serializable
|
||||
data class VideoMessage(
|
||||
val file: String
|
||||
) : Message()
|
||||
/**
|
||||
* 系统表情
|
||||
*/
|
||||
@Serializable
|
||||
data class FaceMessage(
|
||||
val id: Int
|
||||
) : Message()
|
||||
|
||||
/**
|
||||
* 回复
|
||||
*/
|
||||
@Serializable
|
||||
data class ReplyMessage(
|
||||
val id: ID
|
||||
) : Message()
|
||||
|
||||
/**
|
||||
* 音乐
|
||||
*/
|
||||
@Serializable
|
||||
data class MusicMessage(
|
||||
val type: Type,
|
||||
val id: String,
|
||||
): Message() {
|
||||
@Serializable
|
||||
enum class Type(val string: String) {
|
||||
@SerialName("163")NETEASE("netease"),
|
||||
@SerialName("qq")QQ("qq")
|
||||
}
|
||||
}
|
||||
/**
|
||||
* 音乐
|
||||
*/
|
||||
@Serializable
|
||||
data class CustomMusicMessage(
|
||||
val type: Type,
|
||||
/**
|
||||
* 链接
|
||||
*/
|
||||
val url: String,
|
||||
/**
|
||||
* 音频
|
||||
*/
|
||||
val audio: String,
|
||||
/**
|
||||
* 标题
|
||||
*/
|
||||
val title: String,
|
||||
/**
|
||||
* 图片
|
||||
*/
|
||||
val image: String,
|
||||
) : Message() {
|
||||
@Serializable
|
||||
enum class Type(val string: String) {
|
||||
@SerialName("custom")Custom("custom")
|
||||
}
|
||||
}
|
||||
|
||||
@Serializable
|
||||
data class DiceMessage (
|
||||
/**
|
||||
* 该参数暂不可用
|
||||
*/
|
||||
val result: Type
|
||||
) : Message() {
|
||||
@Serializable
|
||||
enum class Type(val value: Int) {
|
||||
@SerialName("1")ONE(1),
|
||||
@SerialName("2")TWO(2),
|
||||
@SerialName("3")THREE(3),
|
||||
@SerialName("4")FOUR(4),
|
||||
@SerialName("5")FIVE(5),
|
||||
@SerialName("6")SIX(6),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -14,5 +14,9 @@ enum class MessageType(val value: String) {
|
|||
@SerialName("record") Record("record"),
|
||||
@SerialName("reply") Reply("reply"),
|
||||
@SerialName("text") Text("text"),
|
||||
@SerialName("video") Video("video");
|
||||
@SerialName("video") Video("video"),
|
||||
@SerialName("music") Music("music"),
|
||||
@SerialName("dice") Dice("dice"),
|
||||
@SerialName("rps") Rps("rps"),
|
||||
@SerialName("node") Node("node");
|
||||
}
|
||||
|
|
@ -3,7 +3,7 @@ package top.r3944realms.ltdmanager.napcat.data
|
|||
import kotlinx.serialization.Serializable
|
||||
|
||||
@Serializable
|
||||
sealed class Qq {
|
||||
class DoubleValue(val value: Double) : Qq()
|
||||
class StringValue(val value: String) : Qq()
|
||||
sealed class QQ {
|
||||
class DoubleValue(val value: Double) : QQ()
|
||||
class StringValue(val value: String) : QQ()
|
||||
}
|
||||
|
|
@ -5,7 +5,7 @@ import kotlinx.serialization.SerialName
|
|||
import kotlinx.serialization.Serializable
|
||||
import kotlinx.serialization.Transient
|
||||
import top.r3944realms.ltdmanager.napcat.data.MessageType
|
||||
import top.r3944realms.ltdmanager.napcat.data.Qq
|
||||
import top.r3944realms.ltdmanager.napcat.data.QQ
|
||||
import top.r3944realms.ltdmanager.napcat.data.Sender
|
||||
|
||||
/**
|
||||
|
|
@ -165,8 +165,8 @@ data class GetRecentContactEvent(
|
|||
data class Data (
|
||||
val text: String? = null,
|
||||
val name: String? = null,
|
||||
val qq: Qq? = null,
|
||||
val id: Qq? = null,
|
||||
val qq: QQ? = null,
|
||||
val id: QQ? = null,
|
||||
val file: String? = null,
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ import kotlinx.serialization.SerialName
|
|||
import kotlinx.serialization.Serializable
|
||||
import kotlinx.serialization.Transient
|
||||
import top.r3944realms.ltdmanager.napcat.data.MessageType
|
||||
import top.r3944realms.ltdmanager.napcat.data.Qq
|
||||
import top.r3944realms.ltdmanager.napcat.data.QQ
|
||||
import top.r3944realms.ltdmanager.napcat.data.Sender
|
||||
import top.r3944realms.ltdmanager.napcat.events.group.AbstractGroupEvent
|
||||
|
||||
|
|
@ -154,8 +154,8 @@ data class GetForwardMsgEvent(
|
|||
data class MessageData (
|
||||
val text: String? = null,
|
||||
val name: String? = null,
|
||||
val qq: Qq? = null,
|
||||
val id: Qq? = null,
|
||||
val qq: QQ? = null,
|
||||
val id: QQ? = null,
|
||||
val file: String? = null,
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ import kotlinx.serialization.SerialName
|
|||
import kotlinx.serialization.Serializable
|
||||
import kotlinx.serialization.Transient
|
||||
import top.r3944realms.ltdmanager.napcat.data.MessageType
|
||||
import top.r3944realms.ltdmanager.napcat.data.Qq
|
||||
import top.r3944realms.ltdmanager.napcat.data.QQ
|
||||
import top.r3944realms.ltdmanager.napcat.data.Sender
|
||||
import top.r3944realms.ltdmanager.napcat.events.group.AbstractGroupEvent
|
||||
|
||||
|
|
@ -41,8 +41,8 @@ data class GetFriendMsgHistoryEvent(
|
|||
data class MessageData (
|
||||
val text: String? = null,
|
||||
val name: String? = null,
|
||||
val qq: Qq? = null,
|
||||
val id: Qq? = null,
|
||||
val qq: QQ? = null,
|
||||
val id: QQ? = null,
|
||||
val file: String? = null,
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ import kotlinx.serialization.json.Json
|
|||
*/
|
||||
@Serializable
|
||||
class GetFriendListRequest: AbstractAccountRequest() {
|
||||
override fun toJSON(): String = Json.encodeToString(this)
|
||||
override fun toJSON(): String = "{}"
|
||||
|
||||
override fun path(): String = "/get_friend_list"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ import kotlinx.serialization.json.Json
|
|||
*/
|
||||
@Serializable
|
||||
class GetFriendsWithCategoryRequest : AbstractAccountRequest() {
|
||||
override fun toJSON(): String = Json.encodeToString(this)
|
||||
override fun toJSON(): String = "{}"
|
||||
|
||||
override fun path(): String = "/get_friends_with_category"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ import kotlinx.serialization.json.Json
|
|||
*/
|
||||
@Serializable
|
||||
class GetLoginInfoRequest : AbstractAccountRequest() {
|
||||
override fun toJSON(): String = Json.encodeToString(this)
|
||||
override fun toJSON(): String = "{}"
|
||||
|
||||
override fun path(): String = "/get_login_info"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,15 +4,13 @@ import kotlinx.serialization.Serializable
|
|||
import top.r3944realms.ltdmanager.napcat.Developing
|
||||
|
||||
/**
|
||||
* 设置消息已读
|
||||
* 获取当前账号在线客户端列表
|
||||
*/
|
||||
@Developing
|
||||
@Serializable
|
||||
class GetOnlineClientRequest
|
||||
: AbstractAccountRequest(){
|
||||
override fun toJSON(): String {
|
||||
return "{}"
|
||||
}
|
||||
class GetOnlineClientRequest : AbstractAccountRequest(){
|
||||
override fun toJSON(): String = "{}"
|
||||
|
||||
|
||||
override fun path(): String {
|
||||
return "/get_online_clients"
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ import top.r3944realms.ltdmanager.napcat.Developing
|
|||
@Developing
|
||||
@Serializable
|
||||
class GetUnidirectionalFriendListRequest: AbstractAccountRequest() {
|
||||
override fun toJSON(): String = Json.encodeToString(this)
|
||||
override fun toJSON(): String = "{}"
|
||||
|
||||
override fun path(): String = "/get_unidirectional_friend_list"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ import kotlinx.serialization.json.Json
|
|||
*/
|
||||
@Serializable
|
||||
class MarkAllAsReadRequest: AbstractAccountRequest() {
|
||||
override fun toJSON(): String = Json.encodeToString(this)
|
||||
override fun toJSON(): String = "{}"
|
||||
|
||||
override fun path(): String = "/_mark_all_as_read"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,7 +5,6 @@ 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.NapCatRequest
|
||||
|
||||
/**
|
||||
* 设置消息已读
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ import top.r3944realms.ltdmanager.napcat.data.ID
|
|||
@Serializable
|
||||
data class SetEssenceMsgRequest(
|
||||
@SerialName("message_id")
|
||||
val messageID: ID
|
||||
val messageId: ID
|
||||
) : AbstractGroupRequest() {
|
||||
override fun toJSON(): String = Json.encodeToString(this)
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ import kotlinx.serialization.Serializable
|
|||
import top.r3944realms.ltdmanager.napcat.requests.NapCatRequest
|
||||
|
||||
@Serializable
|
||||
abstract class AbstractPasskeyRequest
|
||||
abstract class AbstractPassKeyRequest
|
||||
: NapCatRequest() {
|
||||
override fun header(): String {
|
||||
return "passkey"
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.passkey
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
/**
|
||||
* GetClientkey请求
|
||||
*/
|
||||
@Serializable
|
||||
class GetClientkeyRequest: AbstractPassKeyRequest() {
|
||||
override fun toJSON(): String = "{}"
|
||||
|
||||
override fun path(): String = "/get_clientkey"
|
||||
}
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.passkey
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
import kotlinx.serialization.encodeToString
|
||||
import kotlinx.serialization.json.Json
|
||||
|
||||
/**
|
||||
* GetCookies请求
|
||||
*/
|
||||
@Serializable
|
||||
data class GetCookiesRequest(
|
||||
val domain: String
|
||||
) : AbstractPassKeyRequest() {
|
||||
override fun toJSON(): String = Json.encodeToString(this)
|
||||
|
||||
override fun path(): String = "/get_cookies"
|
||||
}
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.passkey
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
import kotlinx.serialization.encodeToString
|
||||
import kotlinx.serialization.json.Json
|
||||
|
||||
/**
|
||||
* GetCredentials请求
|
||||
*/
|
||||
@Serializable
|
||||
data class GetCredentialsRequest(
|
||||
val domain: String
|
||||
) : AbstractPassKeyRequest() {
|
||||
override fun toJSON(): String = Json.encodeToString(this)
|
||||
|
||||
override fun path(): String = "/get_credentials"
|
||||
}
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.passkey
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
/**
|
||||
* GetCsrfToken请求
|
||||
*/
|
||||
@Serializable
|
||||
class GetCsrfTokenRequest : AbstractPassKeyRequest() {
|
||||
override fun toJSON(): String = "{}"
|
||||
|
||||
override fun path(): String = "/get_csrf_token"
|
||||
}
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.passkey
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
/**
|
||||
* GetRkey请求
|
||||
*/
|
||||
@Serializable
|
||||
class GetRkeyRequest: AbstractPassKeyRequest() {
|
||||
override fun toJSON(): String = "{}"
|
||||
|
||||
override fun path(): String = "/get_rkey"
|
||||
}
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.passkey
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
/**
|
||||
* GetRkeyServer请求
|
||||
*/
|
||||
@Serializable
|
||||
class GetRkeyServerRequest: AbstractPassKeyRequest() {
|
||||
override fun toJSON(): String = "{}"
|
||||
|
||||
override fun path(): String = "/get_rkey_server"
|
||||
}
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.passkey
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
/**
|
||||
* NcGetRkey请求
|
||||
*/
|
||||
@Serializable
|
||||
class NcGetRkeyRequest : AbstractPassKeyRequest() {
|
||||
override fun toJSON(): String = "{}"
|
||||
|
||||
override fun path(): String = "/nc_get_rkey"
|
||||
}
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.personal
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
/**
|
||||
* CanSendImage请求
|
||||
*/
|
||||
@Serializable
|
||||
class CanSendImageRequest : AbstractPersonalRequest() {
|
||||
override fun toJSON(): String = "{}"
|
||||
|
||||
override fun path(): String = "/can_send_image"
|
||||
}
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.personal
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
/**
|
||||
* CanSendRecord请求
|
||||
*/
|
||||
@Serializable
|
||||
class CanSendRecordRequest : AbstractPersonalRequest() {
|
||||
override fun toJSON(): String = "{}"
|
||||
|
||||
override fun path(): String = "/can_send_record"
|
||||
}
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.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
|
||||
|
||||
/**
|
||||
* ClickInlineKeyboardButton请求
|
||||
*/
|
||||
@Serializable
|
||||
data class ClickInlineKeyboardButtonRequest(
|
||||
@SerialName("bot_appid")
|
||||
val botAppid: String,
|
||||
|
||||
@SerialName("button_id")
|
||||
val buttonID: String,
|
||||
|
||||
@SerialName("callback_data")
|
||||
val callbackData: String,
|
||||
|
||||
@SerialName("group_id")
|
||||
val groupID: ID,
|
||||
|
||||
@SerialName("msg_seq")
|
||||
val msgSeq: String
|
||||
) : AbstractPersonalRequest() {
|
||||
override fun toJSON(): String = Json.encodeToString(this)
|
||||
|
||||
override fun path(): String = "/click_inline_keyboard_button"
|
||||
}
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.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
|
||||
|
||||
/**
|
||||
* GetAiCharacters请求
|
||||
*/
|
||||
@Serializable
|
||||
data class GetAiCharactersRequest(
|
||||
/**
|
||||
* 1 or 2?
|
||||
*/
|
||||
@SerialName("chat_type")
|
||||
val chatType: ID? = null,
|
||||
|
||||
@SerialName("group_id")
|
||||
val groupId: ID
|
||||
) : AbstractPersonalRequest() {
|
||||
override fun toJSON(): String = Json.encodeToString(this)
|
||||
|
||||
override fun path(): String = "/get_ai_characters"
|
||||
}
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.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
|
||||
|
||||
/**
|
||||
* GetAiRecord请求
|
||||
*/
|
||||
@Serializable
|
||||
data class GetAiRecordRequest(
|
||||
/**
|
||||
* character_id
|
||||
*/
|
||||
val character: String,
|
||||
|
||||
@SerialName("group_id")
|
||||
val groupId: ID,
|
||||
|
||||
/**
|
||||
* 文本
|
||||
*/
|
||||
val text: String
|
||||
) : AbstractPersonalRequest() {
|
||||
override fun toJSON(): String = Json.encodeToString(this)
|
||||
|
||||
override fun path(): String = "/get_ai_record"
|
||||
}
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.personal
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
import kotlinx.serialization.encodeToString
|
||||
import kotlinx.serialization.json.Json
|
||||
|
||||
/**
|
||||
* OcrImage请求
|
||||
*/
|
||||
@Serializable
|
||||
data class OcrImageRequest(
|
||||
val image: String
|
||||
) : AbstractPersonalRequest() {
|
||||
override fun toJSON(): String = Json.encodeToString(this)
|
||||
|
||||
override fun path(): String = "/ocr_image"
|
||||
}
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.personal
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
import kotlinx.serialization.encodeToString
|
||||
import kotlinx.serialization.json.Json
|
||||
import kotlinx.serialization.json.JsonObject
|
||||
|
||||
/**
|
||||
* PointHandleQuickOperation请求
|
||||
*/
|
||||
@Serializable
|
||||
data class PointHandleQuickOperationRequest(
|
||||
/**
|
||||
* 事件数据对象
|
||||
*/
|
||||
val context: JsonObject,
|
||||
|
||||
/**
|
||||
* 快速操作对象
|
||||
*/
|
||||
val operation: JsonObject
|
||||
) : AbstractPersonalRequest() {
|
||||
override fun toJSON(): String = Json.encodeToString(this)
|
||||
|
||||
override fun path(): String = "/.handle_quick_operation"
|
||||
}
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.personal
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
import kotlinx.serialization.encodeToString
|
||||
import kotlinx.serialization.json.Json
|
||||
|
||||
/**
|
||||
* PointOcrImage请求
|
||||
*/
|
||||
@Serializable
|
||||
data class PointOcrImageRequest(
|
||||
val image: String
|
||||
) : AbstractPersonalRequest() {
|
||||
override fun toJSON(): String = Json.encodeToString(this)
|
||||
|
||||
override fun path(): String = "/.ocr_image"
|
||||
}
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.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
|
||||
|
||||
/**
|
||||
* SetInputStatus请求
|
||||
*/
|
||||
@Serializable
|
||||
data class SetInputStatusRequest(
|
||||
@SerialName("event_type")
|
||||
val eventType: EventType,
|
||||
|
||||
@SerialName("user_id")
|
||||
val userId: ID
|
||||
) : AbstractPersonalRequest() {
|
||||
override fun toJSON(): String = Json.encodeToString(this)
|
||||
|
||||
override fun path(): String = "/set_input_status"
|
||||
@Serializable
|
||||
enum class EventType(val value: Int) {
|
||||
@SerialName("0")SPEAKING(0),
|
||||
@SerialName("1")TYPING(1)
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.personal
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
import kotlinx.serialization.encodeToString
|
||||
import kotlinx.serialization.json.Json
|
||||
|
||||
/**
|
||||
* TranslateEn2zh请求
|
||||
*/
|
||||
@Serializable
|
||||
data class TranslateEn2zhRequest(
|
||||
/**
|
||||
* 英文数组
|
||||
*/
|
||||
val words: List<String>
|
||||
) : AbstractPersonalRequest() {
|
||||
override fun toJSON(): String = Json.encodeToString(this)
|
||||
|
||||
override fun path(): String = "/translate_en2zh"
|
||||
}
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.system
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
import kotlinx.serialization.encodeToString
|
||||
import kotlinx.serialization.json.Json
|
||||
|
||||
/**
|
||||
* BotExit请求
|
||||
*/
|
||||
@Serializable
|
||||
class BotExitRequest : AbstractSystemRequest() {
|
||||
override fun toJSON(): String = Json.encodeToString(this)
|
||||
|
||||
override fun path(): String = "/bot_exit"
|
||||
}
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.system
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
/**
|
||||
* GetRobotUinRange请求
|
||||
*/
|
||||
@Serializable
|
||||
class GetRobotUinRangeRequest : AbstractSystemRequest() {
|
||||
override fun toJSON(): String = "{}"
|
||||
|
||||
override fun path(): String = "/get_robot_uin_range"
|
||||
}
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.system
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
/**
|
||||
* GetVersionInfo请求
|
||||
*/
|
||||
@Serializable
|
||||
class GetVersionInfoRequest : AbstractSystemRequest() {
|
||||
override fun toJSON(): String = "{}"
|
||||
|
||||
override fun path(): String = "/get_version_info"
|
||||
}
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.system
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
/**
|
||||
* NcGetPacketStatus请求
|
||||
*/
|
||||
@Serializable
|
||||
class NcGetPacketStatusRequest : AbstractSystemRequest() {
|
||||
override fun toJSON(): String = "{}"
|
||||
|
||||
override fun path(): String = "/nc_get_packet_status"
|
||||
}
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
|
||||
package top.r3944realms.ltdmanager.napcat.requests.system
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
import top.r3944realms.ltdmanager.napcat.Developing
|
||||
|
||||
/**
|
||||
* SendPacket请求
|
||||
*/
|
||||
@Developing
|
||||
@Serializable
|
||||
class SendPacketRequest : AbstractSystemRequest() {
|
||||
override fun toJSON(): String = "{}"
|
||||
|
||||
override fun path(): String = "/send_packet"
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user