aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--HydroRoll/Hydro/__init__.py2
-rw-r--r--HydroRoll/Hydro/iamai_plugin_dice/__init__.py (renamed from HydroRoll/plugins/iamai_plugin_dice/__init__.py)1
-rw-r--r--HydroRoll/Hydro/iamai_plugin_dice/config.py (renamed from HydroRoll/plugins/iamai_plugin_dice/config.py)0
-rw-r--r--HydroRoll/Hydro/roll.py11
-rw-r--r--HydroRoll/__init__.py (renamed from HydroRoll/main.py)12
-rw-r--r--HydroRoll/plugins/Hydro.py1
-rw-r--r--HydroRoll/plugins/iamai_plugin_system_info/__init__.py41
-rw-r--r--HydroRoll/plugins/iamai_plugin_system_info/config.py11
8 files changed, 73 insertions, 6 deletions
diff --git a/HydroRoll/Hydro/__init__.py b/HydroRoll/Hydro/__init__.py
new file mode 100644
index 0000000..4171cac
--- /dev/null
+++ b/HydroRoll/Hydro/__init__.py
@@ -0,0 +1,2 @@
+from .iamai_plugin_dice import Dice
+from .roll import Roll \ No newline at end of file
diff --git a/HydroRoll/plugins/iamai_plugin_dice/__init__.py b/HydroRoll/Hydro/iamai_plugin_dice/__init__.py
index 6005406..396278a 100644
--- a/HydroRoll/plugins/iamai_plugin_dice/__init__.py
+++ b/HydroRoll/Hydro/iamai_plugin_dice/__init__.py
@@ -7,6 +7,7 @@ from plugins.iamai_plugin_base import CommandPluginBase
from .config import Config
+__all__ = ["Dice"]
class Dice(CommandPluginBase[None, Config]):
Config = Config
diff --git a/HydroRoll/plugins/iamai_plugin_dice/config.py b/HydroRoll/Hydro/iamai_plugin_dice/config.py
index a8c6700..a8c6700 100644
--- a/HydroRoll/plugins/iamai_plugin_dice/config.py
+++ b/HydroRoll/Hydro/iamai_plugin_dice/config.py
diff --git a/HydroRoll/Hydro/roll.py b/HydroRoll/Hydro/roll.py
new file mode 100644
index 0000000..8ccf0cd
--- /dev/null
+++ b/HydroRoll/Hydro/roll.py
@@ -0,0 +1,11 @@
+from iamai import Plugin
+
+class Roll(Plugin):
+ async def handle(self) -> None:
+ await self.event.reply("1")
+
+ async def rule(self) -> bool:
+ return(
+ self.event.adapter.name == "cqhttp" and
+ self.event.get_plain_text() == "1"
+ ) \ No newline at end of file
diff --git a/HydroRoll/main.py b/HydroRoll/__init__.py
index bb95e79..c290288 100644
--- a/HydroRoll/main.py
+++ b/HydroRoll/__init__.py
@@ -1,6 +1,6 @@
-from iamai import Bot
-
-bot = Bot(hot_reload=True)
-
-if __name__ == "__main__":
- bot.run()
+from iamai import Bot
+from .Hydro import Dice
+bot = Bot(hot_reload=True)
+
+if __name__ == "__main__":
+ bot.run()
diff --git a/HydroRoll/plugins/Hydro.py b/HydroRoll/plugins/Hydro.py
new file mode 100644
index 0000000..52895ea
--- /dev/null
+++ b/HydroRoll/plugins/Hydro.py
@@ -0,0 +1 @@
+from .. import Hydro \ No newline at end of file
diff --git a/HydroRoll/plugins/iamai_plugin_system_info/__init__.py b/HydroRoll/plugins/iamai_plugin_system_info/__init__.py
new file mode 100644
index 0000000..31fdf63
--- /dev/null
+++ b/HydroRoll/plugins/iamai_plugin_system_info/__init__.py
@@ -0,0 +1,41 @@
+import re
+import sys
+from plugins.iamai_plugin_base import CommandPluginBase
+from .config import Config
+import psutil
+import time
+
+
+class SystemInfo(CommandPluginBase[None, Config]):
+ priority: int = 0
+ Config = Config
+
+ def __post_init__(self):
+ self.re_pattern = re.compile(r"(?P<bot_info_str>.*)", flags=re.I)
+
+ def get_system_info(self) -> str:
+ cpu_usage = psutil.cpu_percent()
+ memory_usage = psutil.virtual_memory().percent
+ disk_usage = psutil.disk_usage('/').percent
+
+ current_time = time.time()
+ start_time = psutil.Process().create_time()
+
+ uptime_seconds = int(current_time - start_time)
+ uptime_str = time.strftime("%H:%M:%S", time.gmtime(uptime_seconds))
+
+ info_str = f"HydroRoll!{self.bot.config.Chien['version']}({self.bot.config.Chien['svn']}) built in Python {sys.version}\n"
+ info_str += f"本地时间: {time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())}\n"
+ info_str += f"已启动时间:{uptime_str}\n"
+ info_str += f"CPU使用率:{cpu_usage}%\n"
+ info_str += f"内存占用率:{memory_usage}%\n"
+ info_str += f"磁盘使用率:{disk_usage}%"
+
+ return info_str
+
+ async def handle(self) -> None:
+ system_info = self.get_system_info()
+ message_str = f"{system_info}"
+ await self.event.reply(
+ self.format_str(self.config.message_str,message_str)
+ ) \ No newline at end of file
diff --git a/HydroRoll/plugins/iamai_plugin_system_info/config.py b/HydroRoll/plugins/iamai_plugin_system_info/config.py
new file mode 100644
index 0000000..8571c38
--- /dev/null
+++ b/HydroRoll/plugins/iamai_plugin_system_info/config.py
@@ -0,0 +1,11 @@
+from typing import Set
+
+from plugins.iamai_plugin_base import CommandPluginConfig
+
+
+class Config(CommandPluginConfig):
+ __config_name__ = "plugin_system_info"
+ command: Set[str] = {"system"}
+ """命令文本。"""
+ message_str: str = "{message}"
+ """最终发送消息的格式。"""