diff --git a/mirai-api/pom.xml b/mirai-api/pom.xml
index 244586af7..116fae742 100644
--- a/mirai-api/pom.xml
+++ b/mirai-api/pom.xml
@@ -16,6 +16,12 @@
+
+ net.mamoe
+ mirai-core
+ 1.0
+ compile
+
diff --git a/mirai-api/src/main/java/net/mamoe/mirai/Bot.java b/mirai-api/src/main/java/net/mamoe/mirai/Bot.java
index 0c60309dc..9f4952b3c 100644
--- a/mirai-api/src/main/java/net/mamoe/mirai/Bot.java
+++ b/mirai-api/src/main/java/net/mamoe/mirai/Bot.java
@@ -1,15 +1,55 @@
package net.mamoe.mirai;
-import net.mamoe.mirai.utils.BotAccount;
+import lombok.Getter;
-import java.io.Closeable;
+import java.util.ArrayList;
+import java.util.List;
+
+public class Bot {
+
+ @Getter
+ private final long qq;
+
+ public Bot(long qq){
+ this.qq = qq;
+ }
+
+ public String getName(){
+ return "Bot";
+ }
+
+ public List getOwners(){
+ return new ArrayList<>();
+ }
+
+ public List getFriends(){
+ return new ArrayList<>();
+ }
+
+ public void addFriend(){
+
+ }
+
+ public void deleteFriend(){
+
+ }
+
+ public void sendMessageTo(long qq, String message){
+
+ }
+
+ public List getGroups(){
+ return new ArrayList<>();
+ }
+
+ public void sendGroupMessage(long group, String message){
+
+ }
+
+ public List getMessageHistory(){
+ return new ArrayList<>();
+ }
-/**
- * @author Him188moe
- */
-public interface Bot extends Closeable {
- BotAccount getAccount();
- // TODO: 2019/9/13 add more
}
diff --git a/mirai-api/src/main/java/net/mamoe/mirai/MiraiAPI.java b/mirai-api/src/main/java/net/mamoe/mirai/MiraiAPI.java
new file mode 100644
index 000000000..aed68ca65
--- /dev/null
+++ b/mirai-api/src/main/java/net/mamoe/mirai/MiraiAPI.java
@@ -0,0 +1,45 @@
+package net.mamoe.mirai;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * MiraiAPI provides
+ * - the status of the Mirai-Core
+ * - the fundamental bot operations.
+ * - the plugin status.
+ *
+ * It was designed for users, not developers,
+ * Web-based controller, UI controller or console is depending on Mirai-API
+ *
+ * Mirai-API does NOT contains fancy objects, and this means there are less functions it can do compare with Mirai-Core
+ *
+ * Again, for extending/developing Mirai, you should refer to Mirai-Core
+ * for only using , you should refer to Mirai-API
+ */
+public class MiraiAPI {
+ public static String getMiraiVersion(){
+ return MiraiServer.MIRAI_VERSION;
+ }
+
+ public static String getQQPortocolVersion(){
+ return MiraiServer.QQ_VERSION;
+ }
+
+ public static boolean isMiraiEnabled(){
+ return MiraiServer.getInstance()!=null;
+ }
+
+ public static List getEnabledPluginList(){
+ return new ArrayList<>();
+ }
+
+ public static List getEnabledBots(){
+ return new ArrayList<>();
+ }
+
+ public static Bot getBot(long qq){
+ return new Bot(qq);
+ }
+
+}
diff --git a/mirai-api/src/main/java/net/mamoe/mirai/utils/BotAccount.java b/mirai-api/src/main/java/net/mamoe/mirai/utils/BotAccount.java
deleted file mode 100644
index a998a5233..000000000
--- a/mirai-api/src/main/java/net/mamoe/mirai/utils/BotAccount.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package net.mamoe.mirai.utils;
-
-import lombok.Data;
-
-/**
- * @author Him188moe
- */
-@Data
-public final class BotAccount {
- public final long qqNumber;
- public final String password;
-
- public BotAccount(long qqNumber, String password) {
- this.qqNumber = qqNumber;
- this.password = password;
- }
-}
diff --git a/mirai-console/src/main/java/net/mamoe/mirai/MiraiConsole.java b/mirai-console/src/main/java/net/mamoe/mirai/MiraiConsole.java
new file mode 100644
index 000000000..3105a8cd6
--- /dev/null
+++ b/mirai-console/src/main/java/net/mamoe/mirai/MiraiConsole.java
@@ -0,0 +1,7 @@
+package net.mamoe.mirai;
+
+public class MiraiConsole {
+ public static void main(String[] args){
+
+ }
+}
diff --git a/mirai-core/pom.xml b/mirai-core/pom.xml
index bff6e2c4d..4f0afe652 100644
--- a/mirai-core/pom.xml
+++ b/mirai-core/pom.xml
@@ -30,13 +30,6 @@
compile
-
- net.mamoe
- mirai-api
- 1.0
- compile
-
-
com.google.protobuf
protobuf-java
diff --git a/mirai-core/src/main/java/net/mamoe/mirai/MiraiServer.java b/mirai-core/src/main/java/net/mamoe/mirai/MiraiServer.java
index b722713c2..e28a84b0d 100644
--- a/mirai-core/src/main/java/net/mamoe/mirai/MiraiServer.java
+++ b/mirai-core/src/main/java/net/mamoe/mirai/MiraiServer.java
@@ -35,9 +35,9 @@ public final class MiraiServer {
return instance;
}
- private final static String MIRAI_VERSION = "1.0.0";
+ public final static String MIRAI_VERSION = "1.0.0";
- private final static String QQ_VERSION = "4.9.0";
+ public final static String QQ_VERSION = "4.9.0";
@Getter //is running under UNIX
diff --git a/mirai-core/src/main/java/net/mamoe/mirai/utils/BotAccount.java b/mirai-core/src/main/java/net/mamoe/mirai/utils/BotAccount.java
new file mode 100644
index 000000000..ef2dcefa3
--- /dev/null
+++ b/mirai-core/src/main/java/net/mamoe/mirai/utils/BotAccount.java
@@ -0,0 +1,13 @@
+package net.mamoe.mirai.utils;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+
+@Data
+@AllArgsConstructor
+public class BotAccount {
+
+ public final long qqNumber;
+ private final String password;
+
+}