diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 00000000..c8d8f592 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "python.pythonPath": "${workspaceFolder}/venv/bin/python" +} \ No newline at end of file diff --git a/docs/guide/basic-configurations.md b/docs/guide/basic-configurations.md index 0cfca069..972f2482 100644 --- a/docs/guide/basic-configurations.md +++ b/docs/guide/basic-configurations.md @@ -1,3 +1,19 @@ # 基本配置 -本章将介绍 NoneBot 的一些基本配置。 +到目前为止我们还在使用 NoneBot 的默认行为,在开始编写自己的插件之前,我们先尝试在配置文件上动动手脚,让 NoneBot 表现出不同的行为。 + +## 项目结构 + +要使用自定义配置的话,我们的机器人代码将不再只有一个文件(`bot.py`),这时候良好的项目结构开始变得重要了。 + +在这里,我们创建一个名为 `awesome-bot` 的目录作为我们的项目主目录,你也可以使用其它你想要的名字。然后把之前的 `bot.py` 移动到 `awesome-bot` 中,再新建一个名为 `config.py` 的空文件。此时项目结构如下: + +``` +awesome-bot +├── bot.py +└── config.py +``` + +在后面几章中,我们将在此结构上进行扩展和改进。 + +## 编写自定义配置 diff --git a/docs/guide/code/awesome-bot-1/bot.py b/docs/guide/code/awesome-bot-1/bot.py new file mode 100644 index 00000000..753e7dd9 --- /dev/null +++ b/docs/guide/code/awesome-bot-1/bot.py @@ -0,0 +1,6 @@ +import none + +if __name__ == '__main__': + none.init() + none.load_builtin_plugins() + none.run(host='127.0.0.1', port=8080) diff --git a/docs/guide/code/awesome-bot-1/config.py b/docs/guide/code/awesome-bot-1/config.py new file mode 100644 index 00000000..fd7a66c2 --- /dev/null +++ b/docs/guide/code/awesome-bot-1/config.py @@ -0,0 +1,3 @@ +from none.default_config import * + +SUPERUSERS = {12345678} diff --git a/docs/guide/whats-happened.md b/docs/guide/whats-happened.md index 08e9dcd6..ce518970 100644 --- a/docs/guide/whats-happened.md +++ b/docs/guide/whats-happened.md @@ -57,7 +57,9 @@ if __name__ == '__main__': NoneBot 的内置插件只包含了两个命令,`echo` 和 `say`,两者的功能都是重复发送者的话,区别在于,`echo` 命令任何人都可以调用(不限制权限),但只能原样重复消息,不能手动指定要发送的 CQ 码,`say` 命令只有超级用户(通常是你自己,需要在配置中指定,下一章会介绍)可以调用,可以在消息中指定要发送的 CQ 码,如下图: -![Echo and Say](./assets/echo_and_say.png) +

+ Echo and Say +

最后,`none.run(host='127.0.0.1', port=8080)` 让 NoneBot 跑在了地址 `127.0.0.1:8080` 上,向 CoolQ HTTP API 插件提供 `/`、`/ws/event/`、`/ws/api/` 三个入口,在我们的反向 WebSocket 配置中,插件利用了后两个入口。