mirror of
https://github.com/zhamao-robot/zhamao-framework.git
synced 2026-07-21 07:35:34 +08:00
重构完成
This commit is contained in:
107
tools.php
107
tools.php
@@ -6,17 +6,7 @@
|
||||
* Time: 11:04 AM
|
||||
*/
|
||||
|
||||
date_default_timezone_set("Asia/Shanghai");
|
||||
|
||||
//启动时间
|
||||
define("START_TIME", time());
|
||||
@mkdir(CONFIG_DIR, 0777, true);
|
||||
@mkdir(USER_DIR, 0777, true);
|
||||
register_shutdown_function('handleFatal');
|
||||
|
||||
if (!file_exists(CONFIG_DIR . "config.json")) file_put_contents(CONFIG_DIR . "config.json", json_encode([]));
|
||||
|
||||
function handleFatal() {
|
||||
register_shutdown_function(function () {
|
||||
$error = error_get_last();
|
||||
if (isset($error['type'])) {
|
||||
switch ($error['type']) {
|
||||
@@ -47,13 +37,14 @@ function handleFatal() {
|
||||
$log .= "{$t['function']}()\n";
|
||||
}
|
||||
|
||||
file_put_contents(CONFIG_DIR . "last_error.log", $log);
|
||||
file_put_contents(CRASH_DIR . "last_error.log", $log);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
function CQMsg($msg, $type, $id) {
|
||||
if ($type === "group") {
|
||||
@@ -77,96 +68,6 @@ function CQMsg($msg, $type, $id) {
|
||||
return $reply;
|
||||
}
|
||||
|
||||
function printHelp() {
|
||||
echo color("{gold}=====CQBot-swoole=====");
|
||||
echo color("{gold}* 首次使用设置 *");
|
||||
echo color("[{green}?{r}] {lightlightblue}查看此列表");
|
||||
echo color("[{green}1{r}] {yellow}设置监听地址");
|
||||
echo color("[{green}2{r}] {yellow}设置监听端口");
|
||||
echo color("[{green}3{r}] {yellow}设置管理群");
|
||||
echo color("[{green}4{r}] {yellow}设置管理员");
|
||||
echo color("[{green}5{r}] {lightlightblue}开始运行");
|
||||
}
|
||||
|
||||
function setupWizard(&$json, &$properties) {
|
||||
printHelp();
|
||||
while (true) {
|
||||
echo color("> ", "");
|
||||
$id = trim(fgets(STDIN));
|
||||
switch ($id) {
|
||||
case "1":
|
||||
echo color("请输入监听地址(默认0.0.0.0):", "");
|
||||
$host = trim(fgets(STDIN));
|
||||
if ($host == "") {
|
||||
$properties["host"] = "0.0.0.0";
|
||||
echo color("{gray}已设置地址:0.0.0.0(默认)");
|
||||
} else {
|
||||
$properties["host"] = $host;
|
||||
echo color("{gray}已设置地址:" . $host);
|
||||
}
|
||||
break;
|
||||
case "2":
|
||||
echo color("请输入监听端口(默认20000):", "");
|
||||
$host = trim(fgets(STDIN));
|
||||
if ($host == "") {
|
||||
$properties["port"] = 20000;
|
||||
echo color("{gray}已设置端口:20000(默认)");
|
||||
} else {
|
||||
$properties["port"] = $host;
|
||||
echo color("{gray}已设置端口:" . $host);
|
||||
}
|
||||
break;
|
||||
case "3":
|
||||
echo color("请输入机器人QQ号:", "");
|
||||
$self_id = trim(fgets(STDIN));
|
||||
if ($self_id == "") {
|
||||
echo color("{red}请勿输入空数据!");
|
||||
break;
|
||||
}
|
||||
echo color("请输入本机器人QQ的管理群(机器人必须已经在群内):", "");
|
||||
$group = trim(fgets(STDIN));
|
||||
if ($group == "") {
|
||||
echo color("{red}请勿输入空数据!");
|
||||
break;
|
||||
}
|
||||
$properties["admin_group"][$self_id][] = $group;
|
||||
echo color("{gray}已设置机器人" . $self_id . "的管理群:" . $group);
|
||||
break;
|
||||
case "4":
|
||||
echo color("请输入机器人QQ号:", "");
|
||||
$self_id = trim(fgets(STDIN));
|
||||
if ($self_id == "") {
|
||||
echo color("{red}请勿输入空数据!");
|
||||
break;
|
||||
}
|
||||
echo color("请输入本机器人QQ的管理员QQ:", "");
|
||||
$group = trim(fgets(STDIN));
|
||||
if ($group == "") {
|
||||
echo color("{red}请勿输入空数据!");
|
||||
break;
|
||||
}
|
||||
$properties["super_user"][$self_id][] = $group;
|
||||
echo color("{gray}已设置机器人" . $self_id . "的管理员:" . $group);
|
||||
break;
|
||||
case "5":
|
||||
break 2;
|
||||
case "?":
|
||||
case "?":
|
||||
printHelp();
|
||||
break;
|
||||
default:
|
||||
echo color("{red}请输入正确的编号进行操作!\n在设置监听端口和监听地址后可开始运行服务器");
|
||||
break;
|
||||
}
|
||||
}
|
||||
$json["host"] = $properties["host"];
|
||||
$json["port"] = $properties["port"];
|
||||
$json["admin_group"] = $properties["admin_group"];
|
||||
$json["super_user"] = $properties["super_user"];
|
||||
$json["info_level"] = $properties["info_level"];
|
||||
file_put_contents(CONFIG_DIR . "config.json", json_encode($json, 128 | 256));
|
||||
}
|
||||
|
||||
function color($str, $end = "\n") {
|
||||
$str = str_replace("{red}", "\e[38;5;203m", $str);
|
||||
$str = str_replace("{green}", "\e[38;5;83m", $str);
|
||||
|
||||
Reference in New Issue
Block a user