mirror of
https://github.com/suyiiyii/nonebot-bison.git
synced 2026-05-09 18:27:56 +08:00
📝 文档迁移到 vuepress hope 主题 (#490)
* ⬆️ Bump the docs-update group with 3 updates Bumps the docs-update group with 3 updates: [@vuepress/client](https://github.com/vuepress/core), [vue](https://github.com/vuejs/core) and [vuepress](https://github.com/vuejs/vuepress/tree/HEAD/packages/vuepress). Updates `@vuepress/client` from 2.0.0-rc.0 to 2.0.0-rc.2 - [Release notes](https://github.com/vuepress/core/releases) - [Changelog](https://github.com/vuepress/core/blob/main/CHANGELOG.md) - [Commits](https://github.com/vuepress/core/compare/v2.0.0-rc.0...v2.0.0-rc.2) Updates `vue` from 3.4.3 to 3.4.21 - [Release notes](https://github.com/vuejs/core/releases) - [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md) - [Commits](https://github.com/vuejs/core/compare/v3.4.3...v3.4.21) Updates `vuepress` from 2.0.0-rc.0 to 2.0.0-rc.8 - [Release notes](https://github.com/vuejs/vuepress/releases) - [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md) - [Commits](https://github.com/vuejs/vuepress/commits/HEAD/packages/vuepress) --- updated-dependencies: - dependency-name: "@vuepress/client" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: docs-update - dependency-name: vue dependency-type: direct:development update-type: version-update:semver-patch dependency-group: docs-update - dependency-name: vuepress dependency-type: direct:development update-type: version-update:semver-patch dependency-group: docs-update ... Signed-off-by: dependabot[bot] <support@github.com> * 💄 auto fix by pre-commit hooks * 📝 使用 vuepress hope 主题 * 📝 更新文档中的过时内容 --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Azide <rukuy@qq.com>
This commit is contained in:
+116
-93
@@ -1,43 +1,48 @@
|
||||
---
|
||||
sidebar: auto
|
||||
prev: /usage/install
|
||||
next: /usage/easy-use
|
||||
---
|
||||
|
||||
# 全方位了解 Bison 的自行车
|
||||
|
||||
本节将详细列出 Bison 的使用方法,包括如何配置 Bison,如何使用 Bison 的后台管理网页,如何使用 Bison 的 API 等等
|
||||
本节将详细列出 Bison 的使用方法,包括但不限于
|
||||
|
||||
- 如何配置 Bison
|
||||
- 如何使用 Bison 的后台管理网页
|
||||
- 如何使用 Bison 的 API
|
||||
|
||||
如果你想要快速上手 Bison,可以前往[简单使用](/usage/easy-use.md)
|
||||
|
||||
## 配置
|
||||
|
||||
::: tip INFO
|
||||
|
||||
- 如果要在在 nonebot 中配置需要的**Bison 配置项**,请参考[NoneBot 配置方式](https://v2.nonebot.dev/docs/appendices/config#dotenv-%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6),在`.env`/`.env.*`文件中写入希望配置的 Bison 配置项
|
||||
- 请注意,在`.env`/`.env.*`中添加的配置项 **不** 需要声明变量类型
|
||||
:::
|
||||
- 想要在 nonebot 中配置需要的**Bison 配置项**,请参考[NoneBot 配置方式](https://v2.nonebot.dev/docs/appendices/config#dotenv-%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6),在`.env`/`.env.*`文件中写入希望配置的 Bison 配置项
|
||||
- 请注意,在`.env`/`.env.*`中添加的配置项 ==不需要== 声明变量类型
|
||||
|
||||
- `BISON_TO_ME`: 是否需要@Bot 或使用 Bot 的 Nickname 来触发 Bison,默认为`True`
|
||||
- `BISON_CONFIG_PATH`: 插件存放配置文件的位置,如果不设定默认为项目目录下的`data`目录
|
||||
- `BISON_USE_PIC`: 将文字渲染成图片后进行发送,多用于规避风控
|
||||
:::
|
||||
|
||||
- `BISON_TO_ME`: 是否需要 @Bot 或使用 Bot 的 Nickname 来触发 Bison 的命令,默认为`True`
|
||||
- `BISON_CONFIG_PATH`<Badge text="弃用" type="warning" vertical="top"/>: 插件存放配置文件的位置,如果不设定默认为项目目录下的`data`目录,现用于从低版本迁移
|
||||
- `BISON_USE_PIC`: 将几乎所有文字渲染成图片后进行发送,多用于规避风控
|
||||
- `BISON_BROWSER`: 本插件使用 Chrome 来渲染图片
|
||||
- 如果不进行配置,那么会在启动时候自动进行安装,在官方的 docker 镜像中已经安装了浏览器
|
||||
- 使用本地安装的 Chrome,设置为`local:<chrome path>`,例如`local:/usr/bin/google-chrome-stable`
|
||||
- 使用 cdp 连接相关服务,设置为`wsc://xxxxxxxxx`
|
||||
- 使用 browserless 提供的 Chrome 管理服务,设置为`ws://xxxxxxxx`,值为 Chrome Endpoint
|
||||
::: warning
|
||||
截止发布时,本项目尚不能完全与 browserless 兼容,目前建议使用镜像内自带的浏览器,即
|
||||
不要配置这个变量
|
||||
截止发布时,本项目尚不能完全与 browserless 兼容,目前建议使用镜像内自带的浏览器
|
||||
即 **不要配置这个变量**
|
||||
:::
|
||||
- `BISON_SKIP_BROWSER_CHECK`: 是否在启动时自动下载浏览器,如果选择`False`会在用到浏览器时自动下载,
|
||||
默认`True`
|
||||
- `BISON_OUTER_URL`: 从外部访问服务器的地址,不设置或为空时默认值为 `http://localhost:<Bot运行在的端口>/bison/`
|
||||
::: warning
|
||||
请注意,该网址**并不能直接访问**Bison 的后台管理网页,正确的访问方法请参见[私聊机器人获取后台地址](#私聊机器人获取后台地址)
|
||||
请注意,该网址**并不能直接访问** Bison 的后台管理网页,正确的访问方法请参见[私聊机器人获取后台地址](#私聊机器人获取后台地址)
|
||||
:::
|
||||
::: tip 配置建议
|
||||
请选择你的部署情况:
|
||||
<div class="outer_url_help">
|
||||
<div class="outer-url-help">
|
||||
<input type="checkbox" id="docker" v-model="docker"/>
|
||||
<label for="docker">使用容器部署</label>
|
||||
<input type="checkbox" id="server" v-model="server"/>
|
||||
@@ -46,7 +51,11 @@ next: /usage/easy-use
|
||||
<label for="reverse-proxy">启用反代</label>
|
||||
</div>
|
||||
下面是配置建议:
|
||||
<div class="outer_url_help" v-html="outerUrlHelp"></div>
|
||||
|
||||
```plaintext:no-v-pre :no-line-numbers
|
||||
{{ outerUrlHelp }}
|
||||
```
|
||||
|
||||
:::
|
||||
|
||||
- `BISON_FILTER_LOG`: 是否过滤来自`nonebot`的 warning 级以下的 log,如果你的 bot 只运行了这个插件可以考虑
|
||||
@@ -55,34 +64,39 @@ next: /usage/easy-use
|
||||
- `BISON_RESEND_TIMES`: 最大重发次数,默认 0
|
||||
- `BISON_USE_PIC_MERGE`: 是否启用多图片时合并转发(仅限群)
|
||||
|
||||
- `0`: 不启用(默认)
|
||||
- `0`: 不启用 (默认)
|
||||
- `1`: 首条消息单独发送,剩余图片合并转发
|
||||
- `2`: 所有消息全部合并转发
|
||||
|
||||
::: details BISON_USE_PIC_MERGE 配置项示例
|
||||
|
||||
- 当`BISON_USE_PIC_MERGE=1`时:
|
||||
- 当`BISON_USE_PIC_MERGE=1`时:
|
||||

|
||||
- 当`BISON_USE_PIC_MERGE=2`时:
|
||||
- 当`BISON_USE_PIC_MERGE=2`时:
|
||||

|
||||
|
||||
:::
|
||||
::: warning
|
||||
启用此功能时,可能会因为待推送图片过大/过多而导致文字消息与合并转发图片消息推送间隔过大(选择模式`1`时),请谨慎考虑开启。或者选择模式`2`,使图文消息一同合并转发(可能会使消息推送延迟过长)
|
||||
启用此功能时,可能会因为待推送图片过大/过多而导致文字消息与合并转发图片消息推送间隔过大 (选择模式`1`时),请谨慎考虑开启。或者选择模式`2`,使图文消息一同合并转发 (可能会使消息推送延迟过长)
|
||||
:::
|
||||
|
||||
- `BISON_PROXY`: 使用的代理连接,形如`http://<ip>:<port>`(可选)
|
||||
- `BISON_UA`: 使用的 User-Agent,默认为 Chrome
|
||||
- `BISON_SHOW_NETWORK_WARNING`: 是否在日志中输出网络异常,默认为`True`
|
||||
- `BISON_THEME_USE_BROWSER`: 是否使用浏览器渲染主题,某些主题可能需要浏览器渲染(htmlrender),默认为`False`
|
||||
- `BISON_THEME_USE_BROWSER`: 是否使用浏览器渲染主题,某些主题可能需要浏览器渲染 (htmlrender),默认为`False`
|
||||
- `BISON_PLATFORM_THEME`: 为[平台](#平台)指定渲染用[主题](#主题),用于渲染推送消息,默认为`{}`
|
||||
::: details BISON_PLATFORM_THEME 配置项示例
|
||||
|
||||
配置项使用`<platform>:<theme>`的形式来为某个平台指定其渲染主题,例如`"weibo":"basic"`,`"bilibili":"ht2i"`。
|
||||
最外层使用`{}`包裹,多个配置项之间使用逗号`,`分隔。
|
||||
需要注意,`<platform>`所用内容是平台的**英文名**,`<theme>`所用内容是主题的**英文名**。并且不要忘记使用双引号`""`包裹内容。
|
||||
配置项使用`<platform>:<theme>`的形式来为某个平台指定其渲染主题,例如
|
||||
|
||||
例子:
|
||||
- `"weibo":"basic"`
|
||||
- `"bilibili":"ht2i"`。
|
||||
|
||||
最外层使用`{}`包裹,多个配置项之间使用逗号`,`分隔。
|
||||
需要注意,`<platform>`所用内容是平台的**代码英文名**,`<theme>`所用内容是主题的**代码英文名**。
|
||||
并且不要忘记使用双引号`""`包裹内容。
|
||||
|
||||
例子:
|
||||
|
||||
```env
|
||||
BISON_PLATFORM_THEME={"weibo":"basic","bilibili":"ht2i"}
|
||||
@@ -95,56 +109,58 @@ next: /usage/easy-use
|
||||
## 使用
|
||||
|
||||
::: warning
|
||||
本节假设`COMMAND_START`设置中包含`''`
|
||||
本节假设`COMMAND_START`配置中包含`''`
|
||||
|
||||
- 如果出现 bot 不响应的问题,请先排查这个设置
|
||||
- 尝试在命令前添加设置的命令前缀,如`COMMAND_START=['/']`,则尝试使用`/添加订阅`
|
||||
:::
|
||||
|
||||
:::
|
||||
|
||||
### 命令
|
||||
|
||||
#### 在本群中进行配置
|
||||
|
||||
所有命令都需要@bot 触发
|
||||
所有命令都需要 @bot 触发
|
||||
|
||||
- 添加订阅(仅管理员和群主和 SUPERUSER):`添加订阅`
|
||||
::: details 关于中止添加订阅
|
||||
对于[**v0.5.1**](https://github.com/felinae98/nonebot-bison/releases/tag/v0.5.1)及以上的版本中,已经为`添加订阅`命令添加了中止添加功能。
|
||||
在`添加订阅`命令的~~几乎~~各个阶段,都可以向 Bot 发送`取消`消息来中止订阅过程(需要发起者本人发送)
|
||||
:::
|
||||
- 查询订阅:`查询订阅`
|
||||
- 删除订阅(仅管理员和群主和 SUPERUSER):`删除订阅`
|
||||
::: details 关于中止删除订阅
|
||||
对于[**v0.5.3**](https://github.com/felinae98/nonebot-bison/releases/tag/v0.5.3)及以上的版本中,已经为`删除订阅`命令添加了中止删除功能。
|
||||
在`删除订阅`命令的~~几乎~~各个阶段,都可以向 Bot 发送`取消`消息来中止订阅过程(需要发起者本人发送)
|
||||
:::
|
||||
|
||||
::: details 关于中止命令
|
||||
对于[**v0.5.3**](https://github.com/felinae98/nonebot-bison/releases/tag/v0.5.3)及以上的版本中,已经为`添加订阅/删除订阅`命令添加了中止删除功能。
|
||||
在命令的~~几乎~~各个阶段,都可以向 Bot 发送`取消`消息来中止流程 (需要发起者本人发送)
|
||||
:::
|
||||
|
||||
#### 私聊机器人获取后台地址
|
||||
|
||||
要管理订阅,请输入`后台管理`命令,然后点击回复中的链接。你的管理权限取决于你的身份:
|
||||
要管理订阅,请和 bot **私聊**输入`后台管理`命令,然后访问回复中的链接。你的管理权限取决于你的身份:
|
||||
|
||||
- 如果你是 superuser,你可以管理所有群的订阅;
|
||||
- 如果你是某些群的管理员,你可以管理这些群的订阅;
|
||||
- 如果你不是任何群的管理员,bot 会提示你无法执行此操作。
|
||||
|
||||
::: tip
|
||||
可以和 bot 通过临时聊天触发
|
||||
:::
|
||||
::: warning
|
||||
::: warning 注意隐私
|
||||
bot 返回的链接是网页的唯一身份凭证,不要泄露给他人。
|
||||
链接有时效性,过期后需重新向 bot 索取新链接。
|
||||
链接具有有时效性,过期后需重新向 bot 索取新链接。
|
||||
:::
|
||||
|
||||
#### 私聊机器人进行配置(需要 SUPERUER 权限)
|
||||
|
||||
请私聊 bot`群管理`
|
||||
请私聊 bot `群管理`
|
||||
|
||||
::: details 关于中止订阅
|
||||
与普通的[`添加订阅`/`删除订阅`](#在本群中进行配置)命令一样,在`群管理`命令中使用的`添加订阅`/`删除订阅`命令也可以使用`取消`来中止订阅过程
|
||||
与普通的[`添加订阅`/`删除订阅`](#在本群中进行配置)命令一样,在`群管理`命令中使用的`添加订阅`/`删除订阅`命令也可以使用`取消`来中止流程
|
||||
:::
|
||||
|
||||
### 命令行命令(CLI)
|
||||
### 命令行命令 (CLI)
|
||||
|
||||
```CLI
|
||||
Bison 在 `nb-cli` 中注册了一些命令,用于导出和导入订阅信息。
|
||||
|
||||
```shell
|
||||
nb bison --help
|
||||
```
|
||||
|
||||
```plaintext:no-line-numbers
|
||||
Nonebot Bison CLI, 目前用于实现Bison订阅的导入导出功能
|
||||
|
||||
用法:
|
||||
@@ -153,14 +169,14 @@ Nonebot Bison CLI, 目前用于实现Bison订阅的导入导出功能
|
||||
Command(命令):
|
||||
|
||||
export:
|
||||
导出Nonebot Bison Exchangable Subcribes File
|
||||
导出 Nonebot Bison Exchangable Subcribes File
|
||||
Options(选项):
|
||||
-p, --path TEXT 导出路径, 如果不指定,则默认为工作目录
|
||||
--format [json|yaml|yml] 指定导出格式[json, yaml],默认为 json
|
||||
--help 显示帮助
|
||||
|
||||
import:
|
||||
从Nonebot Biosn Exchangable Subscribes File导入订阅
|
||||
从 Nonebot Biosn Exchangable Subscribes File 导入订阅
|
||||
Options(选项):
|
||||
-p, --path TEXT 导入文件名 [必须]
|
||||
--format [json|yaml|yml] 指定导入格式[json, yaml],默认为 json
|
||||
@@ -171,31 +187,31 @@ Command(命令):
|
||||
|
||||
Bison 支持的平台如下:
|
||||
|
||||
- arknights: 明日方舟游戏信息
|
||||
- bilibili: B站
|
||||
- bilibili-live: Bilibili直播
|
||||
- bilibili-bangumi: Bilibili剧集
|
||||
- ff14: 最终幻想XIV官方公告
|
||||
- ncm-artist: 网易云-歌手
|
||||
- ncm-radio: 网易云-电台
|
||||
- rss: RSS
|
||||
- weibo: 新浪微博
|
||||
- `arknights`: 明日方舟游戏信息
|
||||
- `bilibili`: B 站
|
||||
- `bilibili-live`: Bilibili 直播
|
||||
- `bilibili-bangumi`: Bilibili 剧集
|
||||
- `ff14`: 最终幻想 XIV 官方公告
|
||||
- `ncm-artist`: 网易云 - 歌手
|
||||
- `ncm-radio`: 网易云 - 电台
|
||||
- `rss`: RSS
|
||||
- `weibo`: 新浪微博
|
||||
|
||||
:::tip
|
||||
配置 `BISON_PLATFORM_THEME` 时,所用的 `<platform>` 是 `:` 左边的值
|
||||
配置 `BISON_PLATFORM_THEME` 时,所用的 `<platform>` 是 `:` 左侧的值
|
||||
:::
|
||||
|
||||
### 主题
|
||||
|
||||
Bison 支持的主题如下:
|
||||
|
||||
- basic: 基础主题,是每个平台都会支持的主题
|
||||
- ht2i: 使用 `nonebot-plugin-htmlrender` 插件,将文本渲染成图片的主题
|
||||
- brief: 简报主题,仅发送标题、链接、图片
|
||||
- arknights: 明日方舟专用主题,渲染为明日方舟公告风格
|
||||
- `basic`: 基础主题,是每个平台都会支持的主题
|
||||
- `ht2i`: 使用 `nonebot-plugin-htmlrender` 插件,将纯文本渲染成图片
|
||||
- `brief`: 简报主题,仅发送标题、链接、图片
|
||||
- `arknights`: 明日方舟专用主题,渲染为明日方舟公告风格
|
||||
|
||||
:::tip
|
||||
配置 `BISON_PLATFORM_THEME` 时,所用的 `<theme>` 是 `:` 左边的值
|
||||
配置 `BISON_PLATFORM_THEME` 时,所用的 `<theme>` 是 `:` 左侧的值
|
||||
:::
|
||||
|
||||
### 所支持平台的 uid
|
||||
@@ -211,30 +227,31 @@ Bison 支持的主题如下:
|
||||
|
||||
#### RSS
|
||||
|
||||
RSS 链接即为 uid
|
||||
整个 RSS 链接即为 uid
|
||||
|
||||
#### 网易云音乐-歌手
|
||||
#### 网易云音乐 - 歌手
|
||||
|
||||
在网易云网页上歌手的链接一般为`https://music.163.com/#/artist?id=32540734`,`id=`
|
||||
后面的数字即为 uid
|
||||
在网易云网页上歌手的链接一般为`https://music.163.com/#/artist?id=32540734`,`id=` 后面的数字即为 uid
|
||||
|
||||
#### 网易云音乐-电台
|
||||
#### 网易云音乐 - 电台
|
||||
|
||||
在网易云网页上电台的链接一般为`https://music.163.com/#/djradio?id=793745436`,`id=`
|
||||
后面的数字即为 uid
|
||||
在网易云网页上电台的链接一般为`https://music.163.com/#/djradio?id=793745436`,`id=` 后面的数字即为 uid
|
||||
|
||||
### 平台订阅标签(Tag)
|
||||
|
||||
Tag 是社交平台中一种常见的功能,它用井号(#)作为前缀,标记关键词,方便用户搜索相关内容。
|
||||
例如:`#明日方舟# #每日打卡#(微博、哔哩哔哩) #baracamp(推特)`
|
||||
Tag 是社交平台中一种常见的功能,它用井号 (#) 作为前缀,标记关键词,方便用户搜索相关内容。
|
||||
例如:
|
||||
|
||||
- `#明日方舟#` `#每日打卡#`(微博、哔哩哔哩)
|
||||
- `#baracamp`(推特)
|
||||
|
||||
在 Bison 中,用户可以在添加平台账号订阅时(如果该平台支持 hashtag 功能),
|
||||
选择需要订阅或屏蔽的 Tag。
|
||||
|
||||
订阅 Tag 的方法是直接向 Bison 发送一系列 Tag,用空格分隔。
|
||||
**订阅** Tag 的方法是直接向 Bison 发送一系列 Tag,用空格分隔。
|
||||
例如:`A1行动预备组 罗德厨房——回甘`
|
||||
|
||||
屏蔽 Tag 的方法是在 Tag 前加上前缀~,也用空格分隔。
|
||||
**屏蔽** Tag 的方法是在 Tag 前加上前缀~,也用空格分隔。
|
||||
例如:`~123罗德岛 ~莱茵生命漫画`
|
||||
|
||||
订阅和屏蔽的 Tag 可以同时使用,按照上述方法发送即可。
|
||||
@@ -242,14 +259,20 @@ Tag 是社交平台中一种常见的功能,它用井号(#)作为前缀,标
|
||||
|
||||
#### Tag 的推送规则
|
||||
|
||||
Bison 在处理每条推送时,会按照以下规则检查推送中的 Tag:
|
||||
Bison 在处理每条推送时,会按照以下规则顺序检查推送中的 Tag:
|
||||
|
||||
- 如果推送中含有任何已记录的**需屏蔽 Tag**,Bison 会直接**丢弃**该推送,不进行后续检查。
|
||||
- 如果推送中含有任何已记录的**需订阅 Tag**,Bison 会将该推送发送到群中,不管是否有其他 Tag。
|
||||
- 如果**没有记录**任何需订阅 Tag,Bison 会将所有通过第一条规则检查的推送发送到群中。
|
||||
- 如果记录了至少一个需订阅 Tag,Bison 会**丢弃所有**不含任何需订阅 Tag 的推送,即使通过了第一条规则检查。
|
||||
对于每条推送:
|
||||
|
||||
<script setup>
|
||||
1. 检查 **需屏蔽 Tag** 列表
|
||||
- 如果推送中的 Tag 存在于 **需屏蔽 Tag** 列表中,则立刻**丢弃**该推送,检查结束
|
||||
- 如果推送中的 Tag 不存在于 **需屏蔽 Tag** 列表中,则**继续**第 2 条规则的检查
|
||||
2. **需订阅 Tag** 列表不为空
|
||||
- 如果推送中的任何一个 Tag 存在于 **需订阅 Tag** 列表中,则**发送**该推送到群中,检查结束
|
||||
- 如果推送中的每一个 Tag 都不存在于 **需订阅 Tag** 列表中,则**丢弃**该推送,检查结束
|
||||
3. **需订阅 Tag** 列表为空
|
||||
- **发送**该推送到群中,检查结束
|
||||
|
||||
<script setup lang="ts">
|
||||
import { ref, computed } from 'vue';
|
||||
|
||||
const docker = ref(false);
|
||||
@@ -257,47 +280,47 @@ const server = ref(false);
|
||||
const reverseProxy = ref(false);
|
||||
|
||||
const outerUrlHelp = computed(() => {
|
||||
let helpText = '';
|
||||
let helpText: string[] = [];
|
||||
|
||||
if ((docker.value || server.value) && !reverseProxy.value)
|
||||
helpText += '将Bot配置中的 <code>HOST</code> 部分设置为 <code>0.0.0.0</code><br>';
|
||||
if ((docker.value || server.value) && !reverseProxy.value)
|
||||
helpText.push('HOST=0.0.0.0');
|
||||
|
||||
if (docker.value && !server.value && !reverseProxy.value)
|
||||
helpText += '将 <code>BISON_OUTER_URL</code> 设置为 <code>http://localhost:[Docker映射到主机的端口]/bison/</code><br>';
|
||||
helpText.push('BISON_OUTER_URL=http://localhost:[Docker 映射到主机的端口]/bison/');
|
||||
|
||||
if (server.value && !reverseProxy.value){
|
||||
if (docker.value)
|
||||
helpText += '将 <code>BISON_OUTER_URL</code> 设置为 <code>http://[你的服务器ip]:[Docker映射到主机的端口]/bison/</code><br>';
|
||||
helpText.push('BISON_OUTER_URL=http://[你的服务器 ip]:[Docker 映射到主机的端口]/bison/');
|
||||
else
|
||||
helpText += '将 <code>BISON_OUTER_URL</code> 设置为 <code>http://[你的服务器ip]:[Bot运行的端口]/bison/</code><br>';
|
||||
helpText.push('BISON_OUTER_URL=http://[你的服务器 ip]:[Bot 运行的端口]/bison/');
|
||||
}
|
||||
|
||||
if (reverseProxy.value){
|
||||
if (server.value){
|
||||
helpText += '将 <code>BISON_OUTER_URL</code> 设置为 <code>http://[你的服务器ip]:[反代端口]/bison/</code><br>';
|
||||
helpText.push('BISON_OUTER_URL=http://[你的服务器 ip]:[反代端口]/bison/');
|
||||
if (docker.value)
|
||||
helpText += '请注意反代端口应该指向Docker映射到主机的端口<br>';
|
||||
helpText.push('# 请注意反代端口应该指向 Docker 映射到主机的端口<br>');
|
||||
else
|
||||
helpText += '请注意反代端口应该指向Bot运行的端口<br>';
|
||||
helpText.push('# 请注意反代端口应该指向 Bot 运行的端口');
|
||||
}
|
||||
else
|
||||
helpText += '谁没事在自己电脑上起反代啊(<br>';
|
||||
helpText.push('谁没事在自己电脑上起反代啊(');
|
||||
}
|
||||
|
||||
if (!docker.value && !server.value && !reverseProxy.value)
|
||||
helpText += '你无需设置此项<br>';
|
||||
|
||||
return helpText;
|
||||
if (!docker.value && !server.value && !reverseProxy.value)
|
||||
helpText.push('你无需设置此项');
|
||||
|
||||
return helpText.join('\n');
|
||||
});
|
||||
</script>
|
||||
|
||||
<style>
|
||||
.outer_url_help {
|
||||
.outer-url-help {
|
||||
margin-top: 10px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.outer_url_help label {
|
||||
.outer-url-help label {
|
||||
margin-right: 15px;
|
||||
}
|
||||
</style>
|
||||
|
||||
+12
-13
@@ -1,7 +1,6 @@
|
||||
---
|
||||
sidebar: auto
|
||||
prev: /usage/install
|
||||
next: /usage
|
||||
next: /usage/
|
||||
---
|
||||
|
||||
# :package: Bison 的第一个包裹
|
||||
@@ -22,25 +21,25 @@ next: /usage
|
||||
在本节中,我们假设`COMMAND_START`设置中包含`'/'`,也就是说,我们的命令前缀是`/`
|
||||
例如:`COMMAND_START=['', '/']`
|
||||
2. `BISON_TO_ME`
|
||||
是否需要@Bot 或使用 Bot 的 Nickname 来触发 Bison,默认为`True`
|
||||
是否需要 @Bot 或使用 Bot 的 Nickname 来触发 Bison,默认为`True`
|
||||
例如:
|
||||
- `BISON_TO_ME=True`
|
||||
`@Bot /help`
|
||||
- `BISON_TO_ME=False`
|
||||
`/help`
|
||||
3. `BISON_USE_PIC`
|
||||
将文字渲染成图片后进行发送,多用于规避风控, 默认为`False`
|
||||
将文字渲染成图片后进行发送,多用于规避风控,默认为`False`
|
||||
4. `BISON_USE_PIC_MERGE`: 是否启用多图片时合并转发(仅限群)
|
||||
|
||||
- `0`: 不启用(默认)
|
||||
- `0`: 不启用 (默认)
|
||||
- `1`: 首条消息单独发送,剩余图片合并转发
|
||||
- `2`: 所有消息全部合并转发
|
||||
|
||||
::: details BISON_USE_PIC_MERGE 配置项示例
|
||||
|
||||
- 当`BISON_USE_PIC_MERGE=1`时:
|
||||
- 当`BISON_USE_PIC_MERGE=1`时:
|
||||

|
||||
- 当`BISON_USE_PIC_MERGE=2`时:
|
||||
- 当`BISON_USE_PIC_MERGE=2`时:
|
||||

|
||||
|
||||
:::
|
||||
@@ -108,10 +107,10 @@ Bison 会要求你给出你想要订阅的目标,这个目标可以是一个 u
|
||||

|
||||
这里选择订阅明日方舟微博的`视频 图文 文字`类别,当该账号在微博发送了视频、图文、文字时,Bison 会将其派送到你的群聊中
|
||||
|
||||
## :bookmark: 选择需要特定订阅/屏蔽的话题(tag)
|
||||
## :bookmark: 选择需要特定订阅/屏蔽的话题 (tag)
|
||||
|
||||
::: tip 什么是话题(tag)?
|
||||
Tag 是社交平台中一种常见的功能,它用井号(#)作为前缀,标记关键词,方便用户搜索相关内容。
|
||||
::: tip 什么是话题 (tag)?
|
||||
Tag 是社交平台中一种常见的功能,它用井号 (#) 作为前缀,标记关键词,方便用户搜索相关内容。
|
||||
例如:`#明日方舟# #每日打卡#(微博、哔哩哔哩) #baracamp(推特)`
|
||||
|
||||
具体的过滤规则参见[Tag 的推送规则](/usage/#tag-的推送规则)
|
||||
@@ -136,7 +135,7 @@ Tag 是社交平台中一种常见的功能,它用井号(#)作为前缀,标
|
||||
|
||||
## :globe_with_meridians: 使用网页管理订阅
|
||||
|
||||
Bison 提供了一个网页管理订阅的功能,你可以在网页上查看、添加、删除订阅
|
||||
Bison 提供了一个网页管理订阅的功能,即 WebUI,你可以在网页上查看、添加、删除订阅
|
||||
如果需要使用,请 **私聊** Bison 发送`后台管理`命令,Bison 会给你发送一个网页链接,在浏览器打开即可进入网页管理订阅的界面
|
||||
::: tip 该命令无效?
|
||||
`后台管理`命令仅对`SUPERUSERS`的私聊有效
|
||||
@@ -144,9 +143,9 @@ Bison 提供了一个网页管理订阅的功能,你可以在网页上查看
|
||||
::: tip Bison 给出的链接无效?
|
||||
Bison 所给的链接中的 ip 和 port 是`BISON_OUTER_URL`配置决定的,也就是说 Bison 本身不能获取服务器的 ip 与自身的 port,所以 Bison 给出的链接可能是无效的。你可以在`BISON_OUTER_URL`中设置你的服务器 ip 与 port,或者直接修改 Bison 给出的链接为正确的`http://<ip>:<port>/bison/...`来进入网页管理订阅的界面。
|
||||
|
||||
参见[详细介绍-配置](/usage/#配置)的`BISON_OUTER_URL`部分
|
||||
参见[详细介绍 - 配置](/usage/#配置)的`BISON_OUTER_URL`部分
|
||||
:::
|
||||
::: tip 认证失败?
|
||||
:bug:
|
||||
在浏览器输入网址进入网页时,第一次进入可能会出现 unauthorized,请再输入网址重新进入一次
|
||||
在浏览器输入网址进入网页时,第一次进入可能会出现 unauthorized,请再输入网址重新进入一次,而**不能**简单的刷新页面
|
||||
:::
|
||||
|
||||
+88
-30
@@ -1,17 +1,16 @@
|
||||
---
|
||||
sidebar: auto
|
||||
prev: /usage
|
||||
prev: /usage/
|
||||
next: /usage/easy-use
|
||||
---
|
||||
|
||||
# 让拜松骑上自行车
|
||||
|
||||
本节将教你部署 nonebot-bison 项目
|
||||
想知道如何开始使用请看[简单使用](/usage/easy-use.md)或者[详细配置](/usage)
|
||||
本节将讲解如何部署 nonebot-bison 项目
|
||||
使用部分介绍请看 [简单使用](/usage/easy-use.md) 或者 [详细配置](/usage)
|
||||
|
||||
## 如何选择?
|
||||
|
||||
- 没有其他需要,只想使用 Nonebot-Bison?想在 Bison 的基础上再加入其他插件?
|
||||
- 没有其他需要,只想使用 Nonebot-Bison?想以 Bison 的基础扩展其他插件?
|
||||
试试[**作为 Bot 使用**](#作为-bot-使用)!
|
||||
- 已有项目,想要增加 Nonebot-Bison?
|
||||
试试[**作为插件使用**](#作为插件使用)!
|
||||
@@ -29,10 +28,10 @@ next: /usage/easy-use
|
||||
|
||||
### 使用 nb-cli 安装 <Badge type="tip" text="推荐" vertical="top" />
|
||||
|
||||
1. 安装`nb-cli`
|
||||
1. 安装[`nb-cli`](https://cli.nonebot.dev/docs/guide/installation)
|
||||
|
||||
```bash
|
||||
pip install nb-cli
|
||||
pipx install nb-cli
|
||||
```
|
||||
|
||||
2. 使用`nb-cli`执行在**项目根目录**执行
|
||||
@@ -41,14 +40,30 @@ next: /usage/easy-use
|
||||
nb plugin install nonebot-bison
|
||||
```
|
||||
|
||||
3. 在项目中添加依赖
|
||||
|
||||
```bash
|
||||
poetry add nonebot-bison
|
||||
```
|
||||
|
||||
### 手动安装
|
||||
|
||||
1. 安装 pip 包`nonebot-bison`
|
||||
::: code-tabs
|
||||
@tab poetry
|
||||
|
||||
```bash
|
||||
poetry add nonebot-bison
|
||||
```
|
||||
|
||||
@tab pip
|
||||
|
||||
```bash
|
||||
pip install nonebot-bison
|
||||
```
|
||||
|
||||
:::
|
||||
|
||||
2. 在`pyproject.toml`中导入插件`nonebot_bison`
|
||||
编辑项目根目录下的`pyproject.toml`文件,添加如下内容:
|
||||
|
||||
@@ -79,36 +94,34 @@ next: /usage/easy-use
|
||||
2. 在目录中下载[docker-compose.yml](https://raw.githubusercontent.com/felinae98/nonebot-bison/main/docker-compose.yml)
|
||||
将其中的`<your QQ>`改成自己的 QQ 号
|
||||
|
||||
:::: code-group
|
||||
::: code-group-item linux
|
||||
::: code-tabs#shell
|
||||
@tab linux
|
||||
|
||||
```bash
|
||||
wget https://raw.githubusercontent.com/felinae98/nonebot-bison/main/docker-compose.yml
|
||||
```
|
||||
|
||||
:::
|
||||
::: code-group-item windows
|
||||
@tab windows
|
||||
|
||||
```powershell
|
||||
Invoke-WebRequest -Uri https://raw.githubusercontent.com/felinae98/nonebot-bison/main/docker-compose.yml -OutFile docker-compose.yml
|
||||
```
|
||||
|
||||
:::
|
||||
::::
|
||||
|
||||
部分片断:
|
||||
|
||||
```yml
|
||||
...
|
||||
HOST: 0.0.0.0 # 0.0.0.0代表监听所有地址
|
||||
# SUPERUSERS: '[<your QQ>]' #取消该行注释,并将<your QQ>改为自己的QQ号
|
||||
HOST: 0.0.0.0 # 0.0.0.0 代表监听所有地址
|
||||
# SUPERUSERS: '[<your QQ>]' #取消该行注释,并将<your QQ>改为自己的 QQ 号
|
||||
BISON_CONFIG_PATH: /data
|
||||
# BISON_OUTER_URL: 'http://<your server ip>:8080/bison'
|
||||
#取消上行注释,并将<your server ip>改为你的服务器ip,bison不会自动获取ip
|
||||
#取消上行注释,并将<your server ip>改为你的服务器 ip,bison 不会自动获取 ip
|
||||
BISON_FILTER_LOG: 'true'
|
||||
BISON_USE_PIC: 'false' # 如果需要将文字转为图片发送请改为true
|
||||
BISON_USE_PIC: 'false' # 如果需要将文字转为图片发送请改为 true
|
||||
ports:
|
||||
- 8080:8080 # 容器映射的端口,如果需要修改请同时修改上面的BISON_OUTER_URL
|
||||
- 8080:8080 # 容器映射的端口,如果需要修改请同时修改上面的 BISON_OUTER_URL
|
||||
...
|
||||
```
|
||||
|
||||
@@ -116,7 +129,9 @@ next: /usage/easy-use
|
||||
想要指定更多配置请参考[详细配置](/usage#配置)
|
||||
:::
|
||||
|
||||
3. 启动 Bot(这里请八仙过海)
|
||||
3. 启动项目
|
||||
- 在目录中运行`docker-compose up -d`启动 Nonebot-Bison
|
||||
- 启动 Bot 端(这里请八仙过海)
|
||||
|
||||
### docker 部署
|
||||
|
||||
@@ -141,10 +156,15 @@ docker run -d --name nonebot-bison \
|
||||
|
||||
### 直接运行 <Badge type="warning" text="不推荐" vertical="top" />
|
||||
|
||||
可以参考[nonebot 的运行方法](https://docs.nonebot.dev/guide/getting-started.html)
|
||||
相当于进行了源码部署,或者说是开发模式的部署。
|
||||
|
||||
可以参考[nonebot 的运行方法](https://nonebot.dev/docs/quick-start)
|
||||
::: danger
|
||||
直接克隆源代码需要自行编译前端,否则会出现无法使用管理后台等情况。
|
||||
Bison 的 WebUI 是需要编译后才能使用的,直接克隆源代码需要自行编译前端,否则会出现无法使用管理后台等情况。
|
||||
:::
|
||||
|
||||
#### 本体安装
|
||||
|
||||
::: danger
|
||||
本项目中使用了 Python 3.10 的语法,如果出现问题,请检查 Python 版本
|
||||
:::
|
||||
@@ -158,24 +178,62 @@ docker run -d --name nonebot-bison \
|
||||
poetry install
|
||||
```
|
||||
|
||||
3. 安装 yarn,配置 yarn 源
|
||||
#### WebUI 安装
|
||||
|
||||
- 安装[`Node.js`](https://nodejs.org/en/download)
|
||||
- 安装`yarn`
|
||||
1. 安装包管理器
|
||||
Bison 仓库中使用了`pnpm`作为包管理器,如果没有安装请先安装`pnpm`
|
||||
当然如果你因为一些原因不想使用`pnpm`,可以使用`yarn`或者`npm`进行安装
|
||||
|
||||
```bash
|
||||
npm install -g yarn
|
||||
```
|
||||
- pnpm
|
||||
参见 [pnpm 安装](https://pnpm.io/zh/installation)
|
||||
- yarn
|
||||
- 安装[Node.js](https://nodejs.org/en/download)
|
||||
- 安装 yarn: `npm install -g yarn`
|
||||
|
||||
4. 在`admin-fronted`目录中运行`yarn && yarn build`编译前端
|
||||
2. 在`admin-fronted`目录中编译前端
|
||||
|
||||
```bash
|
||||
cd admin-frontend
|
||||
```
|
||||
|
||||
::: code-tabs
|
||||
@tab pnpm
|
||||
|
||||
```shell
|
||||
pnpm install
|
||||
pnpm build
|
||||
```
|
||||
|
||||
@tab yarn
|
||||
|
||||
```shell
|
||||
yarn && yarn build
|
||||
```
|
||||
|
||||
5. 编辑`.env.prod`配置各种环境变量,见[Nonebot2 配置](https://v2.nonebot.dev/docs/appendices/config)
|
||||
:::tip 找不到 .env.prod ?
|
||||
@tab npm
|
||||
|
||||
```shell
|
||||
npm i
|
||||
npm build
|
||||
```
|
||||
|
||||
:::
|
||||
|
||||
构建完毕后,dist 目录中生成的前端文件会自动移入`nonebot_bison/admin_page/dist`目录中,请前往检查
|
||||
|
||||
#### 运行
|
||||
|
||||
::: info 注意
|
||||
构建完前端后,请回到项目根目录
|
||||
:::
|
||||
|
||||
1. 编辑`.env.prod`配置各种环境变量,见[Nonebot2 配置](https://v2.nonebot.dev/docs/appendices/config)
|
||||
:::tip 找不到 .env.prod?
|
||||
`.env.prod`文件在项目根目录下,请确认当前目录为项目根目录
|
||||
:::
|
||||
6. 运行`poetry run python bot.py`启动 Bot
|
||||
|
||||
2. 启动 Bot
|
||||
|
||||
```bash
|
||||
poetry run nb run
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user