Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release: v0.1.1 #16

Merged
merged 10 commits into from
Jun 11, 2024
7 changes: 7 additions & 0 deletions .changelog/v0.1.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
> 对应核心版本: [**v4.0.0-RC3**](https://github.com/simple-robot/simpler-robot/releases/tag/v4.0.0-RC3)


我们欢迎并期望着您的的[反馈](https://github.com/simple-robot/simbot-component-onebot/issues)或[协助](https://github.com/simple-robot/simbot-component-onebot/pulls),
感谢您的贡献与支持!

也欢迎您为我们献上一颗 `star`,这是对我们最大的鼓励与认可!
9 changes: 3 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,9 @@ Simple Robot OneBot 组件是一个将
序列化和网络请求相关分别基于 [Kotlin serialization](https://github.com/Kotlin/kotlinx.serialization)
和 [Ktor](https://ktor.io/)。

> [!caution]
> WIP now.

## 文档与引导

- OneBot组件手册: *待施工*
- OneBot组件手册(🚧建设中): [OneBot组件手册](https://simple-robot.github.io/simbot-component-onebot/)
- 了解simbot: [Simple Robot 应用手册](https://simbot.forte.love)
- [文档引导站&API文档](https://docs.simbot.forte.love)
- [**社群**](https://simbot.forte.love/communities.html) 文档中也有提供社群信息喔
Expand Down Expand Up @@ -231,7 +228,7 @@ public class MyApp {
}

@Component
static class MyHandlers {
public static class MyHandlers {

/**
* 例如:监听OneBot的普通群消息
Expand Down Expand Up @@ -269,7 +266,7 @@ public class MyApp {
},
// 额外的可选配置
// config本身以及其内的各项属性绝大多数都可省略或null
config: {
"config": {
// API请求中的超时请求配置。整数数字,单位毫秒,默认为 `null`。
"apiHttpRequestTimeoutMillis": null,
// API请求中的超时请求配置。整数数字,单位毫秒,默认为 `null`。
Expand Down
1 change: 1 addition & 0 deletions Writerside/cfg/glossary.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE terms SYSTEM "https://resources.jetbrains.com/writerside/1.0/glossary.dtd">
<terms>
<term name="simbot4">Simple Robot v4 的简称,通常用于统称"simbot4标准API"和"simbot4核心库"</term>
<term name="组件">组件:针对一组一个或多个「组件标识」和「插件」的统称。</term>
</terms>
13 changes: 10 additions & 3 deletions Writerside/ob.tree
Original file line number Diff line number Diff line change
@@ -1,14 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE instance-profile
SYSTEM "https://resources.jetbrains.com/writerside/1.0/product-profile.dtd">
SYSTEM "https://resources.jetbrains.com/writerside/1.0/product-profile.dtd">

<instance-profile id="ob"
name="Simple Robot | OneBot"
start-page="Home.md">
<toc-element topic="Home.md"/>
<toc-element topic="quick-start.md">
<toc-element topic="use-onebot11.md"/>
</toc-element>
<toc-element toc-title="基础内容">
<toc-element topic="Event.md">
<toc-element topic="modules.md"/>
<toc-element toc-title="OneBot11">
<toc-element topic="onebot11-bot-config.md"/>
<toc-element topic="onebot11-event.md">
</toc-element>
<toc-element topic="onebot11-message.md"/>
</toc-element>
<toc-element topic="Message.md"/>
</toc-element>
</instance-profile>
51 changes: 51 additions & 0 deletions Writerside/topics/modules.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# 模块概述

## 公共模块

OneBot组件为所有协议实现的模块提供了一些共享内容的模块,
命名为 `simbot-component-onebot-common`。

此模块中会定义一些通用的类型或注解等。
对于普通开发者来讲可以不用过多关注,此模块由其他组件模块引用并使用。

## OneBot11

在OneBot组件中,我们提供了针对 [OneBot11](https://github.com/botuniverse/onebot-11)
协议的组件实现模块,它们的坐标以 `simbot-component-onebot-v11` 作为开头:

<list>
<li><control>simbot-component-onebot-v11-common</control>

在OneBot11协议的实现模块中进行共享的模块。
对于普通开发者来讲可以不用过多关注,此模块由其他组件模块引用并使用。
</li>
<li><control>simbot-component-onebot-v11-core</control>

OneBot11协议作为一个simbot组件的实现模块。通常会是你**真正使用**的模块。
</li>
<li><control>simbot-component-onebot-v11-event</control>

对OneBot11协议中的[原始事件](https://github.com/botuniverse/onebot-11/tree/master/event)
类型提供定义的模块,
被 `simbot-component-onebot-v11-core` 引用并依赖。

<tip>

需要注意的是这里的事件并不是simbot中的**事件**,而仅仅是一种数据类实现,
是对原始事件的JSON结构的基本映射。
</tip>
</li>
<li><control>simbot-component-onebot-v11-message</control>

对OneBot11协议中的[原始消息段](https://github.com/botuniverse/onebot-11/blob/master/message/segment.md)
类型提供定义的模块。

这里定义的大部分类型都是针对消息段的数据类实现,
是对它们的JSON结构的基本映射,
被 `simbot-component-onebot-v11-core` 引用并依赖。

</li>
</list>



68 changes: 68 additions & 0 deletions Writerside/topics/onebot11-bot-config.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
# Bot配置文件

<warning>TODO</warning>

Bot配置文件通常情况下是配合Spring Boot starter的时候用的。

当使用Spring Boot starter时,
配置文件放在资源目录 <path>resources</path> 中的 <path>/simbot-bots/</path> 目录下,
以 `.bot.json` 格式结尾,例如 `myBot.bot.json`。

<warning title="记得清理注释">

实际上JSON配置文件是**不允许**使用注释的,这里只是方便展示。

</warning>

<tabs>
<tab title="较完整示例">

```json
{
// 固定值
"component": "simbot.onebot11",
"authorization": {
// 唯一ID,作为组件内 Bot 的 id,用于组件内去重。可以随便编,但建议是bot的qq号
"botUniqueId": "123456",
// api地址,是个http/https服务器的路径,默认localhost:3000
"apiServerHost": "http://localhost:3000",
// 订阅事件的服务器地址,是个ws/wss路径,默认localhost:3001
"eventServerHost":"ws://localhost:3001",
// 配置的 token,可以是null
"accessToken": null
},
// 额外的可选配置
// config本身以及其内的各项属性绝大多数都可省略或null
"config": {
// API请求中的超时请求配置。整数数字,单位毫秒,默认为 `null`。
"apiHttpRequestTimeoutMillis": null,
// API请求中的超时请求配置。整数数字,单位毫秒,默认为 `null`。
"apiHttpConnectTimeoutMillis": null,
// API请求中的超时请求配置。整数数字,单位毫秒,默认为 `null`。
"apiHttpSocketTimeoutMillis": null,
// 每次尝试连接到 ws 服务时的最大重试次数,大于等于0的整数,默认为 2147483647
"wsConnectMaxRetryTimes": null,
// 每次尝试连接到 ws 服务时,如果需要重新尝试,则每次尝试之间的等待时长
// 整数数字,单位毫秒,默认为 3500
"wsConnectRetryDelayMillis": null,
}
}
```

</tab>
<tab title="简单示例">

```json
{
"component": "simbot.onebot11",
"authorization": {
"botUniqueId": "123456",
"apiServerHost": "http://localhost:3000",
"eventServerHost":"ws://localhost:3001"
}
}
```

</tab>
</tabs>

File renamed without changes.
File renamed without changes.
3 changes: 3 additions & 0 deletions Writerside/topics/quick-start.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# 开始使用


Loading
Loading