diff options
| -rw-r--r-- | HydroRoll/Hydro/__init__.py | 2 | ||||
| -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.py | 11 | ||||
| -rw-r--r-- | HydroRoll/__init__.py (renamed from HydroRoll/main.py) | 12 | ||||
| -rw-r--r-- | HydroRoll/plugins/Hydro.py | 1 | ||||
| -rw-r--r-- | HydroRoll/plugins/iamai_plugin_system_info/__init__.py | 41 | ||||
| -rw-r--r-- | HydroRoll/plugins/iamai_plugin_system_info/config.py | 11 |
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}" + """最终发送消息的格式。""" |
