pref: Split project into two modules(main, api)
This commit is contained in:
parent
64686d2f47
commit
62b001b131
1
.idea/compiler.xml
generated
1
.idea/compiler.xml
generated
@ -8,6 +8,7 @@
|
||||
<entry name="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.projectlombok/lombok/1.18.34/ec547ef414ab1d2c040118fb9c1c265ada63af14/lombok-1.18.34.jar" />
|
||||
</processorPath>
|
||||
<module name="MyBot.main" />
|
||||
<module name="MyBot.mybot-api.main" />
|
||||
</profile>
|
||||
</annotationProcessing>
|
||||
<bytecodeTargetLevel target="11" />
|
||||
|
1
.idea/gradle.xml
generated
1
.idea/gradle.xml
generated
@ -9,6 +9,7 @@
|
||||
<option name="modules">
|
||||
<set>
|
||||
<option value="$PROJECT_DIR$" />
|
||||
<option value="$PROJECT_DIR$/mybot-api" />
|
||||
</set>
|
||||
</option>
|
||||
</GradleProjectSettings>
|
||||
|
1
.idea/modules.xml
generated
1
.idea/modules.xml
generated
@ -3,6 +3,7 @@
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/modules/MyBot.main.iml" filepath="$PROJECT_DIR$/.idea/modules/MyBot.main.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/modules/mybot-api/MyBot.mybot-api.main.iml" filepath="$PROJECT_DIR$/.idea/modules/mybot-api/MyBot.mybot-api.main.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
8
.idea/modules/mybot-api/MyBot.mybot-api.main.iml
generated
Normal file
8
.idea/modules/mybot-api/MyBot.mybot-api.main.iml
generated
Normal file
@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module version="4">
|
||||
<component name="AdditionalModuleElements">
|
||||
<content url="file://$MODULE_DIR$/../../../mybot-api/build/generated/sources/annotationProcessor/java/main">
|
||||
<sourceFolder url="file://$MODULE_DIR$/../../../mybot-api/build/generated/sources/annotationProcessor/java/main" isTestSource="false" generated="true" />
|
||||
</content>
|
||||
</component>
|
||||
</module>
|
112
build.gradle.kts
112
build.gradle.kts
@ -2,39 +2,58 @@ import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
|
||||
import com.github.jengelman.gradle.plugins.shadow.transformers.Log4j2PluginsCacheFileTransformer
|
||||
|
||||
val projectName = rootProject.name
|
||||
val groupName by extra("cn.wzpmc")
|
||||
val projectArtifactId by extra("my-bot")
|
||||
val projectVersion by extra("1.0.1")
|
||||
val groupName: String by extra
|
||||
val projectArtifactId: String by extra
|
||||
val projectVersion: String by extra
|
||||
|
||||
plugins {
|
||||
id("java")
|
||||
id("maven-publish")
|
||||
id("com.github.johnrengelman.shadow") version "8.1.1"
|
||||
}
|
||||
allprojects {
|
||||
apply(plugin = "java")
|
||||
val groupName by extra("cn.wzpmc")
|
||||
val projectArtifactId by extra("my-bot")
|
||||
val projectVersion by extra("1.0.1")
|
||||
repositories {
|
||||
mavenCentral()
|
||||
maven("https://libraries.minecraft.net")
|
||||
}
|
||||
dependencies {
|
||||
// https://mvnrepository.com/artifact/org.projectlombok/lombok
|
||||
compileOnly("org.projectlombok:lombok:1.18.34")
|
||||
annotationProcessor("org.projectlombok:lombok:1.18.34")
|
||||
// https://mvnrepository.com/artifact/com.alibaba.fastjson2/fastjson2
|
||||
implementation("com.alibaba.fastjson2:fastjson2:2.0.52")
|
||||
implementation("com.mojang:brigadier:1.0.18")
|
||||
// https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-api
|
||||
implementation("org.apache.logging.log4j:log4j-api:2.23.1")
|
||||
|
||||
testImplementation(platform("org.junit:junit-bom:5.10.0"))
|
||||
testImplementation("org.junit.jupiter:junit-jupiter")
|
||||
}
|
||||
tasks.compileJava {
|
||||
options.encoding = "UTF-8"
|
||||
}
|
||||
tasks.javadoc {
|
||||
options.encoding = "UTF-8"
|
||||
}
|
||||
}
|
||||
group = groupName
|
||||
version = projectVersion
|
||||
repositories {
|
||||
mavenCentral()
|
||||
maven("https://libraries.minecraft.net")
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation(project(":mybot-api"))
|
||||
implementation("net.minecrell:terminalconsoleappender:1.3.0") {
|
||||
exclude(group = "org.apache.logging.log4j", module = "log4j-core")
|
||||
exclude(group = "org.apache.logging.log4j", module = "log4j-api")
|
||||
}
|
||||
implementation("com.mojang:brigadier:1.0.18")
|
||||
// https://mvnrepository.com/artifact/io.netty/netty-all
|
||||
implementation("io.netty:netty-all:4.1.112.Final")
|
||||
// https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core
|
||||
implementation("org.apache.logging.log4j:log4j-core:2.23.1")
|
||||
// https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-api
|
||||
implementation("org.apache.logging.log4j:log4j-api:2.23.1")
|
||||
// https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-jul
|
||||
implementation("org.apache.logging.log4j:log4j-jul:2.23.1")
|
||||
// https://mvnrepository.com/artifact/com.alibaba.fastjson2/fastjson2
|
||||
implementation("com.alibaba.fastjson2:fastjson2:2.0.52")
|
||||
// https://mvnrepository.com/artifact/org.yaml/snakeyaml
|
||||
implementation("org.yaml:snakeyaml:2.2")
|
||||
// https://mvnrepository.com/artifact/org.jline/jline
|
||||
@ -46,22 +65,6 @@ dependencies {
|
||||
implementation("org.jline:jline-terminal-jansi:3.26.3")
|
||||
// https://mvnrepository.com/artifact/org.fusesource.jansi/jansi
|
||||
implementation("org.fusesource.jansi:jansi:2.4.1")
|
||||
/*// https://mvnrepository.com/artifact/org.jline/jline-terminal-jna
|
||||
implementation("org.jline:jline-terminal-jna:3.26.3")
|
||||
// https://mvnrepository.com/artifact/net.java.dev.jna/jna
|
||||
implementation("net.java.dev.jna:jna:5.14.0")*/
|
||||
// https://mvnrepository.com/artifact/org.projectlombok/lombok
|
||||
compileOnly("org.projectlombok:lombok:1.18.34")
|
||||
annotationProcessor("org.projectlombok:lombok:1.18.34")
|
||||
testImplementation(platform("org.junit:junit-bom:5.10.0"))
|
||||
testImplementation("org.junit.jupiter:junit-jupiter")
|
||||
}
|
||||
|
||||
tasks.compileJava {
|
||||
options.encoding = "UTF-8"
|
||||
}
|
||||
tasks.javadoc {
|
||||
options.encoding = "UTF-8"
|
||||
}
|
||||
tasks.register<Jar>("javadocJar") {
|
||||
archiveClassifier.set("javadoc")
|
||||
@ -86,57 +89,6 @@ tasks.withType<ShadowJar> {
|
||||
tasks.named("build") {
|
||||
dependsOn(tasks.named("shadowJar"))
|
||||
}
|
||||
publishing {
|
||||
publications {
|
||||
create<MavenPublication>("mavenJava") {
|
||||
from(components["java"])
|
||||
|
||||
groupId = groupName
|
||||
artifactId = projectArtifactId
|
||||
version = projectVersion
|
||||
artifact(tasks.named("javadocJar"))
|
||||
artifact(tasks.named("sourcesJar"))
|
||||
pom {
|
||||
name.set(projectName)
|
||||
description.set("A Java-based OneBot11-compatible robot framework")
|
||||
|
||||
licenses {
|
||||
license {
|
||||
name.set("The MIT License")
|
||||
url.set("https://opensource.org/licenses/MIT")
|
||||
}
|
||||
}
|
||||
|
||||
developers {
|
||||
developer {
|
||||
id.set("wzp")
|
||||
name.set("wzp")
|
||||
email.set("minecraftwzpmc@gmail.com")
|
||||
}
|
||||
}
|
||||
|
||||
scm {
|
||||
connection.set("scm:git:https://wzpmc.cn:3000/wzp/MyBot.git")
|
||||
developerConnection.set("scm:git:https://wzpmc.cn:3000/wzp/MyBot.git")
|
||||
url.set("https://wzpmc.cn:3000/wzp/MyBot")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
repositories {
|
||||
maven {
|
||||
val releasesRepoUrl = uri("https://wzpmc.cn:90/repository/maven-releases")
|
||||
val snapshotsRepoUrl = uri("https://wzpmc.cn:90/repository/maven-snapshots")
|
||||
url = if (version.toString().endsWith("SNAPSHOT")) snapshotsRepoUrl else releasesRepoUrl
|
||||
|
||||
credentials {
|
||||
username = project.findProperty("repo.user") as String? ?: ""
|
||||
password = project.findProperty("repo.password") as String? ?: ""
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
tasks.test {
|
||||
useJUnitPlatform()
|
||||
}
|
79
mybot-api/build.gradle.kts
Normal file
79
mybot-api/build.gradle.kts
Normal file
@ -0,0 +1,79 @@
|
||||
val projectName = rootProject.name
|
||||
val groupName: String by extra
|
||||
val projectArtifactId = "mybot-api"
|
||||
val projectVersion: String by extra
|
||||
plugins {
|
||||
id("java")
|
||||
id("maven-publish")
|
||||
}
|
||||
|
||||
group = "cn.wzpmc"
|
||||
version = projectVersion
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
}
|
||||
|
||||
dependencies {}
|
||||
tasks.register<Jar>("javadocJar") {
|
||||
archiveClassifier.set("javadoc")
|
||||
from(tasks.named("javadoc"))
|
||||
}
|
||||
tasks.register<Jar>("sourcesJar") {
|
||||
archiveClassifier.set("sources")
|
||||
from(sourceSets.main.get().allSource)
|
||||
}
|
||||
publishing {
|
||||
publications {
|
||||
create<MavenPublication>("mavenJava") {
|
||||
from(components["java"])
|
||||
|
||||
groupId = groupName
|
||||
artifactId = projectArtifactId
|
||||
version = projectVersion
|
||||
artifact(tasks.named("javadocJar"))
|
||||
artifact(tasks.named("sourcesJar"))
|
||||
pom {
|
||||
name.set(projectName)
|
||||
description.set("A Java-based OneBot11-compatible robot framework")
|
||||
|
||||
licenses {
|
||||
license {
|
||||
name.set("The MIT License")
|
||||
url.set("https://opensource.org/licenses/MIT")
|
||||
}
|
||||
}
|
||||
|
||||
developers {
|
||||
developer {
|
||||
id.set("wzp")
|
||||
name.set("wzp")
|
||||
email.set("minecraftwzpmc@gmail.com")
|
||||
}
|
||||
}
|
||||
|
||||
scm {
|
||||
connection.set("scm:git:https://wzpmc.cn:3000/wzp/MyBot.git")
|
||||
developerConnection.set("scm:git:https://wzpmc.cn:3000/wzp/MyBot.git")
|
||||
url.set("https://wzpmc.cn:3000/wzp/MyBot")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
repositories {
|
||||
maven {
|
||||
val releasesRepoUrl = uri("https://wzpmc.cn:90/repository/maven-releases")
|
||||
val snapshotsRepoUrl = uri("https://wzpmc.cn:90/repository/maven-snapshots")
|
||||
url = if (version.toString().endsWith("SNAPSHOT")) snapshotsRepoUrl else releasesRepoUrl
|
||||
|
||||
credentials {
|
||||
username = project.findProperty("repo.user") as String? ?: ""
|
||||
password = project.findProperty("repo.password") as String? ?: ""
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
tasks.test {
|
||||
useJUnitPlatform()
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
package cn.wzpmc.api.api;
|
||||
package cn.wzpmc.api;
|
||||
|
||||
import lombok.*;
|
||||
|
||||
@ -6,9 +6,10 @@ import java.util.UUID;
|
||||
|
||||
/**
|
||||
* 抽象请求体
|
||||
*
|
||||
* @author wzp
|
||||
* @since 2024/8/16 21:36
|
||||
* @version 0.0.5-dev
|
||||
* @since 2024/8/16 21:36
|
||||
*/
|
||||
@Getter
|
||||
@ToString
|
||||
@ -16,19 +17,22 @@ import java.util.UUID;
|
||||
@NoArgsConstructor(access = AccessLevel.PROTECTED)
|
||||
@Setter(AccessLevel.PROTECTED)
|
||||
public class Action<REQUEST, RESPONSE> {
|
||||
/**
|
||||
* 请求回调值(默认随机生成,不建议自己修改)
|
||||
*
|
||||
* @since 2024/8/23 21:29 v0.0.5-dev
|
||||
*/
|
||||
private final UUID echo = UUID.randomUUID();
|
||||
/**
|
||||
* 请求操作类型
|
||||
*
|
||||
* @since 2024/8/23 21:29 v0.0.5-dev
|
||||
*/
|
||||
private Actions action;
|
||||
/**
|
||||
* 请求参数
|
||||
*
|
||||
* @since 2024/8/23 21:29 v0.0.5-dev
|
||||
*/
|
||||
private REQUEST params;
|
||||
/**
|
||||
* 请求回调值(默认随机生成,不建议自己修改)
|
||||
* @since 2024/8/23 21:29 v0.0.5-dev
|
||||
*/
|
||||
private final UUID echo = UUID.randomUUID();
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
package cn.wzpmc.api.api;
|
||||
package cn.wzpmc.api;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@ -6,6 +6,7 @@ import java.util.UUID;
|
||||
|
||||
/**
|
||||
* 请求操作返回
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.5-dev
|
||||
* @since 2024/8/16 17:43
|
||||
@ -14,21 +15,25 @@ import java.util.UUID;
|
||||
public class ActionResponse<RESPONSE> {
|
||||
/**
|
||||
* 请求返回消息
|
||||
*
|
||||
* @since 2024/8/23 21:30 v0.0.5-dev
|
||||
*/
|
||||
private final String status;
|
||||
/**
|
||||
* 请求返回码
|
||||
*
|
||||
* @since 2024/8/23 21:30 v0.0.5-dev
|
||||
*/
|
||||
private final short retcode;
|
||||
/**
|
||||
* 请求返回数据
|
||||
*
|
||||
* @since 2024/8/23 21:31 v0.0.5-dev
|
||||
*/
|
||||
private final RESPONSE data;
|
||||
/**
|
||||
* 请求返回回调
|
||||
*
|
||||
* @since 2024/8/23 21:31 v0.0.5-dev
|
||||
*/
|
||||
private final UUID echo;
|
@ -1,212 +1,253 @@
|
||||
package cn.wzpmc.api.api;
|
||||
package cn.wzpmc.api;
|
||||
|
||||
import cn.wzpmc.api.api.actions.message.send.SendMessageActionResponseData;
|
||||
import cn.wzpmc.api.entities.*;
|
||||
import cn.wzpmc.api.user.IBot;
|
||||
import cn.wzpmc.api.user.IUser;
|
||||
import cn.wzpmc.api.actions.message.send.SendMessageActionResponseData;
|
||||
import cn.wzpmc.entities.*;
|
||||
import cn.wzpmc.user.IBot;
|
||||
import cn.wzpmc.user.IUser;
|
||||
|
||||
/**
|
||||
* 操作类型
|
||||
*
|
||||
* @author wzp
|
||||
* @since 2024/8/16 22:24
|
||||
* @version 0.0.5-dev
|
||||
* @since 2024/8/16 22:24
|
||||
*/
|
||||
public enum Actions {
|
||||
/**
|
||||
* 发送私聊消息
|
||||
*
|
||||
* @since 2024/8/23 21:07 v0.0.5-dev
|
||||
*/
|
||||
SEND_PRIVATE_MSG(SendMessageActionResponseData.class),
|
||||
/**
|
||||
* 发送群消息
|
||||
*
|
||||
* @since 2024/8/23 21:07 v0.0.5-dev
|
||||
*/
|
||||
SEND_GROUP_MSG(SendMessageActionResponseData.class),
|
||||
/**
|
||||
* 撤回消息
|
||||
*
|
||||
* @since 2024/8/23 21:07 v0.0.5-dev
|
||||
*/
|
||||
DELETE_MSG,
|
||||
/**
|
||||
* 获取消息
|
||||
*
|
||||
* @since 2024/8/23 21:07 v0.0.5-dev
|
||||
*/
|
||||
GET_MSG(MessageInformation.class),
|
||||
/**
|
||||
* 获取合并转发消息
|
||||
*
|
||||
* @since 2024/8/23 21:08 v0.0.5-dev
|
||||
*/
|
||||
GET_FORWARD_MSG(MessageInformation.class),
|
||||
/**
|
||||
* 发送好友赞
|
||||
*
|
||||
* @since 2024/8/23 21:08 v0.0.5-dev
|
||||
*/
|
||||
SEND_LIKE,
|
||||
/**
|
||||
* 群组踢人
|
||||
*
|
||||
* @since 2024/8/23 21:08 v0.0.5-dev
|
||||
*/
|
||||
SET_GROUP_KICK,
|
||||
/**
|
||||
* 群组单人禁言
|
||||
*
|
||||
* @since 2024/8/23 21:08 v0.0.5-dev
|
||||
*/
|
||||
SET_GROUP_BAN,
|
||||
/**
|
||||
* 群组匿名用户禁言
|
||||
*
|
||||
* @since 2024/8/23 21:08 v0.0.5-dev
|
||||
*/
|
||||
SET_GROUP_ANONYMOUS_BAN,
|
||||
/**
|
||||
* 群组全员禁言
|
||||
*
|
||||
* @since 2024/8/23 21:09 v0.0.5-dev
|
||||
*/
|
||||
SET_GROUP_WHOLE_BAN,
|
||||
/**
|
||||
* 群组设置管理员
|
||||
*
|
||||
* @since 2024/8/23 21:09 v0.0.5-dev
|
||||
*/
|
||||
SET_GROUP_ADMIN,
|
||||
/**
|
||||
* 群组匿名
|
||||
*
|
||||
* @since 2024/8/23 21:09 v0.0.5-dev
|
||||
*/
|
||||
SET_GROUP_ANONYMOUS,
|
||||
/**
|
||||
* 设置群名片(群备注)
|
||||
*
|
||||
* @since 2024/8/23 21:09 v0.0.5-dev
|
||||
*/
|
||||
SET_GROUP_CARD,
|
||||
/**
|
||||
* 设置群名
|
||||
*
|
||||
* @since 2024/8/24 19:04 v0.0.6-dev
|
||||
*/
|
||||
SET_GROUP_NAME,
|
||||
/**
|
||||
* 退出群组
|
||||
*
|
||||
* @since 2024/8/24 20:01 v0.0.6-dev
|
||||
*/
|
||||
SET_GROUP_LEAVE,
|
||||
/**
|
||||
* 设置群组专属头衔
|
||||
*
|
||||
* @since 2024/8/24 20:01 v0.0.6-dev
|
||||
*/
|
||||
SET_GROUP_SPECIAL_TITLE,
|
||||
/**
|
||||
* 处理加好友请求
|
||||
*
|
||||
* @since 2024/8/24 20:01 v0.0.6-dev
|
||||
*/
|
||||
SET_FRIEND_ADD_REQUEST,
|
||||
/**
|
||||
* 处理加群请求/邀请
|
||||
*
|
||||
* @since 2024/8/24 20:02 v0.0.6-dev
|
||||
*/
|
||||
SET_GROUP_ADD_REQUEST,
|
||||
/**
|
||||
* 获取登录号信息
|
||||
*
|
||||
* @since 2024/8/24 20:02 v0.0.6-dev
|
||||
*/
|
||||
GET_LOGIN_INFO(IBot.class),
|
||||
/**
|
||||
* 获取陌生人信息
|
||||
*
|
||||
* @since 2024/8/24 20:02 v0.0.6-dev
|
||||
*/
|
||||
GET_STRANGER_INFO(IUser.class),
|
||||
/**
|
||||
* 获取好友列表
|
||||
*
|
||||
* @since 2024/8/24 20:02 v0.0.6-dev
|
||||
*/
|
||||
GET_FRIEND_LIST(MessageInformation.class, true),
|
||||
/**
|
||||
* 获取群信息
|
||||
*
|
||||
* @since 2024/8/24 20:02 v0.0.6-dev
|
||||
*/
|
||||
GET_GROUP_INFO(GroupInformation.class),
|
||||
/**
|
||||
* 获取群列表
|
||||
*
|
||||
* @since 2024/8/24 20:02 v0.0.6-dev
|
||||
*/
|
||||
GET_GROUP_LIST(GroupInformation.class, true),
|
||||
/**
|
||||
* 获取群成员信息
|
||||
*
|
||||
* @since 2024/8/24 20:02 v0.0.6-dev
|
||||
*/
|
||||
GET_GROUP_MEMBER_INFO(GroupMemberInformation.class),
|
||||
/**
|
||||
* 获取群成员列表
|
||||
*
|
||||
* @since 2024/8/24 20:03 v0.0.6-dev
|
||||
*/
|
||||
GET_GROUP_MEMBER_LIST(GroupMemberInformation.class, true),
|
||||
/**
|
||||
* 获取群荣誉信息
|
||||
*
|
||||
* @since 2024/8/24 20:03 v0.0.6-dev
|
||||
*/
|
||||
GET_GROUP_HONOR_INFO(HonorInformation.class),
|
||||
/**
|
||||
* 获取 Cookies
|
||||
*
|
||||
* @since 2024/8/24 20:03 v0.0.6-dev
|
||||
*/
|
||||
GET_COOKIES(CookiesInformation.class),
|
||||
/**
|
||||
* 获取 CSRF Token
|
||||
*
|
||||
* @since 2024/8/24 20:04 v0.0.6-dev
|
||||
*/
|
||||
GET_CSRF_TOKEN(CsrfTokenInformation.class),
|
||||
/**
|
||||
* 获取 QQ 相关接口凭证
|
||||
*
|
||||
* @since 2024/8/24 20:04 v0.0.6-dev
|
||||
*/
|
||||
GET_CREDENTIALS(CredentialsInformation.class),
|
||||
/**
|
||||
* 获取语音
|
||||
*
|
||||
* @since 2024/8/24 20:04 v0.0.6-dev
|
||||
*/
|
||||
GET_RECORD(FilePathInformation.class),
|
||||
/**
|
||||
* 获取图片
|
||||
*
|
||||
* @since 2024/8/24 20:04 v0.0.6-dev
|
||||
*/
|
||||
GET_IMAGE(FilePathInformation.class),
|
||||
/**
|
||||
* 检查是否可以发送图片
|
||||
*
|
||||
* @since 2024/8/24 20:04 v0.0.6-dev
|
||||
*/
|
||||
CAN_SEND_IMAGE(YesNo.class),
|
||||
/**
|
||||
* 检查是否可以发送语音
|
||||
*
|
||||
* @since 2024/8/24 20:04 v0.0.6-dev
|
||||
*/
|
||||
CAN_SEND_RECORD(YesNo.class),
|
||||
/**
|
||||
* 获取运行状态
|
||||
*
|
||||
* @since 2024/8/24 20:04 v0.0.6-dev
|
||||
*/
|
||||
GET_STATUS(BotStatus.class),
|
||||
/**
|
||||
* 获取版本信息
|
||||
*
|
||||
* @since 2024/8/24 20:04 v0.0.6-dev
|
||||
*/
|
||||
GET_VERSION_INFO(VersionInformation.class),
|
||||
/**
|
||||
* 重启 OneBot 实现
|
||||
*
|
||||
* @since 2024/8/24 20:05 v0.0.6-dev
|
||||
*/
|
||||
SET_RESTART,
|
||||
/**
|
||||
* 清理缓存
|
||||
*
|
||||
* @since 2024/8/24 20:05 v0.0.6-dev
|
||||
*/
|
||||
CLEAN_CACHE;
|
||||
public final Class<?> responseClass;
|
||||
public final boolean array;
|
||||
|
||||
Actions(Class<?> responseClass, boolean array) {
|
||||
this.responseClass = responseClass;
|
||||
this.array = array;
|
||||
}
|
||||
|
||||
Actions(Class<?> responseClass) {
|
||||
this(responseClass, false);
|
||||
}
|
||||
Actions(){
|
||||
|
||||
Actions() {
|
||||
this(Void.class);
|
||||
}
|
||||
}
|
@ -1,7 +1,8 @@
|
||||
package cn.wzpmc.api.api;
|
||||
package cn.wzpmc.api;
|
||||
|
||||
/**
|
||||
* 主Api接口
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.5-dev
|
||||
* @since 2024/8/16 17:31
|
||||
@ -9,13 +10,14 @@ package cn.wzpmc.api.api;
|
||||
public interface IMainApi {
|
||||
/**
|
||||
* 进行请求操作
|
||||
*
|
||||
* @param packet 请求包
|
||||
* @param <REQUEST> 请求类型
|
||||
* @param <RESPONSE> 返回类型
|
||||
* @return 请求返回包
|
||||
* @throws InterruptedException 请求过程中出现Ctrl+C时抛出
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:32 v0.0.5-dev
|
||||
* @param packet 请求包
|
||||
* @return 请求返回包
|
||||
* @param <REQUEST> 请求类型
|
||||
* @param <RESPONSE> 返回类型
|
||||
* @throws InterruptedException 请求过程中出现Ctrl+C时抛出
|
||||
*/
|
||||
<REQUEST, RESPONSE> ActionResponse<RESPONSE> doApiCall(Action<REQUEST, RESPONSE> packet) throws InterruptedException;
|
||||
}
|
@ -1,10 +1,11 @@
|
||||
package cn.wzpmc.api.api.actions.message;
|
||||
package cn.wzpmc.api.actions.message;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
|
||||
/**
|
||||
* 清理缓存
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:46
|
||||
@ -12,6 +13,7 @@ import cn.wzpmc.api.api.Actions;
|
||||
public class CleanCacheAction extends Action<Void, Void> {
|
||||
/**
|
||||
* 清理缓存
|
||||
*
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:59 v0.0.6-dev
|
||||
*/
|
@ -1,11 +1,12 @@
|
||||
package cn.wzpmc.api.api.actions.message.can;
|
||||
package cn.wzpmc.api.actions.message.can;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.entities.YesNo;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.entities.YesNo;
|
||||
|
||||
/**
|
||||
* 检查是否可以发送图片
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:45
|
||||
@ -13,10 +14,11 @@ import cn.wzpmc.api.entities.YesNo;
|
||||
public class CanSendImageAction extends Action<Void, YesNo> {
|
||||
/**
|
||||
* 检查是否可以发送图片
|
||||
*
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:51 v0.0.6-dev
|
||||
*/
|
||||
public CanSendImageAction(){
|
||||
public CanSendImageAction() {
|
||||
super.setAction(Actions.CAN_SEND_IMAGE);
|
||||
}
|
||||
}
|
@ -1,11 +1,12 @@
|
||||
package cn.wzpmc.api.api.actions.message.can;
|
||||
package cn.wzpmc.api.actions.message.can;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.entities.YesNo;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.entities.YesNo;
|
||||
|
||||
/**
|
||||
* 检查是否可以发送语音
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:45
|
||||
@ -13,10 +14,11 @@ import cn.wzpmc.api.entities.YesNo;
|
||||
public class CanSendRecordAction extends Action<Void, YesNo> {
|
||||
/**
|
||||
* 检查是否可以发送语音
|
||||
*
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:51 v0.0.6-dev
|
||||
*/
|
||||
public CanSendRecordAction(){
|
||||
public CanSendRecordAction() {
|
||||
super.setAction(Actions.CAN_SEND_RECORD);
|
||||
}
|
||||
}
|
@ -1,13 +1,14 @@
|
||||
package cn.wzpmc.api.api.actions.message.delete;
|
||||
package cn.wzpmc.api.actions.message.delete;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 撤回消息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.5-dev
|
||||
* @since 2024/8/17 23:02
|
||||
@ -15,19 +16,22 @@ import lombok.Data;
|
||||
public class DeleteMessageAction extends Action<DeleteMessageAction.Params, Void> {
|
||||
/**
|
||||
* 撤回消息
|
||||
*
|
||||
* @param messageId 消息ID
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:09 v0.0.5-dev
|
||||
* @param messageId 消息ID
|
||||
*/
|
||||
public DeleteMessageAction(Integer messageId){
|
||||
public DeleteMessageAction(Integer messageId) {
|
||||
super.setAction(Actions.DELETE_MSG);
|
||||
super.setParams(new Params(messageId));
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static class Params {
|
||||
/**
|
||||
* 消息ID
|
||||
*
|
||||
* @since 2024/8/17 23:03 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "message_id")
|
@ -1,13 +1,14 @@
|
||||
package cn.wzpmc.api.api.actions.message.get;
|
||||
package cn.wzpmc.api.actions.message.get;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.entities.CookiesInformation;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.entities.CookiesInformation;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 获取 Cookies
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:43
|
||||
@ -15,9 +16,10 @@ import lombok.Data;
|
||||
public class GetCookiesAction extends Action<GetCookiesAction.Params, CookiesInformation> {
|
||||
/**
|
||||
* 获取 Cookies
|
||||
*
|
||||
* @param domain 需要获取 cookies 的域名
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:51 v0.0.6-dev
|
||||
* @param domain 需要获取 cookies 的域名
|
||||
*/
|
||||
public GetCookiesAction(String domain) {
|
||||
super.setAction(Actions.GET_COOKIES);
|
||||
@ -26,17 +28,20 @@ public class GetCookiesAction extends Action<GetCookiesAction.Params, CookiesInf
|
||||
|
||||
/**
|
||||
* 获取 Cookies
|
||||
*
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:51 v0.0.6-dev
|
||||
*/
|
||||
public GetCookiesAction() {
|
||||
this("");
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 需要获取 cookies 的域名
|
||||
*
|
||||
* @since 2024/8/24 23:32 v0.0.6-dev
|
||||
*/
|
||||
private String domain;
|
@ -1,13 +1,14 @@
|
||||
package cn.wzpmc.api.api.actions.message.get;
|
||||
package cn.wzpmc.api.actions.message.get;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.entities.CredentialsInformation;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.entities.CredentialsInformation;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 获取 QQ 相关接口凭证
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:44
|
||||
@ -15,9 +16,10 @@ import lombok.Data;
|
||||
public class GetCredentialsAction extends Action<GetCredentialsAction.Params, CredentialsInformation> {
|
||||
/**
|
||||
* 获取 QQ 相关接口凭证
|
||||
*
|
||||
* @param domain 需要获取 cookies 的域名
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:51 v0.0.6-dev
|
||||
* @param domain 需要获取 cookies 的域名
|
||||
*/
|
||||
public GetCredentialsAction(String domain) {
|
||||
super.setAction(Actions.GET_COOKIES);
|
||||
@ -26,17 +28,20 @@ public class GetCredentialsAction extends Action<GetCredentialsAction.Params, Cr
|
||||
|
||||
/**
|
||||
* 获取 QQ 相关接口凭证
|
||||
*
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:52 v0.0.6-dev
|
||||
*/
|
||||
public GetCredentialsAction() {
|
||||
this("");
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 需要获取 cookies 的域名
|
||||
*
|
||||
* @since 2024/8/24 23:32 v0.0.6-dev
|
||||
*/
|
||||
private String domain;
|
@ -1,11 +1,12 @@
|
||||
package cn.wzpmc.api.api.actions.message.get;
|
||||
package cn.wzpmc.api.actions.message.get;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.entities.CsrfTokenInformation;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.entities.CsrfTokenInformation;
|
||||
|
||||
/**
|
||||
* 获取 CSRF Token
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:44
|
||||
@ -13,10 +14,11 @@ import cn.wzpmc.api.entities.CsrfTokenInformation;
|
||||
public class GetCsrfTokenAction extends Action<Void, CsrfTokenInformation> {
|
||||
/**
|
||||
* 获取 CSRF Token
|
||||
*
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:52 v0.0.6-dev
|
||||
*/
|
||||
public GetCsrfTokenAction(){
|
||||
public GetCsrfTokenAction() {
|
||||
super.setAction(Actions.GET_CSRF_TOKEN);
|
||||
}
|
||||
}
|
@ -1,13 +1,14 @@
|
||||
package cn.wzpmc.api.api.actions.message.get;
|
||||
package cn.wzpmc.api.actions.message.get;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.entities.MessageInformation;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.entities.MessageInformation;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 获取合并转发消息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.5-dev
|
||||
* @since 2024/8/23 19:46
|
||||
@ -15,19 +16,22 @@ import lombok.Data;
|
||||
public class GetForwardMessageAction extends Action<GetForwardMessageAction.Params, MessageInformation> {
|
||||
/**
|
||||
* 获取合并转发消息
|
||||
*
|
||||
* @param id 合并转发ID
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:10 v0.0.5-dev
|
||||
* @param id 合并转发ID
|
||||
*/
|
||||
public GetForwardMessageAction(String id){
|
||||
public GetForwardMessageAction(String id) {
|
||||
super.setAction(Actions.GET_FORWARD_MSG);
|
||||
super.setParams(new GetForwardMessageAction.Params(id));
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 合并转发ID
|
||||
*
|
||||
* @since 2024/8/23 19:47 v0.0.5-dev
|
||||
*/
|
||||
private String id;
|
@ -1,13 +1,14 @@
|
||||
package cn.wzpmc.api.api.actions.message.get;
|
||||
package cn.wzpmc.api.actions.message.get;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.entities.MessageInformation;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.entities.MessageInformation;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 获取好友列表
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:41
|
||||
@ -15,10 +16,11 @@ import java.util.List;
|
||||
public class GetFriendListAction extends Action<Void, List<MessageInformation>> {
|
||||
/**
|
||||
* 获取好友列表
|
||||
*
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:52 v0.0.6-dev
|
||||
*/
|
||||
public GetFriendListAction(){
|
||||
public GetFriendListAction() {
|
||||
super.setAction(Actions.GET_FRIEND_LIST);
|
||||
}
|
||||
}
|
@ -1,15 +1,16 @@
|
||||
package cn.wzpmc.api.api.actions.message.get;
|
||||
package cn.wzpmc.api.actions.message.get;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.entities.HonorInformation;
|
||||
import cn.wzpmc.api.entities.HonorType;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.entities.HonorInformation;
|
||||
import cn.wzpmc.entities.HonorType;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 获取群荣誉信息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:43
|
||||
@ -17,10 +18,11 @@ import lombok.Data;
|
||||
public class GetGroupHonorInfoAction extends Action<GetGroupHonorInfoAction.Params, HonorInformation> {
|
||||
/**
|
||||
* 获取群荣誉信息
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param type 要获取的群荣誉类型,可传入 talkative performer legend strong_newbie emotion 以分别获取单个类型的群荣誉数据,或传入 all 获取所有数据
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:52 v0.0.6-dev
|
||||
* @param groupId 群号
|
||||
* @param type 要获取的群荣誉类型,可传入 talkative performer legend strong_newbie emotion 以分别获取单个类型的群荣誉数据,或传入 all 获取所有数据
|
||||
*/
|
||||
public GetGroupHonorInfoAction(Long groupId, HonorType type) {
|
||||
this.setAction(Actions.GET_GROUP_HONOR_INFO);
|
||||
@ -29,24 +31,28 @@ public class GetGroupHonorInfoAction extends Action<GetGroupHonorInfoAction.Para
|
||||
|
||||
/**
|
||||
* 获取群荣誉信息
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:53 v0.0.6-dev
|
||||
* @param groupId 群号
|
||||
*/
|
||||
public GetGroupHonorInfoAction(Long groupId) {
|
||||
this(groupId, HonorType.ALL);
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/24 23:52 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 要获取的群荣誉类型,可传入 talkative performer legend strong_newbie emotion 以分别获取单个类型的群荣誉数据,或传入 all 获取所有数据
|
||||
*
|
||||
* @since 2024/8/24 23:52 v0.0.6-dev
|
||||
*/
|
||||
private HonorType type;
|
@ -1,14 +1,15 @@
|
||||
package cn.wzpmc.api.api.actions.message.get;
|
||||
package cn.wzpmc.api.actions.message.get;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.entities.GroupInformation;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.entities.GroupInformation;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 获取群信息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:41
|
||||
@ -16,36 +17,41 @@ import lombok.Data;
|
||||
public class GetGroupInfoAction extends Action<GetGroupInfoAction.Params, GroupInformation> {
|
||||
/**
|
||||
* 获取群信息
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:53 v0.0.6-dev
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param noCache 是否不使用缓存(使用缓存可能更新不及时,但响应更快)
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:53 v0.0.6-dev
|
||||
*/
|
||||
public GetGroupInfoAction(Long groupId, Boolean noCache){
|
||||
public GetGroupInfoAction(Long groupId, Boolean noCache) {
|
||||
super.setAction(Actions.GET_GROUP_INFO);
|
||||
super.setParams(new Params(groupId, noCache));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取群信息
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:53 v0.0.6-dev
|
||||
* @param groupId 群号
|
||||
*/
|
||||
public GetGroupInfoAction(Long groupId){
|
||||
public GetGroupInfoAction(Long groupId) {
|
||||
this(groupId, false);
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/24 22:58 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 是否不使用缓存(使用缓存可能更新不及时,但响应更快)
|
||||
*
|
||||
* @since 2024/8/24 22:58 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "no_cache", defaultValue = "false")
|
@ -1,13 +1,14 @@
|
||||
package cn.wzpmc.api.api.actions.message.get;
|
||||
package cn.wzpmc.api.actions.message.get;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.entities.GroupInformation;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.entities.GroupInformation;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 获取群列表
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:42
|
||||
@ -15,10 +16,11 @@ import java.util.List;
|
||||
public class GetGroupListAction extends Action<Void, List<GroupInformation>> {
|
||||
/**
|
||||
* 获取群列表
|
||||
*
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:54 v0.0.6-dev
|
||||
*/
|
||||
public GetGroupListAction(){
|
||||
public GetGroupListAction() {
|
||||
super.setAction(Actions.GET_GROUP_LIST);
|
||||
}
|
||||
}
|
@ -1,14 +1,15 @@
|
||||
package cn.wzpmc.api.api.actions.message.get;
|
||||
package cn.wzpmc.api.actions.message.get;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.entities.GroupMemberInformation;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.entities.GroupMemberInformation;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 获取群成员信息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:42
|
||||
@ -16,44 +17,50 @@ import lombok.Data;
|
||||
public class GetGroupMemberInfoAction extends Action<GetGroupMemberInfoAction.Params, GroupMemberInformation> {
|
||||
/**
|
||||
* 获取群成员信息
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param userId QQ 号
|
||||
* @param noCache 是否不使用缓存
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:54 v0.0.6-dev
|
||||
* @param groupId 群号
|
||||
* @param userId QQ 号
|
||||
* @param noCache 是否不使用缓存
|
||||
*/
|
||||
public GetGroupMemberInfoAction(Long groupId, Long userId, Boolean noCache){
|
||||
public GetGroupMemberInfoAction(Long groupId, Long userId, Boolean noCache) {
|
||||
super.setAction(Actions.GET_GROUP_MEMBER_INFO);
|
||||
super.setParams(new Params(groupId, userId, noCache));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取群成员信息
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param userId QQ 号
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:54 v0.0.6-dev
|
||||
* @param groupId 群号
|
||||
* @param userId QQ 号
|
||||
*/
|
||||
public GetGroupMemberInfoAction(Long groupId, Long userId) {
|
||||
this(groupId, userId, false);
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/24 23:02 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* QQ 号
|
||||
*
|
||||
* @since 2024/8/24 23:02 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "user_id")
|
||||
private Long userId;
|
||||
/**
|
||||
* 是否不使用缓存
|
||||
*
|
||||
* @since 2024/8/24 23:02 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "no_cache", defaultValue = "false")
|
@ -1,8 +1,8 @@
|
||||
package cn.wzpmc.api.api.actions.message.get;
|
||||
package cn.wzpmc.api.actions.message.get;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.entities.GroupMemberInformation;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.entities.GroupMemberInformation;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
@ -11,6 +11,7 @@ import java.util.List;
|
||||
|
||||
/**
|
||||
* 获取群成员列表
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:42
|
||||
@ -18,19 +19,22 @@ import java.util.List;
|
||||
public class GetGroupMemberListAction extends Action<GetGroupMemberListAction.Params, List<GroupMemberInformation>> {
|
||||
/**
|
||||
* 获取群成员列表
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:54 v0.0.6-dev
|
||||
* @param groupId 群号
|
||||
*/
|
||||
public GetGroupMemberListAction(Long groupId) {
|
||||
super.setAction(Actions.GET_GROUP_MEMBER_LIST);
|
||||
super.setParams(new Params(groupId));
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/24 23:08 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
@ -1,13 +1,14 @@
|
||||
package cn.wzpmc.api.api.actions.message.get;
|
||||
package cn.wzpmc.api.actions.message.get;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.entities.FilePathInformation;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.entities.FilePathInformation;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 获取图片
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:44
|
||||
@ -15,19 +16,22 @@ import lombok.Data;
|
||||
public class GetImageAction extends Action<GetImageAction.Params, FilePathInformation> {
|
||||
/**
|
||||
* 获取图片
|
||||
*
|
||||
* @param file 收到的图片文件名(消息段的 file 参数),如 6B4DE3DFD1BD271E3297859D41C530F5.jpg
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:55 v0.0.6-dev
|
||||
* @param file 收到的图片文件名(消息段的 file 参数),如 6B4DE3DFD1BD271E3297859D41C530F5.jpg
|
||||
*/
|
||||
public GetImageAction(String file) {
|
||||
super.setAction(Actions.GET_IMAGE);
|
||||
super.setParams(new Params(file));
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 收到的图片文件名(消息段的 file 参数),如 6B4DE3DFD1BD271E3297859D41C530F5.jpg
|
||||
*
|
||||
* @since 2024/8/24 23:41 v0.0.6-dev
|
||||
*/
|
||||
private String file;
|
@ -1,11 +1,12 @@
|
||||
package cn.wzpmc.api.api.actions.message.get;
|
||||
package cn.wzpmc.api.actions.message.get;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.user.IBot;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.user.IBot;
|
||||
|
||||
/**
|
||||
* 获取登录号信息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:18
|
||||
@ -13,6 +14,7 @@ import cn.wzpmc.api.user.IBot;
|
||||
public class GetLoginInfoAction extends Action<Void, IBot> {
|
||||
/**
|
||||
* 获取登录号信息
|
||||
*
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:55 v0.0.6-dev
|
||||
*/
|
@ -1,14 +1,15 @@
|
||||
package cn.wzpmc.api.api.actions.message.get;
|
||||
package cn.wzpmc.api.actions.message.get;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.entities.MessageInformation;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.entities.MessageInformation;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 获取消息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.5-dev
|
||||
* @since 2024/8/17 23:07
|
||||
@ -16,19 +17,22 @@ import lombok.Data;
|
||||
public class GetMessageAction extends Action<GetMessageAction.Params, MessageInformation> {
|
||||
/**
|
||||
* 获取消息
|
||||
*
|
||||
* @param messageId 消息 ID
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:11 v0.0.5-dev
|
||||
* @param messageId 消息 ID
|
||||
*/
|
||||
public GetMessageAction(Integer messageId){
|
||||
public GetMessageAction(Integer messageId) {
|
||||
super.setAction(Actions.GET_MSG);
|
||||
super.setParams(new Params(messageId));
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static class Params {
|
||||
/**
|
||||
* 消息 ID
|
||||
*
|
||||
* @since 2024/8/23 21:11 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "message_id")
|
@ -1,14 +1,15 @@
|
||||
package cn.wzpmc.api.api.actions.message.get;
|
||||
package cn.wzpmc.api.actions.message.get;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.entities.FilePathInformation;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.entities.FilePathInformation;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 获取语音
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:44
|
||||
@ -16,25 +17,29 @@ import lombok.Data;
|
||||
public class GetRecordAction extends Action<GetRecordAction.Params, FilePathInformation> {
|
||||
/**
|
||||
* 获取语音
|
||||
*
|
||||
* @param file 收到的语音文件名(消息段的 file 参数),如 0B38145AA44505000B38145AA4450500.silk
|
||||
* @param outFormat 要转换到的格式,目前支持 mp3、amr、wma、m4a、spx、ogg、wav、flac
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:55 v0.0.6-dev
|
||||
* @param file 收到的语音文件名(消息段的 file 参数),如 0B38145AA44505000B38145AA4450500.silk
|
||||
* @param outFormat 要转换到的格式,目前支持 mp3、amr、wma、m4a、spx、ogg、wav、flac
|
||||
*/
|
||||
public GetRecordAction(String file, String outFormat){
|
||||
public GetRecordAction(String file, String outFormat) {
|
||||
super.setAction(Actions.GET_RECORD);
|
||||
super.setParams(new Params(file, outFormat));
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 收到的语音文件名(消息段的 file 参数),如 0B38145AA44505000B38145AA4450500.silk
|
||||
*
|
||||
* @since 2024/8/24 23:35 v0.0.6-dev
|
||||
*/
|
||||
private String file;
|
||||
/**
|
||||
* 要转换到的格式,目前支持 mp3、amr、wma、m4a、spx、ogg、wav、flac
|
||||
*
|
||||
* @since 2024/8/24 23:35 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "out_format")
|
@ -1,11 +1,12 @@
|
||||
package cn.wzpmc.api.api.actions.message.get;
|
||||
package cn.wzpmc.api.actions.message.get;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.entities.BotStatus;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.entities.BotStatus;
|
||||
|
||||
/**
|
||||
* 获取运行状态
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:45
|
||||
@ -13,10 +14,11 @@ import cn.wzpmc.api.entities.BotStatus;
|
||||
public class GetStatusAction extends Action<Void, BotStatus> {
|
||||
/**
|
||||
* 获取运行状态
|
||||
*
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:55 v0.0.6-dev
|
||||
*/
|
||||
public GetStatusAction(){
|
||||
public GetStatusAction() {
|
||||
super.setAction(Actions.GET_STATUS);
|
||||
}
|
||||
}
|
@ -1,14 +1,15 @@
|
||||
package cn.wzpmc.api.api.actions.message.get;
|
||||
package cn.wzpmc.api.actions.message.get;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.user.IUser;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.user.IUser;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 获取陌生人信息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:41
|
||||
@ -16,36 +17,41 @@ import lombok.Data;
|
||||
public class GetStrangerInfoAction extends Action<GetStrangerInfoAction.Params, IUser> {
|
||||
/**
|
||||
* 获取陌生人信息
|
||||
*
|
||||
* @param userId QQ 号
|
||||
* @param noCache 是否不使用缓存(使用缓存可能更新不及时,但响应更快)
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:55 v0.0.6-dev
|
||||
* @param userId QQ 号
|
||||
* @param noCache 是否不使用缓存(使用缓存可能更新不及时,但响应更快)
|
||||
*/
|
||||
public GetStrangerInfoAction(Long userId, boolean noCache){
|
||||
public GetStrangerInfoAction(Long userId, boolean noCache) {
|
||||
super.setAction(Actions.GET_STRANGER_INFO);
|
||||
super.setParams(new GetStrangerInfoAction.Params(userId, noCache));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取陌生人信息
|
||||
*
|
||||
* @param userId QQ 号
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:55 v0.0.6-dev
|
||||
* @param userId QQ 号
|
||||
*/
|
||||
public GetStrangerInfoAction(Long userId){
|
||||
public GetStrangerInfoAction(Long userId) {
|
||||
this(userId, false);
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* QQ 号
|
||||
*
|
||||
* @since 2024/8/24 22:52 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "user_id")
|
||||
private Long userId;
|
||||
/**
|
||||
* 是否不使用缓存(使用缓存可能更新不及时,但响应更快)
|
||||
*
|
||||
* @since 2024/8/24 22:52 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "no_cache", defaultValue = "false")
|
@ -1,11 +1,12 @@
|
||||
package cn.wzpmc.api.api.actions.message.get;
|
||||
package cn.wzpmc.api.actions.message.get;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.entities.VersionInformation;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.entities.VersionInformation;
|
||||
|
||||
/**
|
||||
* 获取版本信息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:45
|
||||
@ -13,10 +14,11 @@ import cn.wzpmc.api.entities.VersionInformation;
|
||||
public class GetVersionInfoAction extends Action<Void, VersionInformation> {
|
||||
/**
|
||||
* 获取版本信息
|
||||
*
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:55 v0.0.6-dev
|
||||
*/
|
||||
public GetVersionInfoAction(){
|
||||
public GetVersionInfoAction() {
|
||||
super.setAction(Actions.GET_VERSION_INFO);
|
||||
|
||||
}
|
@ -1,14 +1,15 @@
|
||||
package cn.wzpmc.api.api.actions.message.send;
|
||||
package cn.wzpmc.api.actions.message.send;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.message.MessageComponent;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.message.MessageComponent;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 发送群消息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.5-dev
|
||||
* @since 2024/8/17 22:52
|
||||
@ -16,43 +17,49 @@ import lombok.Data;
|
||||
public class SendGroupMessageAction extends Action<SendGroupMessageAction.Params, SendMessageActionResponseData> {
|
||||
/**
|
||||
* 发送群消息
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param message 要发送的内容
|
||||
* @param autoEscape 消息内容是否作为纯文本发送(即不解析 CQ 码),只在 message 字段是字符串时有效
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:11 v0.0.5-dev
|
||||
* @param groupId 群号
|
||||
* @param message 要发送的内容
|
||||
* @param autoEscape 消息内容是否作为纯文本发送(即不解析 CQ 码),只在 message 字段是字符串时有效
|
||||
*/
|
||||
public SendGroupMessageAction(Long groupId, MessageComponent message, boolean autoEscape){
|
||||
public SendGroupMessageAction(Long groupId, MessageComponent message, boolean autoEscape) {
|
||||
super.setAction(Actions.SEND_GROUP_MSG);
|
||||
super.setParams(new SendGroupMessageAction.Params(groupId, message, autoEscape));
|
||||
}
|
||||
|
||||
/**
|
||||
* 发送群消息
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:11 v0.0.5-dev
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param message 要发送的内容
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:11 v0.0.5-dev
|
||||
*/
|
||||
public SendGroupMessageAction(Long groupId, MessageComponent message){
|
||||
public SendGroupMessageAction(Long groupId, MessageComponent message) {
|
||||
this(groupId, message, false);
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static class Params {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/17 22:54 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 要发送的内容
|
||||
*
|
||||
* @since 2024/8/17 22:54 v0.0.5-dev
|
||||
*/
|
||||
private MessageComponent message;
|
||||
/**
|
||||
* 消息内容是否作为纯文本发送(即不解析 CQ 码),只在 message 字段是字符串时有效
|
||||
*
|
||||
* @since 2024/8/17 22:51 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "auto_escape")
|
@ -1,13 +1,14 @@
|
||||
package cn.wzpmc.api.api.actions.message.send;
|
||||
package cn.wzpmc.api.actions.message.send;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 发送好友赞
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.5-dev
|
||||
* @since 2024/8/23 19:49
|
||||
@ -15,36 +16,41 @@ import lombok.Data;
|
||||
public class SendLikeAction extends Action<SendLikeAction.Params, Void> {
|
||||
/**
|
||||
* 发送好友赞
|
||||
*
|
||||
* @param userId 对方 QQ 号
|
||||
* @param times 赞的次数,每个好友每天最多 10 次
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:12 v0.0.5-dev
|
||||
* @param userId 对方 QQ 号
|
||||
* @param times 赞的次数,每个好友每天最多 10 次
|
||||
*/
|
||||
public SendLikeAction(Long userId, Long times){
|
||||
public SendLikeAction(Long userId, Long times) {
|
||||
super.setAction(Actions.SEND_LIKE);
|
||||
super.setParams(new Params(userId, times));
|
||||
}
|
||||
|
||||
/**
|
||||
* 发送好友赞
|
||||
*
|
||||
* @param userId 对方 QQ 号
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:12 v0.0.5-dev
|
||||
* @param userId 对方 QQ 号
|
||||
*/
|
||||
public SendLikeAction(Long userId){
|
||||
public SendLikeAction(Long userId) {
|
||||
this(userId, 1L);
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 对方 QQ 号
|
||||
*
|
||||
* @since 2024/8/23 21:12 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "user_id")
|
||||
private Long userId;
|
||||
/**
|
||||
* 赞的次数,每个好友每天最多 10 次
|
||||
*
|
||||
* @since 2024/8/23 21:12 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(defaultValue = "1")
|
@ -1,10 +1,11 @@
|
||||
package cn.wzpmc.api.api.actions.message.send;
|
||||
package cn.wzpmc.api.actions.message.send;
|
||||
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 发送私聊消息返回
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.5-dev
|
||||
* @since 2024/8/17 21:55
|
||||
@ -13,6 +14,7 @@ import lombok.Data;
|
||||
public class SendMessageActionResponseData {
|
||||
/**
|
||||
* 消息 ID
|
||||
*
|
||||
* @since 2024/8/17 22:51 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "message_id")
|
@ -1,14 +1,15 @@
|
||||
package cn.wzpmc.api.api.actions.message.send;
|
||||
package cn.wzpmc.api.actions.message.send;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.message.MessageComponent;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.message.MessageComponent;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 发送私聊消息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.5-dev
|
||||
* @since 2024/8/17 21:54
|
||||
@ -16,43 +17,49 @@ import lombok.Data;
|
||||
public class SendPrivateMessageAction extends Action<SendPrivateMessageAction.Params, SendMessageActionResponseData> {
|
||||
/**
|
||||
* 发送私聊消息
|
||||
*
|
||||
* @param userId 对方 QQ 号
|
||||
* @param message 要发送的内容
|
||||
* @param autoEscape 消息内容是否作为纯文本发送(即不解析 CQ 码),只在 message 字段是字符串时有效
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:13 v0.0.5-dev
|
||||
* @param userId 对方 QQ 号
|
||||
* @param message 要发送的内容
|
||||
* @param autoEscape 消息内容是否作为纯文本发送(即不解析 CQ 码),只在 message 字段是字符串时有效
|
||||
*/
|
||||
public SendPrivateMessageAction(Long userId, MessageComponent message, boolean autoEscape){
|
||||
public SendPrivateMessageAction(Long userId, MessageComponent message, boolean autoEscape) {
|
||||
super.setAction(Actions.SEND_PRIVATE_MSG);
|
||||
super.setParams(new Params(userId, message, autoEscape));
|
||||
}
|
||||
|
||||
/**
|
||||
* 发送私聊消息
|
||||
*
|
||||
* @param userId 对方 QQ 号
|
||||
* @param message 要发送的内容
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:14 v0.0.5-dev
|
||||
* @param userId 对方 QQ 号
|
||||
* @param message 要发送的内容
|
||||
*/
|
||||
public SendPrivateMessageAction(Long userId, MessageComponent message){
|
||||
public SendPrivateMessageAction(Long userId, MessageComponent message) {
|
||||
this(userId, message, false);
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static class Params {
|
||||
/**
|
||||
* 对方 QQ 号
|
||||
*
|
||||
* @since 2024/8/17 22:51 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "user_id")
|
||||
private Long userId;
|
||||
/**
|
||||
* 要发送的内容
|
||||
*
|
||||
* @since 2024/8/17 22:51 v0.0.5-dev
|
||||
*/
|
||||
private MessageComponent message;
|
||||
/**
|
||||
* 消息内容是否作为纯文本发送(即不解析 CQ 码),只在 message 字段是字符串时有效
|
||||
*
|
||||
* @since 2024/8/17 22:51 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "auto_escape")
|
@ -1,13 +1,14 @@
|
||||
package cn.wzpmc.api.api.actions.message.set;
|
||||
package cn.wzpmc.api.actions.message.set;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 处理加好友请求
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:08
|
||||
@ -15,23 +16,25 @@ import lombok.Data;
|
||||
public class SetFriendAddRequestAction extends Action<SetFriendAddRequestAction.Params, Void> {
|
||||
/**
|
||||
* 处理加好友请求
|
||||
*
|
||||
* @param flag 加好友请求的 flag(需从上报的数据中获得)
|
||||
* @param approve 是否同意请求
|
||||
* @param remark 添加后的好友备注(仅在同意时有效)
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:56 v0.0.6-dev
|
||||
* @param flag 加好友请求的 flag(需从上报的数据中获得)
|
||||
* @param approve 是否同意请求
|
||||
* @param remark 添加后的好友备注(仅在同意时有效)
|
||||
*/
|
||||
public SetFriendAddRequestAction(String flag, boolean approve, String remark){
|
||||
public SetFriendAddRequestAction(String flag, boolean approve, String remark) {
|
||||
super.setAction(Actions.SET_FRIEND_ADD_REQUEST);
|
||||
super.setParams(new Params(flag, approve, remark));
|
||||
}
|
||||
|
||||
/**
|
||||
* 处理加好友请求
|
||||
*
|
||||
* @param flag 加好友请求的 flag(需从上报的数据中获得)
|
||||
* @param approve 是否同意请求
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:56 v0.0.6-dev
|
||||
* @param flag 加好友请求的 flag(需从上报的数据中获得)
|
||||
* @param approve 是否同意请求
|
||||
*/
|
||||
public SetFriendAddRequestAction(String flag, boolean approve) {
|
||||
this(flag, approve, "");
|
||||
@ -39,10 +42,11 @@ public class SetFriendAddRequestAction extends Action<SetFriendAddRequestAction.
|
||||
|
||||
/**
|
||||
* 处理加好友请求
|
||||
*
|
||||
* @param flag 加好友请求的 flag(需从上报的数据中获得)
|
||||
* @param remark 添加后的好友备注(仅在同意时有效)
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:56 v0.0.6-dev
|
||||
* @param flag 加好友请求的 flag(需从上报的数据中获得)
|
||||
* @param remark 添加后的好友备注(仅在同意时有效)
|
||||
*/
|
||||
public SetFriendAddRequestAction(String flag, String remark) {
|
||||
this(flag, true, remark);
|
||||
@ -50,29 +54,34 @@ public class SetFriendAddRequestAction extends Action<SetFriendAddRequestAction.
|
||||
|
||||
/**
|
||||
* 处理加好友请求
|
||||
*
|
||||
* @param flag 加好友请求的 flag(需从上报的数据中获得)
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:56 v0.0.6-dev
|
||||
* @param flag 加好友请求的 flag(需从上报的数据中获得)
|
||||
*/
|
||||
public SetFriendAddRequestAction(String flag) {
|
||||
this(flag, true);
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 加好友请求的 flag(需从上报的数据中获得)
|
||||
*
|
||||
* @since 2024/8/24 21:09 v0.0.6-dev
|
||||
*/
|
||||
private String flag;
|
||||
/**
|
||||
* 是否同意请求
|
||||
*
|
||||
* @since 2024/8/24 21:09 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(defaultValue = "true")
|
||||
private boolean approve;
|
||||
/**
|
||||
* 添加后的好友备注(仅在同意时有效)
|
||||
*
|
||||
* @since 2024/8/24 21:09 v0.0.6-dev
|
||||
*/
|
||||
private String remark;
|
@ -1,14 +1,15 @@
|
||||
package cn.wzpmc.api.api.actions.message.set;
|
||||
package cn.wzpmc.api.actions.message.set;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.events.request.group.GroupJoinRequestEventSubType;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.events.request.group.GroupJoinRequestEventSubType;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 处理加群请求/邀请
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:18
|
||||
@ -16,12 +17,13 @@ import lombok.Data;
|
||||
public class SetGroupAddRequestAction extends Action<SetGroupAddRequestAction.Params, Void> {
|
||||
/**
|
||||
* 处理加群请求/邀请
|
||||
*
|
||||
* @param flag 加群请求的 flag(需从上报的数据中获得)
|
||||
* @param type 请求类型
|
||||
* @param approve 是否同意请求/邀请
|
||||
* @param reason 拒绝理由(仅在拒绝时有效)
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:56 v0.0.6-dev
|
||||
* @param flag 加群请求的 flag(需从上报的数据中获得)
|
||||
* @param type 请求类型
|
||||
* @param approve 是否同意请求/邀请
|
||||
* @param reason 拒绝理由(仅在拒绝时有效)
|
||||
*/
|
||||
public SetGroupAddRequestAction(String flag, GroupJoinRequestEventSubType type, boolean approve, String reason) {
|
||||
super.setAction(Actions.SET_GROUP_ADD_REQUEST);
|
||||
@ -30,11 +32,12 @@ public class SetGroupAddRequestAction extends Action<SetGroupAddRequestAction.Pa
|
||||
|
||||
/**
|
||||
* 处理加群请求/邀请
|
||||
*
|
||||
* @param flag 加群请求的 flag(需从上报的数据中获得)
|
||||
* @param type 请求类型
|
||||
* @param reason 拒绝理由(仅在拒绝时有效)
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:56 v0.0.6-dev
|
||||
* @param flag 加群请求的 flag(需从上报的数据中获得)
|
||||
* @param type 请求类型
|
||||
* @param reason 拒绝理由(仅在拒绝时有效)
|
||||
*/
|
||||
public SetGroupAddRequestAction(String flag, GroupJoinRequestEventSubType type, String reason) {
|
||||
this(flag, type, false, reason);
|
||||
@ -42,35 +45,41 @@ public class SetGroupAddRequestAction extends Action<SetGroupAddRequestAction.Pa
|
||||
|
||||
/**
|
||||
* 处理加群请求/邀请
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:56 v0.0.6-dev
|
||||
*
|
||||
* @param flag 加群请求的 flag(需从上报的数据中获得)
|
||||
* @param type 请求类型
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:56 v0.0.6-dev
|
||||
*/
|
||||
public SetGroupAddRequestAction(String flag, GroupJoinRequestEventSubType type) {
|
||||
this(flag, type, true, "");
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 加群请求的 flag(需从上报的数据中获得)
|
||||
*
|
||||
* @since 2024/8/24 21:14 v0.0.6-dev
|
||||
*/
|
||||
private String flag;
|
||||
/**
|
||||
* 请求类型
|
||||
*
|
||||
* @since 2024/8/24 21:14 v0.0.6-dev
|
||||
*/
|
||||
private GroupJoinRequestEventSubType type;
|
||||
/**
|
||||
* 是否同意请求/邀请
|
||||
*
|
||||
* @since 2024/8/24 21:14 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(defaultValue = "true")
|
||||
private boolean approve;
|
||||
/**
|
||||
* 拒绝理由(仅在拒绝时有效)
|
||||
*
|
||||
* @since 2024/8/24 21:14 v0.0.6-dev
|
||||
*/
|
||||
private String reason;
|
@ -1,13 +1,14 @@
|
||||
package cn.wzpmc.api.api.actions.message.set;
|
||||
package cn.wzpmc.api.actions.message.set;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 群组设置管理员
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.5-dev
|
||||
* @since 2024/8/23 20:51
|
||||
@ -15,44 +16,50 @@ import lombok.Data;
|
||||
public class SetGroupAdminAction extends Action<SetGroupAdminAction.Params, Void> {
|
||||
/**
|
||||
* 群组设置管理员
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param userId 要设置管理员的 QQ 号
|
||||
* @param enable true 为设置,false 为取消
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:14 v0.0.5-dev
|
||||
* @param groupId 群号
|
||||
* @param userId 要设置管理员的 QQ 号
|
||||
* @param enable true 为设置,false 为取消
|
||||
*/
|
||||
public SetGroupAdminAction(Long groupId, Long userId, Boolean enable){
|
||||
public SetGroupAdminAction(Long groupId, Long userId, Boolean enable) {
|
||||
super.setAction(Actions.SET_GROUP_ADMIN);
|
||||
super.setParams(new Params(groupId, userId, enable));
|
||||
}
|
||||
|
||||
/**
|
||||
* 群组设置管理员
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param userId 要设置管理员的 QQ 号
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:14 v0.0.5-dev
|
||||
* @param groupId 群号
|
||||
* @param userId 要设置管理员的 QQ 号
|
||||
*/
|
||||
public SetGroupAdminAction(Long groupId, Long userId) {
|
||||
this(groupId, userId, true);
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/23 21:15 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 要设置管理员的 QQ 号
|
||||
*
|
||||
* @since 2024/8/23 21:15 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "user_id")
|
||||
private Long userId;
|
||||
/**
|
||||
* true 为设置,false 为取消
|
||||
*
|
||||
* @since 2024/8/23 21:15 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(defaultValue = "true")
|
@ -1,13 +1,14 @@
|
||||
package cn.wzpmc.api.api.actions.message.set;
|
||||
package cn.wzpmc.api.actions.message.set;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 群组匿名
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.5-dev
|
||||
* @since 2024/8/23 20:55
|
||||
@ -15,10 +16,11 @@ import lombok.Data;
|
||||
public class SetGroupAnonymousAction extends Action<SetGroupAnonymousAction.Params, Void> {
|
||||
/**
|
||||
* 群组匿名
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param enable 是否允许匿名聊天
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:16 v0.0.5-dev
|
||||
* @param groupId 群号
|
||||
* @param enable 是否允许匿名聊天
|
||||
*/
|
||||
public SetGroupAnonymousAction(Long groupId, Boolean enable) {
|
||||
super.setAction(Actions.SET_GROUP_ANONYMOUS);
|
||||
@ -27,24 +29,28 @@ public class SetGroupAnonymousAction extends Action<SetGroupAnonymousAction.Para
|
||||
|
||||
/**
|
||||
* 群组匿名
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:16 v0.0.5-dev
|
||||
* @param groupId 群号
|
||||
*/
|
||||
public SetGroupAnonymousAction(Long groupId) {
|
||||
this(groupId, true);
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/23 21:16 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 是否允许匿名聊天
|
||||
*
|
||||
* @since 2024/8/23 21:16 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(defaultValue = "true")
|
@ -1,14 +1,15 @@
|
||||
package cn.wzpmc.api.api.actions.message.set;
|
||||
package cn.wzpmc.api.actions.message.set;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.message.json.parts.Anonymous;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import cn.wzpmc.message.json.parts.Anonymous;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 群组匿名用户禁言
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.5-dev
|
||||
* @since 2024/8/23 20:08
|
||||
@ -16,12 +17,13 @@ import lombok.Data;
|
||||
public class SetGroupAnonymousBanAction extends Action<SetGroupAnonymousBanAction.Params, Void> {
|
||||
/**
|
||||
* 群组匿名用户禁言
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param anonymous 可选,要禁言的匿名用户对象(群消息上报的 anonymous 字段)
|
||||
* @param flag 可选,要禁言的匿名用户的 flag(需从群消息上报的数据中获得)
|
||||
* @param duration 禁言时长,单位秒,无法取消匿名用户禁言(默认30 * 60)
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:17 v0.0.5-dev
|
||||
* @param groupId 群号
|
||||
* @param anonymous 可选,要禁言的匿名用户对象(群消息上报的 anonymous 字段)
|
||||
* @param flag 可选,要禁言的匿名用户的 flag(需从群消息上报的数据中获得)
|
||||
* @param duration 禁言时长,单位秒,无法取消匿名用户禁言(默认30 * 60)
|
||||
*/
|
||||
protected SetGroupAnonymousBanAction(Long groupId, Anonymous anonymous, String flag, Long duration) {
|
||||
super.setAction(Actions.SET_GROUP_ANONYMOUS_BAN);
|
||||
@ -30,11 +32,12 @@ public class SetGroupAnonymousBanAction extends Action<SetGroupAnonymousBanActio
|
||||
|
||||
/**
|
||||
* 群组匿名用户禁言
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param anonymous 要禁言的匿名用户对象(群消息上报的 anonymous 字段)
|
||||
* @param duration 禁言时长,单位秒,无法取消匿名用户禁言
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:17 v0.0.5-dev
|
||||
* @param groupId 群号
|
||||
* @param anonymous 要禁言的匿名用户对象(群消息上报的 anonymous 字段)
|
||||
* @param duration 禁言时长,单位秒,无法取消匿名用户禁言
|
||||
*/
|
||||
public SetGroupAnonymousBanAction(Long groupId, Anonymous anonymous, Long duration) {
|
||||
this(groupId, anonymous, null, duration);
|
||||
@ -42,10 +45,11 @@ public class SetGroupAnonymousBanAction extends Action<SetGroupAnonymousBanActio
|
||||
|
||||
/**
|
||||
* 群组匿名用户禁言
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param anonymous 要禁言的匿名用户对象(群消息上报的 anonymous 字段)
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:17 v0.0.5-dev
|
||||
* @param groupId 群号
|
||||
* @param anonymous 要禁言的匿名用户对象(群消息上报的 anonymous 字段)
|
||||
*/
|
||||
public SetGroupAnonymousBanAction(Long groupId, Anonymous anonymous) {
|
||||
this(groupId, anonymous, 1800L);
|
||||
@ -53,11 +57,12 @@ public class SetGroupAnonymousBanAction extends Action<SetGroupAnonymousBanActio
|
||||
|
||||
/**
|
||||
* 群组匿名用户禁言
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param flag 要禁言的匿名用户的 flag(需从群消息上报的数据中获得)
|
||||
* @param duration 禁言时长,单位秒,无法取消匿名用户禁言
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:17 v0.0.5-dev
|
||||
* @param groupId 群号
|
||||
* @param flag 要禁言的匿名用户的 flag(需从群消息上报的数据中获得)
|
||||
* @param duration 禁言时长,单位秒,无法取消匿名用户禁言
|
||||
*/
|
||||
public SetGroupAnonymousBanAction(Long groupId, String flag, Long duration) {
|
||||
this(groupId, null, flag, duration);
|
||||
@ -65,35 +70,41 @@ public class SetGroupAnonymousBanAction extends Action<SetGroupAnonymousBanActio
|
||||
|
||||
/**
|
||||
* 群组匿名用户禁言
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param flag 要禁言的匿名用户的 flag(需从群消息上报的数据中获得)
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:17 v0.0.5-dev
|
||||
* @param groupId 群号
|
||||
* @param flag 要禁言的匿名用户的 flag(需从群消息上报的数据中获得)
|
||||
*/
|
||||
public SetGroupAnonymousBanAction(Long groupId, String flag) {
|
||||
this(groupId, flag, 1800L);
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/23 21:17 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 可选,要禁言的匿名用户对象(群消息上报的 anonymous 字段)
|
||||
*
|
||||
* @since 2024/8/23 21:17 v0.0.5-dev
|
||||
*/
|
||||
private Anonymous anonymous;
|
||||
/**
|
||||
* 可选,要禁言的匿名用户的 flag(需从群消息上报的数据中获得)
|
||||
*
|
||||
* @since 2024/8/23 21:17 v0.0.5-dev
|
||||
*/
|
||||
private String flag;
|
||||
/**
|
||||
* 禁言时长,单位秒,无法取消匿名用户禁言(默认30 * 60)
|
||||
*
|
||||
* @since 2024/8/23 21:17 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(defaultValue = "1800")
|
@ -1,13 +1,14 @@
|
||||
package cn.wzpmc.api.api.actions.message.set;
|
||||
package cn.wzpmc.api.actions.message.set;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 群组单人禁言
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.5-dev
|
||||
* @since 2024/8/23 20:03
|
||||
@ -15,44 +16,50 @@ import lombok.Data;
|
||||
public class SetGroupBanAction extends Action<SetGroupBanAction.Params, Void> {
|
||||
/**
|
||||
* 群组单人禁言
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param userId 要禁言的 QQ 号
|
||||
* @param duration 禁言时长,单位秒,0 表示取消禁言
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:20 v0.0.5-dev
|
||||
* @param groupId 群号
|
||||
* @param userId 要禁言的 QQ 号
|
||||
* @param duration 禁言时长,单位秒,0 表示取消禁言
|
||||
*/
|
||||
public SetGroupBanAction(Long groupId, Long userId, Long duration){
|
||||
public SetGroupBanAction(Long groupId, Long userId, Long duration) {
|
||||
super.setAction(Actions.SET_GROUP_BAN);
|
||||
super.setParams(new Params(groupId, userId, duration));
|
||||
}
|
||||
|
||||
/**
|
||||
* 群组单人禁言
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param userId 要禁言的 QQ 号
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:20 v0.0.5-dev
|
||||
* @param groupId 群号
|
||||
* @param userId 要禁言的 QQ 号
|
||||
*/
|
||||
public SetGroupBanAction(Long groupId, Long userId){
|
||||
public SetGroupBanAction(Long groupId, Long userId) {
|
||||
this(groupId, userId, 1800L);
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/23 21:20 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 要禁言的 QQ 号
|
||||
*
|
||||
* @since 2024/8/23 21:20 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "user_id")
|
||||
private Long userId;
|
||||
/**
|
||||
* 禁言时长,单位秒,0 表示取消禁言(默认30 * 60)
|
||||
*
|
||||
* @since 2024/8/23 21:20 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(defaultValue = "1800")
|
@ -1,13 +1,14 @@
|
||||
package cn.wzpmc.api.api.actions.message.set;
|
||||
package cn.wzpmc.api.actions.message.set;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 设置群名片(群备注)
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.5-dev
|
||||
* @since 2024/8/23 20:59
|
||||
@ -15,11 +16,12 @@ import lombok.Data;
|
||||
public class SetGroupCardAction extends Action<SetGroupCardAction.Params, Void> {
|
||||
/**
|
||||
* 设置群名片(群备注)
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param userId 要设置的 QQ 号
|
||||
* @param card 群名片内容,不填或空字符串表示删除群名片
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:22 v0.0.5-dev
|
||||
* @param groupId 群号
|
||||
* @param userId 要设置的 QQ 号
|
||||
* @param card 群名片内容,不填或空字符串表示删除群名片
|
||||
*/
|
||||
public SetGroupCardAction(Long groupId, Long userId, String card) {
|
||||
super.setAction(Actions.SET_GROUP_CARD);
|
||||
@ -28,31 +30,36 @@ public class SetGroupCardAction extends Action<SetGroupCardAction.Params, Void>
|
||||
|
||||
/**
|
||||
* 设置群名片(群备注)
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param userId 要设置的 QQ 号
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:22 v0.0.5-dev
|
||||
* @param groupId 群号
|
||||
* @param userId 要设置的 QQ 号
|
||||
*/
|
||||
public SetGroupCardAction(Long groupId, Long userId) {
|
||||
this(groupId, userId, "");
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/23 21:23 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 要设置的 QQ 号
|
||||
*
|
||||
* @since 2024/8/23 21:23 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "user_id")
|
||||
private Long userId;
|
||||
/**
|
||||
* 群名片内容,不填或空字符串表示删除群名片(默认为空)
|
||||
*
|
||||
* @since 2024/8/23 21:23 v0.0.5-dev
|
||||
*/
|
||||
private String card;
|
@ -1,13 +1,14 @@
|
||||
package cn.wzpmc.api.api.actions.message.set;
|
||||
package cn.wzpmc.api.actions.message.set;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 群组踢人
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.5-dev
|
||||
* @since 2024/8/23 19:52
|
||||
@ -15,11 +16,12 @@ import lombok.Data;
|
||||
public class SetGroupKickAction extends Action<SetGroupKickAction.Params, Void> {
|
||||
/**
|
||||
* 群组踢人
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param userId 要踢的 QQ 号
|
||||
* @param rejectAddRequest 拒绝此人的加群请求
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:24 v0.0.5-dev
|
||||
* @param groupId 群号
|
||||
* @param userId 要踢的 QQ 号
|
||||
* @param rejectAddRequest 拒绝此人的加群请求
|
||||
*/
|
||||
public SetGroupKickAction(Long groupId, Long userId, Boolean rejectAddRequest) {
|
||||
super.setAction(Actions.SET_GROUP_KICK);
|
||||
@ -28,31 +30,36 @@ public class SetGroupKickAction extends Action<SetGroupKickAction.Params, Void>
|
||||
|
||||
/**
|
||||
* 群组踢人
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param userId 要踢的 QQ 号
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:24 v0.0.5-dev
|
||||
* @param groupId 群号
|
||||
* @param userId 要踢的 QQ 号
|
||||
*/
|
||||
public SetGroupKickAction(Long groupId, Long userId) {
|
||||
this(groupId, userId, false);
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/23 21:25 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 要踢的 QQ 号
|
||||
*
|
||||
* @since 2024/8/23 21:25 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "user_id")
|
||||
private Long userId;
|
||||
/**
|
||||
* 拒绝此人的加群请求(默认为false)
|
||||
*
|
||||
* @since 2024/8/23 21:25 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "reject_add_request", defaultValue = "false")
|
@ -1,13 +1,14 @@
|
||||
package cn.wzpmc.api.api.actions.message.set;
|
||||
package cn.wzpmc.api.actions.message.set;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 退出群组
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:07
|
||||
@ -15,36 +16,41 @@ import lombok.Data;
|
||||
public class SetGroupLeaveAction extends Action<SetGroupLeaveAction.Params, Void> {
|
||||
/**
|
||||
* 退出群组
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param isDismiss 是否解散,如果登录号是群主,则仅在此项为 true 时能够解散
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:57 v0.0.6-dev
|
||||
* @param groupId 群号
|
||||
* @param isDismiss 是否解散,如果登录号是群主,则仅在此项为 true 时能够解散
|
||||
*/
|
||||
public SetGroupLeaveAction(Long groupId, boolean isDismiss){
|
||||
public SetGroupLeaveAction(Long groupId, boolean isDismiss) {
|
||||
super.setAction(Actions.SET_GROUP_LEAVE);
|
||||
super.setParams(new Params(groupId, isDismiss));
|
||||
}
|
||||
|
||||
/**
|
||||
* 退出群组
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:57 v0.0.6-dev
|
||||
* @param groupId 群号
|
||||
*/
|
||||
public SetGroupLeaveAction(Long groupId){
|
||||
public SetGroupLeaveAction(Long groupId) {
|
||||
this(groupId, false);
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/24 21:02 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 是否解散,如果登录号是群主,则仅在此项为 true 时能够解散
|
||||
*
|
||||
* @since 2024/8/24 21:02 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "is_dismiss", defaultValue = "false")
|
@ -1,13 +1,14 @@
|
||||
package cn.wzpmc.api.api.actions.message.set;
|
||||
package cn.wzpmc.api.actions.message.set;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 设置群名
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:07
|
||||
@ -15,26 +16,30 @@ import lombok.Data;
|
||||
public class SetGroupNameAction extends Action<SetGroupNameAction.Params, Void> {
|
||||
/**
|
||||
* 设置群名
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param groupName 新群名
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:57 v0.0.6-dev
|
||||
* @param groupId 群号
|
||||
* @param groupName 新群名
|
||||
*/
|
||||
public SetGroupNameAction(Long groupId, String groupName){
|
||||
public SetGroupNameAction(Long groupId, String groupName) {
|
||||
super.setAction(Actions.SET_GROUP_NAME);
|
||||
super.setParams(new Params(groupId, groupName));
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/24 20:59 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 新群名
|
||||
*
|
||||
* @since 2024/8/24 21:00 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "group_name")
|
@ -1,13 +1,14 @@
|
||||
package cn.wzpmc.api.api.actions.message.set;
|
||||
package cn.wzpmc.api.actions.message.set;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 设置群组专属头衔
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:08
|
||||
@ -15,75 +16,84 @@ import lombok.Data;
|
||||
public class SetGroupSpecialTitleAction extends Action<SetGroupSpecialTitleAction.Params, Void> {
|
||||
/**
|
||||
* 设置群组专属头衔
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param userId 要设置的 QQ 号
|
||||
* @param specialTitle 专属头衔,不填或空字符串表示删除专属头衔
|
||||
* @param duration 专属头衔有效期,单位秒,-1 表示永久,不过此项似乎没有效果,可能是只有某些特殊的时间长度有效,有待测试
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:58 v0.0.6-dev
|
||||
* @param groupId 群号
|
||||
* @param userId 要设置的 QQ 号
|
||||
* @param specialTitle 专属头衔,不填或空字符串表示删除专属头衔
|
||||
* @param duration 专属头衔有效期,单位秒,-1 表示永久,不过此项似乎没有效果,可能是只有某些特殊的时间长度有效,有待测试
|
||||
*/
|
||||
public SetGroupSpecialTitleAction(Long groupId, Long userId, String specialTitle, Long duration){
|
||||
public SetGroupSpecialTitleAction(Long groupId, Long userId, String specialTitle, Long duration) {
|
||||
super.setAction(Actions.SET_GROUP_SPECIAL_TITLE);
|
||||
super.setParams(new Params(groupId, userId, specialTitle, duration));
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置群组专属头衔
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param userId 要设置的 QQ 号
|
||||
* @param specialTitle 专属头衔,不填或空字符串表示删除专属头衔
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:58 v0.0.6-dev
|
||||
* @param groupId 群号
|
||||
* @param userId 要设置的 QQ 号
|
||||
* @param specialTitle 专属头衔,不填或空字符串表示删除专属头衔
|
||||
*/
|
||||
public SetGroupSpecialTitleAction(Long groupId, Long userId, String specialTitle){
|
||||
public SetGroupSpecialTitleAction(Long groupId, Long userId, String specialTitle) {
|
||||
this(groupId, userId, specialTitle, -1L);
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置群组专属头衔
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param userId 要设置的 QQ 号
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:58 v0.0.6-dev
|
||||
* @param groupId 群号
|
||||
* @param userId 要设置的 QQ 号
|
||||
*/
|
||||
public SetGroupSpecialTitleAction(Long groupId, Long userId){
|
||||
public SetGroupSpecialTitleAction(Long groupId, Long userId) {
|
||||
this(groupId, userId, "");
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置群组专属头衔
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param userId 要设置的 QQ 号
|
||||
* @param duration 专属头衔有效期,单位秒,-1 表示永久,不过此项似乎没有效果,可能是只有某些特殊的时间长度有效,有待测试
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:58 v0.0.6-dev
|
||||
* @param groupId 群号
|
||||
* @param userId 要设置的 QQ 号
|
||||
* @param duration 专属头衔有效期,单位秒,-1 表示永久,不过此项似乎没有效果,可能是只有某些特殊的时间长度有效,有待测试
|
||||
*/
|
||||
public SetGroupSpecialTitleAction(Long groupId, Long userId, Long duration){
|
||||
public SetGroupSpecialTitleAction(Long groupId, Long userId, Long duration) {
|
||||
this(groupId, userId, "", duration);
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/24 21:04 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 要设置的 QQ 号
|
||||
*
|
||||
* @since 2024/8/24 21:04 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "user_id")
|
||||
private Long userId;
|
||||
/**
|
||||
* 专属头衔,不填或空字符串表示删除专属头衔
|
||||
*
|
||||
* @since 2024/8/24 21:04 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "special_title")
|
||||
private String specialTitle;
|
||||
/**
|
||||
* 专属头衔有效期,单位秒,-1 表示永久,不过此项似乎没有效果,可能是只有某些特殊的时间长度有效,有待测试
|
||||
*
|
||||
* @since 2024/8/24 21:04 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(defaultValue = "-1")
|
@ -1,13 +1,14 @@
|
||||
package cn.wzpmc.api.api.actions.message.set;
|
||||
package cn.wzpmc.api.actions.message.set;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 群组全员禁言
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.5-dev
|
||||
* @since 2024/8/23 20:06
|
||||
@ -15,10 +16,11 @@ import lombok.Data;
|
||||
public class SetGroupWholeBanAction extends Action<SetGroupWholeBanAction.Params, Void> {
|
||||
/**
|
||||
* 群组全员禁言
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @param enable 是否禁言
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:27 v0.0.5-dev
|
||||
* @param groupId 群号
|
||||
* @param enable 是否禁言
|
||||
*/
|
||||
public SetGroupWholeBanAction(Long groupId, Boolean enable) {
|
||||
super.setAction(Actions.SET_GROUP_WHOLE_BAN);
|
||||
@ -27,24 +29,28 @@ public class SetGroupWholeBanAction extends Action<SetGroupWholeBanAction.Params
|
||||
|
||||
/**
|
||||
* 群组全员禁言
|
||||
*
|
||||
* @param groupId 群号
|
||||
* @author wzp
|
||||
* @since 2024/8/23 21:28 v0.0.5-dev
|
||||
* @param groupId 群号
|
||||
*/
|
||||
public SetGroupWholeBanAction(Long groupId) {
|
||||
this(groupId, true);
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/23 21:28 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 是否禁言(默认true)
|
||||
*
|
||||
* @since 2024/8/23 21:28 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(defaultValue = "true")
|
@ -1,13 +1,14 @@
|
||||
package cn.wzpmc.api.api.actions.message.set;
|
||||
package cn.wzpmc.api.actions.message.set;
|
||||
|
||||
import cn.wzpmc.api.api.Action;
|
||||
import cn.wzpmc.api.api.Actions;
|
||||
import cn.wzpmc.api.Action;
|
||||
import cn.wzpmc.api.Actions;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 重启 OneBot 实现
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 20:46
|
||||
@ -15,9 +16,10 @@ import lombok.Data;
|
||||
public class SetRestartAction extends Action<SetRestartAction.Params, Void> {
|
||||
/**
|
||||
* 重启 OneBot 实现
|
||||
*
|
||||
* @param delay 要延迟的毫秒数,如果默认情况下无法重启,可以尝试设置延迟为 2000 左右
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:59 v0.0.6-dev
|
||||
* @param delay 要延迟的毫秒数,如果默认情况下无法重启,可以尝试设置延迟为 2000 左右
|
||||
*/
|
||||
public SetRestartAction(Integer delay) {
|
||||
super.setAction(Actions.SET_RESTART);
|
||||
@ -26,17 +28,20 @@ public class SetRestartAction extends Action<SetRestartAction.Params, Void> {
|
||||
|
||||
/**
|
||||
* 立即重启 OneBot 实现
|
||||
*
|
||||
* @author wzp
|
||||
* @since 2024/8/24 23:58 v0.0.6-dev
|
||||
*/
|
||||
public SetRestartAction() {
|
||||
this(0);
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static final class Params {
|
||||
/**
|
||||
* 要延迟的毫秒数,如果默认情况下无法重启,可以尝试设置延迟为 2000 左右
|
||||
*
|
||||
* @since 2024/8/24 23:49 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(defaultValue = "0")
|
@ -1,7 +1,8 @@
|
||||
package cn.wzpmc.api.commands;
|
||||
package cn.wzpmc.commands;
|
||||
|
||||
/**
|
||||
* 指令基类
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.1-dev
|
||||
* @since 2024/7/31 上午3:15
|
@ -1,10 +1,11 @@
|
||||
package cn.wzpmc.api.commands;
|
||||
package cn.wzpmc.commands;
|
||||
|
||||
import cn.wzpmc.api.user.CommandSender;
|
||||
import cn.wzpmc.user.CommandSender;
|
||||
import com.mojang.brigadier.builder.LiteralArgumentBuilder;
|
||||
|
||||
/**
|
||||
* Brigadier指令
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.1-dev
|
||||
* @since 2024/7/31 上午2:59
|
||||
@ -12,9 +13,10 @@ import com.mojang.brigadier.builder.LiteralArgumentBuilder;
|
||||
public interface BrigadierCommand extends BaseCommand {
|
||||
/**
|
||||
* 获取指令节点
|
||||
*
|
||||
* @return 指令节点
|
||||
* @author wzp
|
||||
* @since 2024/7/31 上午3:16 v0.0.1-dev
|
||||
* @return 指令节点
|
||||
*/
|
||||
LiteralArgumentBuilder<CommandSender> getCommandNode();
|
||||
}
|
@ -1,11 +1,12 @@
|
||||
package cn.wzpmc.api.commands;
|
||||
package cn.wzpmc.commands;
|
||||
|
||||
import cn.wzpmc.api.user.CommandSender;
|
||||
import cn.wzpmc.user.CommandSender;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 原始指令
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.1-dev
|
||||
* @since 2024/7/31 上午2:27
|
||||
@ -13,21 +14,23 @@ import java.util.List;
|
||||
public interface RawCommand extends BaseCommand {
|
||||
/**
|
||||
* 当指令执行时
|
||||
*
|
||||
* @param commandSender 指令发送者
|
||||
* @param arguments 指令参数,如指令foo若执行/foo a b c则arguments为{"a", "b", "c"}
|
||||
* @return 指令是否执行成功
|
||||
* @author wzp
|
||||
* @since 2024/7/31 上午2:57 v0.0.1-dev
|
||||
* @param commandSender 指令发送者
|
||||
* @param arguments 指令参数,如指令foo若执行/foo a b c则arguments为{"a", "b", "c"}
|
||||
* @return 指令是否执行成功
|
||||
*/
|
||||
boolean onExecute(CommandSender commandSender, List<String> arguments);
|
||||
|
||||
/**
|
||||
* 指令补全
|
||||
*
|
||||
* @param commandSender 指令发送者
|
||||
* @param arguments 指令参数,如指令foo若执行/foo a b c则arguments为{"a", "b", "c"}
|
||||
* @return 当前需要提示的子命令
|
||||
* @author wzp
|
||||
* @since 2024/7/31 上午2:58 v0.0.1-dev
|
||||
* @param commandSender 指令发送者
|
||||
* @param arguments 指令参数,如指令foo若执行/foo a b c则arguments为{"a", "b", "c"}
|
||||
* @return 当前需要提示的子命令
|
||||
*/
|
||||
default List<String> onTabComplete(CommandSender commandSender, List<String> arguments) {
|
||||
return List.of();
|
@ -1,7 +1,7 @@
|
||||
package cn.wzpmc.api.commands.arguments;
|
||||
package cn.wzpmc.commands.arguments;
|
||||
|
||||
import cn.wzpmc.api.message.json.JsonMessagePart;
|
||||
import cn.wzpmc.api.utils.CqCodeUtils;
|
||||
import cn.wzpmc.message.json.JsonMessagePart;
|
||||
import cn.wzpmc.utils.CqCodeUtils;
|
||||
import com.mojang.brigadier.LiteralMessage;
|
||||
import com.mojang.brigadier.StringReader;
|
||||
import com.mojang.brigadier.arguments.ArgumentType;
|
||||
@ -10,6 +10,7 @@ import com.mojang.brigadier.exceptions.SimpleCommandExceptionType;
|
||||
|
||||
/**
|
||||
* 消息段参数类型
|
||||
*
|
||||
* @author wzp
|
||||
* @version 1.0.0
|
||||
* @since 2024/8/25 01:18
|
||||
@ -18,7 +19,7 @@ public class MessagePartArgument implements ArgumentType<JsonMessagePart> {
|
||||
@Override
|
||||
public JsonMessagePart parse(StringReader stringReader) throws CommandSyntaxException {
|
||||
String s = stringReader.readStringUntil(' ');
|
||||
if (!CqCodeUtils.isCQ(s)){
|
||||
if (!CqCodeUtils.isCQ(s)) {
|
||||
throw new CommandSyntaxException(new SimpleCommandExceptionType(new LiteralMessage("MessagePart")), new LiteralMessage("Cannot read message part"));
|
||||
}
|
||||
return CqCodeUtils.parseToPart(s);
|
@ -1,9 +1,9 @@
|
||||
package cn.wzpmc.api.commands.arguments;
|
||||
package cn.wzpmc.commands.arguments;
|
||||
|
||||
import cn.wzpmc.api.message.json.JsonMessagePart;
|
||||
import cn.wzpmc.api.message.json.parts.At;
|
||||
import cn.wzpmc.api.utils.CqCodeUtils;
|
||||
import cn.wzpmc.console.commands.exceptions.CqCodeException;
|
||||
import cn.wzpmc.commands.exceptions.CqCodeException;
|
||||
import cn.wzpmc.message.json.JsonMessagePart;
|
||||
import cn.wzpmc.message.json.parts.At;
|
||||
import cn.wzpmc.utils.CqCodeUtils;
|
||||
import com.mojang.brigadier.LiteralMessage;
|
||||
import com.mojang.brigadier.StringReader;
|
||||
import com.mojang.brigadier.arguments.ArgumentType;
|
||||
@ -12,6 +12,7 @@ import com.mojang.brigadier.exceptions.CommandSyntaxException;
|
||||
|
||||
/**
|
||||
* 用户ID消息类型
|
||||
*
|
||||
* @author wzp
|
||||
* @version 1.0.0
|
||||
* @since 2024/8/25 21:02
|
||||
@ -33,7 +34,7 @@ public class UserIdArguments implements ArgumentType<Long> {
|
||||
String s = builder.toString();
|
||||
if (CqCodeUtils.isCQ(s)) {
|
||||
JsonMessagePart jsonMessagePart = CqCodeUtils.parseToPart(s);
|
||||
if (jsonMessagePart instanceof At){
|
||||
if (jsonMessagePart instanceof At) {
|
||||
return ((At) jsonMessagePart).getQq();
|
||||
}
|
||||
throw new CqCodeException();
|
||||
@ -43,7 +44,8 @@ public class UserIdArguments implements ArgumentType<Long> {
|
||||
String s1 = read + s;
|
||||
try {
|
||||
return Long.parseLong(s1);
|
||||
}catch (NumberFormatException ignored) {}
|
||||
} catch (NumberFormatException ignored) {
|
||||
}
|
||||
}
|
||||
throw new CommandSyntaxException(new BuiltInExceptions().readerInvalidLong(), new LiteralMessage("Cannot read long from user id"));
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
package cn.wzpmc.console.commands.exceptions;
|
||||
package cn.wzpmc.commands.exceptions;
|
||||
|
||||
import com.mojang.brigadier.LiteralMessage;
|
||||
import com.mojang.brigadier.Message;
|
||||
@ -12,10 +12,12 @@ import com.mojang.brigadier.exceptions.SimpleCommandExceptionType;
|
||||
*/
|
||||
public class CqCodeException extends CommandSyntaxException {
|
||||
private static final Message errorMessage = new LiteralMessage("Cannot read cq code");
|
||||
|
||||
public CqCodeException() {
|
||||
super(new CqCodeExceptionType(errorMessage), errorMessage);
|
||||
|
||||
}
|
||||
|
||||
private static final class CqCodeExceptionType extends SimpleCommandExceptionType {
|
||||
public CqCodeExceptionType(Message message) {
|
||||
super(message);
|
@ -1,9 +1,10 @@
|
||||
package cn.wzpmc.api.entities;
|
||||
package cn.wzpmc.entities;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* bot运行状态
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午10:30
|
||||
@ -12,11 +13,13 @@ import lombok.Data;
|
||||
public class BotStatus {
|
||||
/**
|
||||
* 当前 QQ 在线,null 表示无法查询到在线状态
|
||||
*
|
||||
* @since 2024/8/23 21:33 v0.0.5-dev
|
||||
*/
|
||||
private boolean online;
|
||||
/**
|
||||
* 状态符合预期,意味着各模块正常运行、功能正常,且 QQ 在线
|
||||
*
|
||||
* @since 2024/8/23 21:34 v0.0.5-dev
|
||||
*/
|
||||
private boolean good;
|
@ -1,10 +1,11 @@
|
||||
package cn.wzpmc.api.entities;
|
||||
package cn.wzpmc.entities;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* Cookie信息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 19:45
|
||||
@ -14,6 +15,7 @@ import lombok.Data;
|
||||
public class CookiesInformation {
|
||||
/**
|
||||
* Cookies
|
||||
*
|
||||
* @since 2024/8/24 23:59 v0.0.6-dev
|
||||
*/
|
||||
private String cookies;
|
@ -1,4 +1,4 @@
|
||||
package cn.wzpmc.api.entities;
|
||||
package cn.wzpmc.entities;
|
||||
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
@ -6,6 +6,7 @@ import lombok.Data;
|
||||
|
||||
/**
|
||||
* QQ认证信息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 19:46
|
||||
@ -15,11 +16,13 @@ import lombok.Data;
|
||||
public class CredentialsInformation {
|
||||
/**
|
||||
* Cookies
|
||||
*
|
||||
* @since 2024/8/24 23:59 v0.0.6-dev
|
||||
*/
|
||||
private String cookies;
|
||||
/**
|
||||
* CSRF Token
|
||||
*
|
||||
* @since 2024/8/24 23:59 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "csrf_token")
|
@ -1,10 +1,11 @@
|
||||
package cn.wzpmc.api.entities;
|
||||
package cn.wzpmc.entities;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* CSRF信息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 19:45
|
||||
@ -14,6 +15,7 @@ import lombok.Data;
|
||||
public class CsrfTokenInformation {
|
||||
/**
|
||||
* CSRF Token
|
||||
*
|
||||
* @since 2024/8/24 23:59 v0.0.6-dev
|
||||
*/
|
||||
private Integer token;
|
@ -1,4 +1,4 @@
|
||||
package cn.wzpmc.api.entities;
|
||||
package cn.wzpmc.entities;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
@ -13,6 +13,7 @@ import lombok.Data;
|
||||
public class FilePathInformation {
|
||||
/**
|
||||
* 转换后的语音文件路径,如 /home/somebody/cqhttp/data/record/0B38145AA44505000B38145AA4450500.mp3
|
||||
*
|
||||
* @since 2024/8/24 23:35 v0.0.6-dev
|
||||
*/
|
||||
private String file;
|
@ -1,12 +1,13 @@
|
||||
package cn.wzpmc.api.entities;
|
||||
package cn.wzpmc.entities;
|
||||
|
||||
import cn.wzpmc.api.user.IUser;
|
||||
import cn.wzpmc.user.IUser;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 简略好友信息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 19:13
|
||||
@ -17,6 +18,7 @@ import lombok.EqualsAndHashCode;
|
||||
public class FriendInformation extends IUser {
|
||||
/**
|
||||
* 添加后的好友备注(仅在同意时有效)
|
||||
*
|
||||
* @since 2024/8/24 23:59 v0.0.6-dev
|
||||
*/
|
||||
private String remark;
|
@ -1,4 +1,4 @@
|
||||
package cn.wzpmc.api.entities;
|
||||
package cn.wzpmc.entities;
|
||||
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
@ -6,6 +6,7 @@ import lombok.Data;
|
||||
|
||||
/**
|
||||
* 群成员荣耀信息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 19:39
|
||||
@ -15,22 +16,26 @@ import lombok.Data;
|
||||
public class GroupHonorUser {
|
||||
/**
|
||||
* QQ 号
|
||||
*
|
||||
* @since 2024/8/25 00:00 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "user_id")
|
||||
private Long userId;
|
||||
/**
|
||||
* 昵称
|
||||
*
|
||||
* @since 2024/8/25 00:00 v0.0.6-dev
|
||||
*/
|
||||
private String nickname;
|
||||
/**
|
||||
* 头像 URL
|
||||
*
|
||||
* @since 2024/8/25 00:00 v0.0.6-dev
|
||||
*/
|
||||
private String avatar;
|
||||
/**
|
||||
* 荣誉描述
|
||||
*
|
||||
* @since 2024/8/25 00:00 v0.0.6-dev
|
||||
*/
|
||||
private String description;
|
@ -1,4 +1,4 @@
|
||||
package cn.wzpmc.api.entities;
|
||||
package cn.wzpmc.entities;
|
||||
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
@ -6,6 +6,7 @@ import lombok.Data;
|
||||
|
||||
/**
|
||||
* 群信息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 19:15
|
||||
@ -15,24 +16,28 @@ import lombok.Data;
|
||||
public class GroupInformation {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/25 00:00 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 群名称
|
||||
*
|
||||
* @since 2024/8/25 00:00 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "group_name")
|
||||
private String groupName;
|
||||
/**
|
||||
* 成员数
|
||||
*
|
||||
* @since 2024/8/25 00:00 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "member_count")
|
||||
private Integer memberCount;
|
||||
/**
|
||||
* 最大成员数(群容量)
|
||||
*
|
||||
* @since 2024/8/25 00:00 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "max_member_count")
|
@ -1,7 +1,7 @@
|
||||
package cn.wzpmc.api.entities;
|
||||
package cn.wzpmc.entities;
|
||||
|
||||
import cn.wzpmc.api.user.Sex;
|
||||
import cn.wzpmc.api.user.permission.Permissions;
|
||||
import cn.wzpmc.user.Sex;
|
||||
import cn.wzpmc.user.permission.Permissions;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
@ -10,6 +10,7 @@ import java.util.Date;
|
||||
|
||||
/**
|
||||
* 群成员信息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 19:22
|
||||
@ -19,81 +20,96 @@ import java.util.Date;
|
||||
public class GroupMemberInformation {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/24 19:29 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* QQ 号
|
||||
*
|
||||
* @since 2024/8/24 19:29 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "user_id")
|
||||
private Long userId;
|
||||
/**
|
||||
* 昵称
|
||||
*
|
||||
* @since 2024/8/24 19:29 v0.0.6-dev
|
||||
*/
|
||||
private String nickname;
|
||||
/**
|
||||
* 群名片/备注
|
||||
*
|
||||
* @since 2024/8/24 19:29 v0.0.6-dev
|
||||
*/
|
||||
private String card;
|
||||
/**
|
||||
* 性别
|
||||
*
|
||||
* @since 2024/8/24 19:29 v0.0.6-dev
|
||||
*/
|
||||
private Sex sex;
|
||||
/**
|
||||
* 年龄
|
||||
*
|
||||
* @since 2024/8/24 19:29 v0.0.6-dev
|
||||
*/
|
||||
private Integer age;
|
||||
/**
|
||||
* 地区
|
||||
*
|
||||
* @since 2024/8/24 19:30 v0.0.6-dev
|
||||
*/
|
||||
private String area;
|
||||
/**
|
||||
* 加群时间
|
||||
*
|
||||
* @since 2024/8/24 19:30 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "join_time")
|
||||
private Date joinTime;
|
||||
/**
|
||||
* 最后发言时间
|
||||
*
|
||||
* @since 2024/8/24 19:30 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "last_sent_time")
|
||||
private Date lastSentTime;
|
||||
/**
|
||||
* 成员等级
|
||||
*
|
||||
* @since 2024/8/24 19:30 v0.0.6-dev
|
||||
*/
|
||||
private String level;
|
||||
/**
|
||||
* 角色
|
||||
*
|
||||
* @since 2024/8/24 19:30 v0.0.6-dev
|
||||
*/
|
||||
private Permissions role;
|
||||
/**
|
||||
* 是否不良记录成员
|
||||
*
|
||||
* @since 2024/8/24 19:30 v0.0.6-dev
|
||||
*/
|
||||
private boolean unfriendly;
|
||||
/**
|
||||
* 专属头衔
|
||||
*
|
||||
* @since 2024/8/24 19:30 v0.0.6-dev
|
||||
*/
|
||||
private String title;
|
||||
/**
|
||||
* 专属头衔过期时间
|
||||
*
|
||||
* @since 2024/8/24 19:30 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "title_expire_time")
|
||||
private Date titleExpireTime;
|
||||
/**
|
||||
* 是否允许修改群名片
|
||||
*
|
||||
* @since 2024/8/24 19:30 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "card_changeable")
|
@ -1,4 +1,4 @@
|
||||
package cn.wzpmc.api.entities;
|
||||
package cn.wzpmc.entities;
|
||||
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
@ -8,6 +8,7 @@ import java.util.List;
|
||||
|
||||
/**
|
||||
* 群荣耀信息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 19:36
|
||||
@ -17,42 +18,49 @@ import java.util.List;
|
||||
public class HonorInformation {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/24 23:17 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 当前龙王,仅 type 为 talkative 或 all 时有数据
|
||||
*
|
||||
* @since 2024/8/24 23:17 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "current_talkative")
|
||||
private HonorTalkative currentTalkative;
|
||||
/**
|
||||
* 历史龙王,仅 type 为 talkative 或 all 时有数据
|
||||
*
|
||||
* @since 2024/8/24 23:17 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "talkative_list")
|
||||
private List<GroupHonorUser> talkativeList;
|
||||
/**
|
||||
* 群聊之火,仅 type 为 performer 或 all 时有数据
|
||||
*
|
||||
* @since 2024/8/24 23:18 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "performer_list")
|
||||
private List<GroupHonorUser> performerList;
|
||||
/**
|
||||
* 群聊炽焰,仅 type 为 legend 或 all 时有数据
|
||||
*
|
||||
* @since 2024/8/24 23:18 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "legend_list")
|
||||
private List<GroupHonorUser> legendList;
|
||||
/**
|
||||
* 冒尖小春笋,仅 type 为 strong_newbie 或 all 时有数据
|
||||
*
|
||||
* @since 2024/8/24 23:18 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "strong_newbie_list")
|
||||
private List<GroupHonorUser> strongNewbieList;
|
||||
/**
|
||||
* 快乐之源,仅 type 为 emotion 或 all 时有数据
|
||||
*
|
||||
* @since 2024/8/24 23:18 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "emotion_list")
|
@ -1,4 +1,4 @@
|
||||
package cn.wzpmc.api.entities;
|
||||
package cn.wzpmc.entities;
|
||||
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
@ -6,6 +6,7 @@ import lombok.Data;
|
||||
|
||||
/**
|
||||
* 龙王信息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 19:38
|
||||
@ -15,22 +16,26 @@ import lombok.Data;
|
||||
public class HonorTalkative {
|
||||
/**
|
||||
* QQ 号
|
||||
*
|
||||
* @since 2024/8/25 00:01 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "user_id")
|
||||
private Long userId;
|
||||
/**
|
||||
* 昵称
|
||||
*
|
||||
* @since 2024/8/25 00:01 v0.0.6-dev
|
||||
*/
|
||||
private String nickname;
|
||||
/**
|
||||
* 头像 URL
|
||||
*
|
||||
* @since 2024/8/25 00:01 v0.0.6-dev
|
||||
*/
|
||||
private String avatar;
|
||||
/**
|
||||
* 持续天数
|
||||
*
|
||||
* @since 2024/8/25 00:01 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "day_count")
|
@ -1,7 +1,8 @@
|
||||
package cn.wzpmc.api.entities;
|
||||
package cn.wzpmc.entities;
|
||||
|
||||
/**
|
||||
* 荣耀类型
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 23:11
|
||||
@ -9,32 +10,38 @@ package cn.wzpmc.api.entities;
|
||||
public enum HonorType {
|
||||
/**
|
||||
* 龙王
|
||||
*
|
||||
* @since 2024/8/24 23:12 v0.0.6-dev
|
||||
*/
|
||||
TALKATIVE,
|
||||
/**
|
||||
* 群聊之火
|
||||
*
|
||||
* @since 2024/8/24 23:12 v0.0.6-dev
|
||||
*/
|
||||
PERFORMER,
|
||||
/**
|
||||
* 群聊炽焰
|
||||
*
|
||||
* @since 2024/8/24 23:12 v0.0.6-dev
|
||||
*/
|
||||
LEGEND,
|
||||
/**
|
||||
* 冒尖小春笋
|
||||
*
|
||||
* @since 2024/8/24 23:13 v0.0.6-dev
|
||||
*/
|
||||
STRONG_NEWBIE,
|
||||
/**
|
||||
* 快乐之源
|
||||
*
|
||||
* @since 2024/8/24 23:13 v0.0.6-dev
|
||||
*/
|
||||
EMOTION,
|
||||
/**
|
||||
* 全部
|
||||
*
|
||||
* @since 2024/8/24 23:13 v0.0.6-dev
|
||||
*/
|
||||
ALL;
|
||||
ALL
|
||||
}
|
@ -1,13 +1,14 @@
|
||||
package cn.wzpmc.api.entities;
|
||||
package cn.wzpmc.entities;
|
||||
|
||||
import cn.wzpmc.api.events.message.MessageType;
|
||||
import cn.wzpmc.api.message.MessageComponent;
|
||||
import cn.wzpmc.api.user.IUser;
|
||||
import cn.wzpmc.events.message.MessageType;
|
||||
import cn.wzpmc.message.MessageComponent;
|
||||
import cn.wzpmc.user.IUser;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 获取消息操作返回
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.5-dev
|
||||
* @since 2024/8/17 23:08
|
||||
@ -16,33 +17,39 @@ import lombok.Data;
|
||||
public class MessageInformation {
|
||||
/**
|
||||
* 发送时间
|
||||
*
|
||||
* @since 2024/8/23 21:34 v0.0.5-dev
|
||||
*/
|
||||
private Integer time;
|
||||
/**
|
||||
* 消息类型
|
||||
*
|
||||
* @since 2024/8/23 21:34 v0.0.5-dev
|
||||
*/
|
||||
private MessageType type;
|
||||
/**
|
||||
* 消息 ID
|
||||
*
|
||||
* @since 2024/8/23 21:34 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "message_id")
|
||||
private Integer messageId;
|
||||
/**
|
||||
* 消息真实 ID
|
||||
*
|
||||
* @since 2024/8/23 21:34 v0.0.5-dev
|
||||
*/
|
||||
@JSONField(name = "real_id")
|
||||
private Integer realId;
|
||||
/**
|
||||
* 发送人信息
|
||||
*
|
||||
* @since 2024/8/23 21:35 v0.0.5-dev
|
||||
*/
|
||||
private IUser sender;
|
||||
/**
|
||||
* 消息内容
|
||||
*
|
||||
* @since 2024/8/23 21:35 v0.0.5-dev
|
||||
*/
|
||||
private MessageComponent message;
|
@ -1,4 +1,4 @@
|
||||
package cn.wzpmc.api.entities;
|
||||
package cn.wzpmc.entities;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
@ -6,6 +6,7 @@ import java.util.*;
|
||||
|
||||
/**
|
||||
* 分群op列表
|
||||
*
|
||||
* @author wzp
|
||||
* @version 1.0.0
|
||||
* @since 2024/8/25 20:16
|
||||
@ -14,29 +15,32 @@ import java.util.*;
|
||||
public final class Ops {
|
||||
/**
|
||||
* BOT总管理员
|
||||
*
|
||||
* @since 2024/8/25 20:17 v1.0.0
|
||||
*/
|
||||
private final Set<Long> admins = new HashSet<>();
|
||||
/**
|
||||
* 群内管理员
|
||||
*
|
||||
* @since 2024/8/25 20:17 v1.0.0
|
||||
*/
|
||||
private final Map<String, List<Long>> groupAdmins = new HashMap<>();
|
||||
|
||||
/**
|
||||
* 判断此用户在群中是否为管理
|
||||
*
|
||||
* @param groupId 群ID
|
||||
* @param id 用户ID
|
||||
* @return 是否管理
|
||||
* @author wzp
|
||||
* @since 2024/8/25 20:20 v1.0.0
|
||||
* @param groupId 群ID
|
||||
* @param id 用户ID
|
||||
* @return 是否管理
|
||||
*/
|
||||
public boolean isAdmin(Long groupId, Long id){
|
||||
if (admins.contains(id)){
|
||||
public boolean isAdmin(Long groupId, Long id) {
|
||||
if (admins.contains(id)) {
|
||||
return true;
|
||||
}
|
||||
List<Long> longs = groupAdmins.get(groupId.toString());
|
||||
if (longs == null){
|
||||
if (longs == null) {
|
||||
return false;
|
||||
}
|
||||
return longs.contains(id);
|
||||
@ -44,10 +48,11 @@ public final class Ops {
|
||||
|
||||
/**
|
||||
* 判断此用户是否为管理
|
||||
* @author wzp
|
||||
* @since 2024/8/25 20:20 v1.0.0
|
||||
*
|
||||
* @param id 用户ID
|
||||
* @return 是否管理
|
||||
* @author wzp
|
||||
* @since 2024/8/25 20:20 v1.0.0
|
||||
*/
|
||||
public boolean isAdmin(Long id) {
|
||||
return admins.contains(id);
|
@ -1,4 +1,4 @@
|
||||
package cn.wzpmc.api.entities;
|
||||
package cn.wzpmc.entities;
|
||||
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
@ -6,6 +6,7 @@ import lombok.Data;
|
||||
|
||||
/**
|
||||
* CQ服务端版本信息
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 19:54
|
||||
@ -15,18 +16,21 @@ import lombok.Data;
|
||||
public class VersionInformation {
|
||||
/**
|
||||
* 应用标识,如 mirai-native
|
||||
*
|
||||
* @since 2024/8/25 00:02 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "app_name")
|
||||
private String appName;
|
||||
/**
|
||||
* 应用版本,如 1.2.3
|
||||
*
|
||||
* @since 2024/8/25 00:02 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "app_version")
|
||||
private String appVersion;
|
||||
/**
|
||||
* OneBot 标准版本,如 v11
|
||||
*
|
||||
* @since 2024/8/25 00:02 v0.0.6-dev
|
||||
*/
|
||||
@JSONField(name = "protocol_version")
|
@ -1,10 +1,11 @@
|
||||
package cn.wzpmc.api.entities;
|
||||
package cn.wzpmc.entities;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 是或否
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.6-dev
|
||||
* @since 2024/8/24 19:53
|
||||
@ -14,6 +15,7 @@ import lombok.Data;
|
||||
public class YesNo {
|
||||
/**
|
||||
* 是或否
|
||||
*
|
||||
* @since 2024/8/25 00:02 v0.0.6-dev
|
||||
*/
|
||||
private boolean yes;
|
@ -1,4 +1,4 @@
|
||||
package cn.wzpmc.api.events;
|
||||
package cn.wzpmc.events;
|
||||
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
@ -7,6 +7,7 @@ import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 事件基类
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午5:46
|
||||
@ -17,17 +18,20 @@ import lombok.NoArgsConstructor;
|
||||
public class Event {
|
||||
/**
|
||||
* 事件发生的时间戳
|
||||
*
|
||||
* @since 2024/8/1 下午5:52 v0.0.2-dev
|
||||
*/
|
||||
private Long time;
|
||||
/**
|
||||
* 收到事件的机器人的QQ号
|
||||
*
|
||||
* @since 2024/8/1 下午5:52 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "self_id")
|
||||
private Long selfId;
|
||||
/**
|
||||
* 事件类型
|
||||
*
|
||||
* @since 2024/8/1 下午5:52 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "post_type")
|
@ -1,12 +1,13 @@
|
||||
package cn.wzpmc.api.events;
|
||||
package cn.wzpmc.events;
|
||||
|
||||
import cn.wzpmc.api.events.message.MessageEvent;
|
||||
import cn.wzpmc.api.events.meta.MetaEvent;
|
||||
import cn.wzpmc.api.events.notice.NoticeEvent;
|
||||
import cn.wzpmc.api.events.request.RequestEvent;
|
||||
import cn.wzpmc.events.message.MessageEvent;
|
||||
import cn.wzpmc.events.meta.MetaEvent;
|
||||
import cn.wzpmc.events.notice.NoticeEvent;
|
||||
import cn.wzpmc.events.request.RequestEvent;
|
||||
|
||||
/**
|
||||
* 事件类型
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午5:47
|
||||
@ -14,26 +15,31 @@ import cn.wzpmc.api.events.request.RequestEvent;
|
||||
public enum EventPostType {
|
||||
/**
|
||||
* 消息事件
|
||||
*
|
||||
* @since 2024/8/1 下午5:48 v0.0.2-dev
|
||||
*/
|
||||
MESSAGE(MessageEvent.class),
|
||||
/**
|
||||
* 通知事件
|
||||
*
|
||||
* @since 2024/8/1 下午5:47 v0.0.2-dev
|
||||
*/
|
||||
NOTICE(NoticeEvent.class),
|
||||
/**
|
||||
* 请求事件
|
||||
*
|
||||
* @since 2024/8/1 下午5:47 v0.0.2-dev
|
||||
*/
|
||||
REQUEST(RequestEvent.class),
|
||||
/**
|
||||
* 元事件
|
||||
*
|
||||
* @since 2024/8/1 下午5:47 v0.0.2-dev
|
||||
*/
|
||||
META_EVENT(MetaEvent.class);
|
||||
public final Class<? extends Event> clazz;
|
||||
EventPostType(Class<? extends Event> clazz){
|
||||
|
||||
EventPostType(Class<? extends Event> clazz) {
|
||||
this.clazz = clazz;
|
||||
}
|
||||
}
|
@ -1,8 +1,8 @@
|
||||
package cn.wzpmc.api.events.message;
|
||||
package cn.wzpmc.events.message;
|
||||
|
||||
import cn.wzpmc.api.events.Event;
|
||||
import cn.wzpmc.api.message.StringMessage;
|
||||
import cn.wzpmc.api.message.json.JsonMessage;
|
||||
import cn.wzpmc.events.Event;
|
||||
import cn.wzpmc.message.StringMessage;
|
||||
import cn.wzpmc.message.json.JsonMessage;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
@ -11,6 +11,7 @@ import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 消息事件
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午5:49
|
||||
@ -22,46 +23,54 @@ import lombok.NoArgsConstructor;
|
||||
public class MessageEvent<E, U> extends Event {
|
||||
/**
|
||||
* 消息子类型
|
||||
*
|
||||
* @since 2024/8/1 下午11:11 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "sub_type")
|
||||
private E subType;
|
||||
/**
|
||||
* 消息类型
|
||||
*
|
||||
* @since 2024/8/1 下午11:24 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "message_type")
|
||||
private MessageType messageType;
|
||||
/**
|
||||
* 消息ID
|
||||
*
|
||||
* @since 2024/8/1 下午11:11 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "message_id")
|
||||
private Integer messageId;
|
||||
/**
|
||||
* 发送者ID
|
||||
*
|
||||
* @since 2024/8/1 下午11:11 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "user_id")
|
||||
private Integer userId;
|
||||
/**
|
||||
* 消息详细内容
|
||||
*
|
||||
* @since 2024/8/1 下午11:11 v0.0.2-dev
|
||||
*/
|
||||
private JsonMessage message;
|
||||
/**
|
||||
* 文本格式消息
|
||||
*
|
||||
* @since 2024/8/1 下午11:11 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "raw_message")
|
||||
private StringMessage rawMessage;
|
||||
/**
|
||||
* 消息使用字体
|
||||
*
|
||||
* @since 2024/8/1 下午11:11 v0.0.2-dev
|
||||
*/
|
||||
private Integer font;
|
||||
/**
|
||||
* 发送者详细信息
|
||||
*
|
||||
* @since 2024/8/1 下午11:12 v0.0.2-dev
|
||||
*/
|
||||
private U sender;
|
@ -1,10 +1,11 @@
|
||||
package cn.wzpmc.api.events.message;
|
||||
package cn.wzpmc.events.message;
|
||||
|
||||
import cn.wzpmc.api.events.message.group.GroupMessageEvent;
|
||||
import cn.wzpmc.api.events.message.priv.PrivateMessageEvent;
|
||||
import cn.wzpmc.events.message.group.GroupMessageEvent;
|
||||
import cn.wzpmc.events.message.priv.PrivateMessageEvent;
|
||||
|
||||
/**
|
||||
* 消息类型
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午5:54
|
||||
@ -12,16 +13,19 @@ import cn.wzpmc.api.events.message.priv.PrivateMessageEvent;
|
||||
public enum MessageType {
|
||||
/**
|
||||
* 私聊
|
||||
*
|
||||
* @since 2024/8/1 下午5:55 v0.0.2-dev
|
||||
*/
|
||||
PRIVATE(PrivateMessageEvent.class),
|
||||
/**
|
||||
* 群
|
||||
*
|
||||
* @since 2024/8/1 下午5:55 v0.0.2-dev
|
||||
*/
|
||||
GROUP(GroupMessageEvent.class);
|
||||
public final Class<? extends MessageEvent<?, ?>> clazz;
|
||||
MessageType(Class<? extends MessageEvent<?, ?>> clazz){
|
||||
|
||||
MessageType(Class<? extends MessageEvent<?, ?>> clazz) {
|
||||
this.clazz = clazz;
|
||||
}
|
||||
}
|
@ -1,14 +1,15 @@
|
||||
package cn.wzpmc.api.events.message.group;
|
||||
package cn.wzpmc.events.message.group;
|
||||
|
||||
import cn.wzpmc.api.events.message.MessageEvent;
|
||||
import cn.wzpmc.api.user.group.GroupUser;
|
||||
import cn.wzpmc.api.user.group.GroupUserAnonymousInfo;
|
||||
import cn.wzpmc.events.message.MessageEvent;
|
||||
import cn.wzpmc.user.group.GroupUser;
|
||||
import cn.wzpmc.user.group.GroupUserAnonymousInfo;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 群消息事件
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午8:59
|
||||
@ -18,12 +19,14 @@ import lombok.EqualsAndHashCode;
|
||||
public class GroupMessageEvent extends MessageEvent<GroupMessageSubType, GroupUser> {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/1 下午11:11 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 匿名消息消息(当非匿名消息时为null)
|
||||
*
|
||||
* @since 2024/8/1 下午11:10 v0.0.2-dev
|
||||
*/
|
||||
private GroupUserAnonymousInfo anonymous;
|
@ -1,7 +1,8 @@
|
||||
package cn.wzpmc.api.events.message.group;
|
||||
package cn.wzpmc.events.message.group;
|
||||
|
||||
/**
|
||||
* 群消息子类型
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午6:02
|
||||
@ -9,16 +10,19 @@ package cn.wzpmc.api.events.message.group;
|
||||
public enum GroupMessageSubType {
|
||||
/**
|
||||
* 好友
|
||||
*
|
||||
* @since 2024/8/1 下午6:03 v0.0.2-dev
|
||||
*/
|
||||
FRIEND,
|
||||
/**
|
||||
* 群临时会话
|
||||
*
|
||||
* @since 2024/8/1 下午6:03 v0.0.2-dev
|
||||
*/
|
||||
GROUP,
|
||||
/**
|
||||
* 其他
|
||||
*
|
||||
* @since 2024/8/1 下午6:03 v0.0.2-dev
|
||||
*/
|
||||
OTHER
|
@ -1,10 +1,11 @@
|
||||
package cn.wzpmc.api.events.message.priv;
|
||||
package cn.wzpmc.events.message.priv;
|
||||
|
||||
import cn.wzpmc.api.events.message.MessageEvent;
|
||||
import cn.wzpmc.api.user.Friend;
|
||||
import cn.wzpmc.events.message.MessageEvent;
|
||||
import cn.wzpmc.user.Friend;
|
||||
|
||||
/**
|
||||
* 饲料消息事件
|
||||
* 私聊消息事件
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午9:02
|
@ -1,7 +1,8 @@
|
||||
package cn.wzpmc.api.events.message.priv;
|
||||
package cn.wzpmc.events.message.priv;
|
||||
|
||||
/**
|
||||
* 私聊消息子类型
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午6:04
|
||||
@ -9,16 +10,19 @@ package cn.wzpmc.api.events.message.priv;
|
||||
public enum PrivateMessageSubType {
|
||||
/**
|
||||
* 正常消息
|
||||
*
|
||||
* @since 2024/8/1 下午6:07 v0.0.2-dev
|
||||
*/
|
||||
NORMAL,
|
||||
/**
|
||||
* 匿名消息
|
||||
*
|
||||
* @since 2024/8/1 下午6:06 v0.0.2-dev
|
||||
*/
|
||||
ANONYMOUS,
|
||||
/**
|
||||
* 系统提示
|
||||
*
|
||||
* @since 2024/8/1 下午6:06 v0.0.2-dev
|
||||
*/
|
||||
NOTICE
|
@ -1,6 +1,6 @@
|
||||
package cn.wzpmc.api.events.meta;
|
||||
package cn.wzpmc.events.meta;
|
||||
|
||||
import cn.wzpmc.api.entities.BotStatus;
|
||||
import cn.wzpmc.entities.BotStatus;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
@ -11,14 +11,16 @@ import lombok.EqualsAndHashCode;
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class HeartBeatEvent extends MetaEvent{
|
||||
public class HeartBeatEvent extends MetaEvent {
|
||||
/**
|
||||
* 状态信息
|
||||
*
|
||||
* @since 2024/8/1 下午10:32 v0.0.2-dev
|
||||
*/
|
||||
private BotStatus status;
|
||||
/**
|
||||
* 到下次心跳的间隔(ms)
|
||||
*
|
||||
* @since 2024/8/1 下午10:32 v0.0.2-dev
|
||||
*/
|
||||
private Long interval;
|
@ -1,12 +1,13 @@
|
||||
package cn.wzpmc.api.events.meta;
|
||||
package cn.wzpmc.events.meta;
|
||||
|
||||
import cn.wzpmc.api.events.Event;
|
||||
import cn.wzpmc.events.Event;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 元事件
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午10:26
|
||||
@ -16,6 +17,7 @@ import lombok.EqualsAndHashCode;
|
||||
public class MetaEvent extends Event {
|
||||
/**
|
||||
* 元事件子类型
|
||||
*
|
||||
* @since 2024/8/1 下午11:12 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "meta_event_type")
|
@ -1,6 +1,6 @@
|
||||
package cn.wzpmc.api.events.meta;
|
||||
package cn.wzpmc.events.meta;
|
||||
|
||||
import cn.wzpmc.api.events.meta.lifecycle.LifecycleEvent;
|
||||
import cn.wzpmc.events.meta.lifecycle.LifecycleEvent;
|
||||
|
||||
/**
|
||||
* @author wzp
|
||||
@ -11,7 +11,8 @@ public enum MetaEventType {
|
||||
LIFECYCLE(LifecycleEvent.class),
|
||||
HEARTBEAT(HeartBeatEvent.class);
|
||||
public final Class<? extends MetaEvent> clazz;
|
||||
MetaEventType(Class<? extends MetaEvent> clazz){
|
||||
|
||||
MetaEventType(Class<? extends MetaEvent> clazz) {
|
||||
this.clazz = clazz;
|
||||
}
|
||||
}
|
@ -1,12 +1,13 @@
|
||||
package cn.wzpmc.api.events.meta.lifecycle;
|
||||
package cn.wzpmc.events.meta.lifecycle;
|
||||
|
||||
import cn.wzpmc.api.events.meta.MetaEvent;
|
||||
import cn.wzpmc.events.meta.MetaEvent;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 生命周期事件
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午10:28
|
||||
@ -16,6 +17,7 @@ import lombok.EqualsAndHashCode;
|
||||
public class LifecycleEvent extends MetaEvent {
|
||||
/**
|
||||
* 生命周期事件子类型
|
||||
*
|
||||
* @since 2024/8/1 下午10:29 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "sub_type")
|
@ -1,7 +1,8 @@
|
||||
package cn.wzpmc.api.events.meta.lifecycle;
|
||||
package cn.wzpmc.events.meta.lifecycle;
|
||||
|
||||
/**
|
||||
* 生命周期事件子类型
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午10:28
|
||||
@ -9,16 +10,19 @@ package cn.wzpmc.api.events.meta.lifecycle;
|
||||
public enum LifecycleEventSubType {
|
||||
/**
|
||||
* OneBot被启用
|
||||
*
|
||||
* @since 2024/8/1 下午10:29 v0.0.2-dev
|
||||
*/
|
||||
ENABLE,
|
||||
/**
|
||||
* OneBot被禁用
|
||||
*
|
||||
* @since 2024/8/1 下午10:29 v0.0.2-dev
|
||||
*/
|
||||
DISABLE,
|
||||
/**
|
||||
* WebSocket连接成功
|
||||
*
|
||||
* @since 2024/8/1 下午10:29 v0.0.2-dev
|
||||
*/
|
||||
CONNECT
|
@ -1,4 +1,4 @@
|
||||
package cn.wzpmc.api.events.notice;
|
||||
package cn.wzpmc.events.notice;
|
||||
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.Data;
|
||||
@ -6,6 +6,7 @@ import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 好友添加事件
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午9:42
|
||||
@ -15,6 +16,7 @@ import lombok.EqualsAndHashCode;
|
||||
public class FriendAddEvent extends NoticeEvent {
|
||||
/**
|
||||
* 用户ID
|
||||
*
|
||||
* @since 2024/8/1 下午11:13 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "user_id")
|
@ -1,4 +1,4 @@
|
||||
package cn.wzpmc.api.events.notice;
|
||||
package cn.wzpmc.events.notice;
|
||||
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.Data;
|
||||
@ -6,33 +6,38 @@ import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 群成员禁言事件
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午10:19
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class GroupBanEvent extends NoticeEvent{
|
||||
public class GroupBanEvent extends NoticeEvent {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/1 下午10:21 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 操作者用户ID
|
||||
*
|
||||
* @since 2024/8/1 下午10:20 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "operator_id")
|
||||
private Long operatorId;
|
||||
/**
|
||||
* 被禁言的用户ID
|
||||
*
|
||||
* @since 2024/8/1 下午10:20 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "user_id")
|
||||
private Long userId;
|
||||
/**
|
||||
* 被禁言的时长(秒)
|
||||
*
|
||||
* @since 2024/8/1 下午10:20 v0.0.2-dev
|
||||
*/
|
||||
private Long duration;
|
@ -1,12 +1,13 @@
|
||||
package cn.wzpmc.api.events.notice;
|
||||
package cn.wzpmc.events.notice;
|
||||
|
||||
import cn.wzpmc.api.events.Event;
|
||||
import cn.wzpmc.events.Event;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 通知基事件
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午9:21
|
||||
@ -16,6 +17,7 @@ import lombok.EqualsAndHashCode;
|
||||
public class NoticeEvent extends Event {
|
||||
/**
|
||||
* 通知类型
|
||||
*
|
||||
* @since 2024/8/1 下午11:12 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "notice_type")
|
@ -1,15 +1,16 @@
|
||||
package cn.wzpmc.api.events.notice;
|
||||
package cn.wzpmc.events.notice;
|
||||
|
||||
import cn.wzpmc.api.events.notice.admin.GroupAdminChangeEvent;
|
||||
import cn.wzpmc.api.events.notice.file.GroupFileUploadedEvent;
|
||||
import cn.wzpmc.api.events.notice.notify.NotifyEvent;
|
||||
import cn.wzpmc.api.events.notice.recall.GroupMessageRecallEvent;
|
||||
import cn.wzpmc.api.events.notice.recall.MessageRecallEvent;
|
||||
import cn.wzpmc.api.events.notice.user.decrease.GroupUserDecreaseEvent;
|
||||
import cn.wzpmc.api.events.notice.user.increase.GroupUserIncreaseEvent;
|
||||
import cn.wzpmc.events.notice.admin.GroupAdminChangeEvent;
|
||||
import cn.wzpmc.events.notice.file.GroupFileUploadedEvent;
|
||||
import cn.wzpmc.events.notice.notify.NotifyEvent;
|
||||
import cn.wzpmc.events.notice.recall.GroupMessageRecallEvent;
|
||||
import cn.wzpmc.events.notice.recall.MessageRecallEvent;
|
||||
import cn.wzpmc.events.notice.user.decrease.GroupUserDecreaseEvent;
|
||||
import cn.wzpmc.events.notice.user.increase.GroupUserIncreaseEvent;
|
||||
|
||||
/**
|
||||
* 通知类型
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午9:12
|
||||
@ -17,52 +18,62 @@ import cn.wzpmc.api.events.notice.user.increase.GroupUserIncreaseEvent;
|
||||
public enum NoticeType {
|
||||
/**
|
||||
* 群文件上传事件
|
||||
*
|
||||
* @since 2024/8/1 下午10:24 v0.0.2-dev
|
||||
*/
|
||||
GROUP_UPLOAD(GroupFileUploadedEvent.class),
|
||||
/**
|
||||
* 群管理变更事件
|
||||
*
|
||||
* @since 2024/8/1 下午10:24 v0.0.2-dev
|
||||
*/
|
||||
GROUP_ADMIN(GroupAdminChangeEvent.class),
|
||||
/**
|
||||
* 用户退群事件
|
||||
*
|
||||
* @since 2024/8/1 下午10:24 v0.0.2-dev
|
||||
*/
|
||||
GROUP_DECREASE(GroupUserDecreaseEvent.class),
|
||||
/**
|
||||
* 用户加群事件
|
||||
*
|
||||
* @since 2024/8/1 下午10:23 v0.0.2-dev
|
||||
*/
|
||||
GROUP_INCREASE(GroupUserIncreaseEvent.class),
|
||||
/**
|
||||
* 群组禁言事件
|
||||
*
|
||||
* @since 2024/8/1 下午10:23 v0.0.2-dev
|
||||
*/
|
||||
GROUP_BAN(GroupBanEvent.class),
|
||||
/**
|
||||
* 好友添加事件
|
||||
*
|
||||
* @since 2024/8/1 下午10:23 v0.0.2-dev
|
||||
*/
|
||||
FRIEND_ADD(FriendAddEvent.class),
|
||||
/**
|
||||
* 群消息撤回事件
|
||||
*
|
||||
* @since 2024/8/1 下午10:23 v0.0.2-dev
|
||||
*/
|
||||
GROUP_RECALL(GroupMessageRecallEvent.class),
|
||||
/**
|
||||
* 好友消息撤回事件
|
||||
*
|
||||
* @since 2024/8/1 下午10:23 v0.0.2-dev
|
||||
*/
|
||||
FRIEND_RECALL(MessageRecallEvent.class),
|
||||
/**
|
||||
* 群提醒事件
|
||||
*
|
||||
* @see NotifyEvent
|
||||
* @since 2024/8/1 下午10:22 v0.0.2-dev
|
||||
* @see cn.wzpmc.api.events.notice.notify.NotifyEvent
|
||||
*/
|
||||
NOTIFY(NotifyEvent.class);
|
||||
public final Class<? extends NoticeEvent> clazz;
|
||||
NoticeType(Class<? extends NoticeEvent> clazz){
|
||||
|
||||
NoticeType(Class<? extends NoticeEvent> clazz) {
|
||||
this.clazz = clazz;
|
||||
}
|
||||
}
|
@ -1,12 +1,13 @@
|
||||
package cn.wzpmc.api.events.notice.admin;
|
||||
package cn.wzpmc.events.notice.admin;
|
||||
|
||||
import cn.wzpmc.api.events.notice.NoticeEvent;
|
||||
import cn.wzpmc.events.notice.NoticeEvent;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 群管理员更改事件
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午9:26
|
||||
@ -16,18 +17,21 @@ import lombok.EqualsAndHashCode;
|
||||
public class GroupAdminChangeEvent extends NoticeEvent {
|
||||
/**
|
||||
* 事件子类型
|
||||
*
|
||||
* @since 2024/8/1 下午9:28 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "sub_type")
|
||||
private GroupAdminChangeSubType subType;
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/1 下午9:29 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 被操作者QQ号
|
||||
*
|
||||
* @since 2024/8/1 下午9:29 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "user_id")
|
@ -1,7 +1,8 @@
|
||||
package cn.wzpmc.api.events.notice.admin;
|
||||
package cn.wzpmc.events.notice.admin;
|
||||
|
||||
/**
|
||||
* 管理员更改子类型
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午9:27
|
||||
@ -9,11 +10,13 @@ package cn.wzpmc.api.events.notice.admin;
|
||||
public enum GroupAdminChangeSubType {
|
||||
/**
|
||||
* 设置管理员
|
||||
*
|
||||
* @since 2024/8/1 下午9:27 v0.0.2-dev
|
||||
*/
|
||||
SET,
|
||||
/**
|
||||
* 取消管理员
|
||||
*
|
||||
* @since 2024/8/1 下午9:28 v0.0.2-dev
|
||||
*/
|
||||
UNSET
|
@ -1,4 +1,4 @@
|
||||
package cn.wzpmc.api.events.notice.file;
|
||||
package cn.wzpmc.events.notice.file;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@ -11,21 +11,25 @@ import lombok.Data;
|
||||
public class GroupFile {
|
||||
/**
|
||||
* 文件ID
|
||||
*
|
||||
* @since 2024/8/1 下午9:24 v0.0.2-dev
|
||||
*/
|
||||
private String id;
|
||||
/**
|
||||
* 文件名
|
||||
*
|
||||
* @since 2024/8/1 下午9:24 v0.0.2-dev
|
||||
*/
|
||||
private String name;
|
||||
/**
|
||||
* 文件大小
|
||||
*
|
||||
* @since 2024/8/1 下午9:24 v0.0.2-dev
|
||||
*/
|
||||
private Long size;
|
||||
/**
|
||||
* BUSID(具体见<a href="https://github.com/botuniverse/onebot-11/blob/master/event/notice.md">OneBot文档</a>)
|
||||
*
|
||||
* @since 2024/8/1 下午9:24 v0.0.2-dev
|
||||
*/
|
||||
private Long busid;
|
@ -1,12 +1,13 @@
|
||||
package cn.wzpmc.api.events.notice.file;
|
||||
package cn.wzpmc.events.notice.file;
|
||||
|
||||
import cn.wzpmc.api.events.notice.NoticeEvent;
|
||||
import cn.wzpmc.events.notice.NoticeEvent;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 群文件上传事件
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午9:21
|
||||
@ -16,18 +17,21 @@ import lombok.EqualsAndHashCode;
|
||||
public class GroupFileUploadedEvent extends NoticeEvent {
|
||||
/**
|
||||
* 群组ID
|
||||
*
|
||||
* @since 2024/8/1 下午9:25 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 用户ID
|
||||
*
|
||||
* @since 2024/8/1 下午9:25 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "user_id")
|
||||
private Long userId;
|
||||
/**
|
||||
* 文件详细消息
|
||||
*
|
||||
* @since 2024/8/1 下午9:25 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "group_file")
|
@ -1,4 +1,4 @@
|
||||
package cn.wzpmc.api.events.notice.notify;
|
||||
package cn.wzpmc.events.notice.notify;
|
||||
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.Data;
|
||||
@ -6,6 +6,7 @@ import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 红包幸运王事件
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午10:03
|
||||
@ -15,6 +16,7 @@ import lombok.EqualsAndHashCode;
|
||||
public class LuckyKingNotifyEvent extends NotifyEvent {
|
||||
/**
|
||||
* 运气王ID
|
||||
*
|
||||
* @since 2024/8/1 下午10:04 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "target_id")
|
@ -1,12 +1,13 @@
|
||||
package cn.wzpmc.api.events.notice.notify;
|
||||
package cn.wzpmc.events.notice.notify;
|
||||
|
||||
import cn.wzpmc.api.events.notice.NoticeEvent;
|
||||
import cn.wzpmc.events.notice.NoticeEvent;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 群提醒事件
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午9:59
|
||||
@ -16,18 +17,21 @@ import lombok.EqualsAndHashCode;
|
||||
public class NotifyEvent extends NoticeEvent {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/1 下午10:01 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 相关用户ID
|
||||
*
|
||||
* @since 2024/8/1 下午10:00 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "user_id")
|
||||
private Long userId;
|
||||
/**
|
||||
* 群提醒事件子类型
|
||||
*
|
||||
* @since 2024/8/1 下午11:26 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "sub_type")
|
@ -1,9 +1,10 @@
|
||||
package cn.wzpmc.api.events.notice.notify;
|
||||
package cn.wzpmc.events.notice.notify;
|
||||
|
||||
import cn.wzpmc.api.events.notice.notify.honor.HonorNotifyEvent;
|
||||
import cn.wzpmc.events.notice.notify.honor.HonorNotifyEvent;
|
||||
|
||||
/**
|
||||
* 群提醒事件子类型
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午9:58
|
||||
@ -11,21 +12,25 @@ import cn.wzpmc.api.events.notice.notify.honor.HonorNotifyEvent;
|
||||
public enum NotifySubType {
|
||||
/**
|
||||
* 群内戳一戳事件
|
||||
*
|
||||
* @since 2024/8/1 下午10:16 v0.0.2-dev
|
||||
*/
|
||||
POKE(PokeNotifyEvent.class),
|
||||
/**
|
||||
* 红包运气王事件
|
||||
*
|
||||
* @since 2024/8/1 下午10:16 v0.0.2-dev
|
||||
*/
|
||||
LUCKY_KING(LuckyKingNotifyEvent.class),
|
||||
/**
|
||||
* 群内荣耀变更事件
|
||||
*
|
||||
* @since 2024/8/1 下午10:16 v0.0.2-dev
|
||||
*/
|
||||
HONOR(HonorNotifyEvent.class);
|
||||
public final Class<? extends NotifyEvent> clazz;
|
||||
NotifySubType(Class<? extends NotifyEvent> clazz){
|
||||
|
||||
NotifySubType(Class<? extends NotifyEvent> clazz) {
|
||||
this.clazz = clazz;
|
||||
}
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
package cn.wzpmc.api.events.notice.notify;
|
||||
package cn.wzpmc.events.notice.notify;
|
||||
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.Data;
|
||||
@ -6,6 +6,7 @@ import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 群内戳一戳事件
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午10:02
|
||||
@ -15,6 +16,7 @@ import lombok.EqualsAndHashCode;
|
||||
public class PokeNotifyEvent extends NotifyEvent {
|
||||
/**
|
||||
* 被戳者ID
|
||||
*
|
||||
* @since 2024/8/1 下午10:02 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "target_id")
|
@ -1,12 +1,13 @@
|
||||
package cn.wzpmc.api.events.notice.notify.honor;
|
||||
package cn.wzpmc.events.notice.notify.honor;
|
||||
|
||||
import cn.wzpmc.api.events.notice.notify.NotifyEvent;
|
||||
import cn.wzpmc.events.notice.notify.NotifyEvent;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 群荣耀变更事件
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午10:04
|
||||
@ -16,6 +17,7 @@ import lombok.EqualsAndHashCode;
|
||||
public class HonorNotifyEvent extends NotifyEvent {
|
||||
/**
|
||||
* 荣耀类型
|
||||
*
|
||||
* @since 2024/8/1 下午10:06 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "honor_type")
|
@ -1,7 +1,8 @@
|
||||
package cn.wzpmc.api.events.notice.notify.honor;
|
||||
package cn.wzpmc.events.notice.notify.honor;
|
||||
|
||||
/**
|
||||
* 荣耀类型
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午10:05
|
||||
@ -9,16 +10,19 @@ package cn.wzpmc.api.events.notice.notify.honor;
|
||||
public enum HonorType {
|
||||
/**
|
||||
* 龙王
|
||||
*
|
||||
* @since 2024/8/1 下午10:05 v0.0.2-dev
|
||||
*/
|
||||
TALKACTIVE,
|
||||
/**
|
||||
* 群聊之火
|
||||
*
|
||||
* @since 2024/8/1 下午10:05 v0.0.2-dev
|
||||
*/
|
||||
PERFORMER,
|
||||
/**
|
||||
* 快乐源泉
|
||||
*
|
||||
* @since 2024/8/1 下午10:05 v0.0.2-dev
|
||||
*/
|
||||
EMOTION
|
@ -1,4 +1,4 @@
|
||||
package cn.wzpmc.api.events.notice.recall;
|
||||
package cn.wzpmc.events.notice.recall;
|
||||
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.Data;
|
||||
@ -6,6 +6,7 @@ import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 群消息撤回事件
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午9:43
|
||||
@ -15,12 +16,14 @@ import lombok.EqualsAndHashCode;
|
||||
public class GroupMessageRecallEvent extends MessageRecallEvent {
|
||||
/**
|
||||
* 群号
|
||||
*
|
||||
* @since 2024/8/1 下午9:46 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "group_id")
|
||||
private Long groupId;
|
||||
/**
|
||||
* 操作者ID
|
||||
*
|
||||
* @since 2024/8/1 下午9:45 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "operator_id")
|
@ -1,12 +1,13 @@
|
||||
package cn.wzpmc.api.events.notice.recall;
|
||||
package cn.wzpmc.events.notice.recall;
|
||||
|
||||
import cn.wzpmc.api.events.notice.NoticeEvent;
|
||||
import cn.wzpmc.events.notice.NoticeEvent;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 消息撤回事件
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午9:48
|
||||
@ -16,12 +17,14 @@ import lombok.EqualsAndHashCode;
|
||||
public class MessageRecallEvent extends NoticeEvent {
|
||||
/**
|
||||
* 被撤回的用户ID
|
||||
*
|
||||
* @since 2024/8/1 下午9:49 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "user_id")
|
||||
private Long userId;
|
||||
/**
|
||||
* 被撤回的消息ID
|
||||
*
|
||||
* @since 2024/8/1 下午9:49 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "message_id")
|
@ -1,12 +1,13 @@
|
||||
package cn.wzpmc.api.events.notice.user;
|
||||
package cn.wzpmc.events.notice.user;
|
||||
|
||||
import cn.wzpmc.api.events.notice.NoticeEvent;
|
||||
import cn.wzpmc.events.notice.NoticeEvent;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 群成员更改事件
|
||||
*
|
||||
* @author wzp
|
||||
* @version 0.0.2-dev
|
||||
* @since 2024/8/1 下午9:30
|
||||
@ -16,6 +17,7 @@ import lombok.EqualsAndHashCode;
|
||||
public class GroupUserModifyEvent<S> extends NoticeEvent {
|
||||
/**
|
||||
* 消息子类型
|
||||
*
|
||||
* @since 2024/8/1 下午9:31 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "sub_type")
|
||||
@ -28,12 +30,14 @@ public class GroupUserModifyEvent<S> extends NoticeEvent {
|
||||
private Long groupId;
|
||||
/**
|
||||
* 操作者
|
||||
*
|
||||
* @since 2024/8/1 下午9:32 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "operator_id")
|
||||
private Long operatorId;
|
||||
/**
|
||||
* 加入/退出用户ID
|
||||
*
|
||||
* @since 2024/8/1 下午9:35 v0.0.2-dev
|
||||
*/
|
||||
@JSONField(name = "user_id")
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user