|
1 |
| - |
2 |
| -# TMBot介绍 |
3 |
| -## TMBot是以Websocket连接与有着OneBot标准的软件建立连接,并实现接口的插件加载框架 |
4 |
| ---- |
5 |
| -- 如要创作插件 |
6 |
| -* 这篇README可能为你带来帮助 |
7 |
| ---- |
8 |
| -* TMBot框架的插件是以Node包形式存在, |
9 |
| -所以你可以在你的项目里随意引用所有模块 |
10 |
| - |
11 |
| -(请不要随意"使用"内部功能实现的模块) |
12 |
| -如:OneBotDocking, PluginLoader,Websocket |
| 1 | +# TMBot |
13 | 2 |
|
14 |
| -虽然不可以使用,但是可以引用它内部的方法作为参数类型 |
| 3 | +OneBot标准的TMBot插件加载框架(WebsocketClient) 推荐使用go-cqhttp配合使用 |
15 | 4 |
|
16 |
| ---- |
| 5 | +<!-- PROJECT SHIELDS --> |
| 6 | + |
| 7 | +[![Contributors][contributors-shield]][contributors-url] |
| 8 | +[![Forks][forks-shield]][forks-url] |
| 9 | +[![Stargazers][stars-shield]][stars-url] |
| 10 | +[![Issues][issues-shield]][issues-url] |
| 11 | +[![MIT License][license-shield]][license-url] |
| 12 | + |
| 13 | + |
| 14 | +<!-- PROJECT LOGO --> |
| 15 | +<br/> |
| 16 | + |
| 17 | +<p align="center"> |
| 18 | + <a href="https://github.com/TMBotDev/TMBot"> |
| 19 | + <img src="logo.png" alt="Logo" width="378" height="400"> |
| 20 | + </a> |
| 21 | + |
| 22 | + <h3 align="center">OneBot标准的TMBot插件加载框架</h3> |
| 23 | + <p align="center"> |
| 24 | + 使用它去创造你的第一个机器人插件! |
| 25 | + <br /> |
| 26 | +</a> |
| 27 | + <br /> |
| 28 | + <br /> |
| 29 | + <a href="https://github.com/shaojintian/Best_README_template">查看仓库</a> |
| 30 | + · |
| 31 | + <a href="https://github.com/shaojintian/Best_README_template/issues">报告Bug</a> |
| 32 | + · |
| 33 | + <a href="https://github.com/shaojintian/Best_README_template/issues">提出新特性</a> |
| 34 | + </p> |
| 35 | + |
| 36 | +</p> |
| 37 | + |
| 38 | + |
| 39 | + |
| 40 | +## 目录 |
| 41 | + |
| 42 | +- [上手指南](#上手指南) |
| 43 | + - [开发前的配置要求](#开发前的配置要求) |
| 44 | + - [安装步骤](#安装步骤) |
| 45 | +- [文件目录说明](#文件目录说明) |
| 46 | +- [部署](#部署) |
| 47 | +- [使用到的框架](#使用到的框架) |
| 48 | +- [贡献者](#贡献者) |
| 49 | + - [如何参与开源项目](#如何参与开源项目) |
| 50 | + - [开发注意事项](#开发注意事项) |
| 51 | +- [版本控制](#版本控制) |
| 52 | +- [作者](#作者) |
| 53 | +- [鸣谢](#鸣谢) |
| 54 | + |
| 55 | +### 上手指南 |
| 56 | + |
| 57 | +1. 前往Releases页面下载最新的TMBot正式版 |
| 58 | +2. 安装go-cqhttp或其他OneBot标准的机器人后端,设置为正向ws连接(go-cqhttp链接:https://github.com/Mrs4s/go-cqhttp) |
| 59 | +2. 启动start.bat(Linux使用start.sh)安装所需依赖 |
| 60 | +3. 启动框架,生成配置文件,填写信息和ws地址端口 |
| 61 | +4. 修改配置文件,启动机器人 |
| 62 | +5. Enjoy it ;) |
| 63 | + |
| 64 | + |
| 65 | + |
| 66 | +#### 开发前的配置要求 |
| 67 | + |
| 68 | +1. 安装node.js(Linux上还要安装npm) |
| 69 | +2. 使用start脚本安装框架所需依赖 |
| 70 | +3. 您还需要go-cqhttp或其他OntBot协议的机器人作为后端(go-cqhttp链接:https://github.com/Mrs4s/go-cqhttp) |
| 71 | + |
| 72 | +#### **安装步骤** |
| 73 | + |
| 74 | +1. 克隆这个仓库 |
| 75 | + |
| 76 | +```sh |
| 77 | +git clone https://github.com/TMBotDev/TMBot/.git |
| 78 | +``` |
| 79 | + |
| 80 | +2. 启动框架 |
| 81 | + |
| 82 | +```sh |
| 83 | +./start.sh //Windows为start.bat |
| 84 | +``` |
| 85 | + |
| 86 | +更详细的步骤请见[上手指南](#上手指南) |
| 87 | + |
| 88 | +### 文件目录说明 |
| 89 | + |
| 90 | + |
| 91 | +``` |
| 92 | +FileTree: |
| 93 | +├── /config/ // TMBot总配置目录(不要往这里操作任何东西!) |
| 94 | +├── LICENSE.txt // 这个项目的许可证 |
| 95 | +├── README.md // 您正在阅读的这个文件 |
| 96 | +├── modules // TMBot框架模块 |
| 97 | +├── /plugins/ // TMBot插件加载目录(在这里创建插件) |
| 98 | +│ ├── /Data/ // TMBot插件数据目录 |
| 99 | +│ ├── xxx // 插件数据(最好每个创建都独立在Data目录创建一个文件夹,不要随意乱放) |
| 100 | +└── /tools/ //TMBot用到的小工具 |
| 101 | +
|
| 102 | +``` |
17 | 103 |
|
18 |
| -## 开发注意事项 |
19 |
| -此框架可以运行于LiteLoaderBDS与NodeJS上 |
20 |
| -### 但是!!你要注意,在NodeJS环境上运行,根目录是直接作用于项目目录的 |
21 |
| -### 在LiteLoaderBDS上,根目录是作用于BDS目录上的! |
22 |
| -### 所以可以使用 [FileClass.getStandardPath(<相对目录>)] 来获取作用于项目路径的绝对路径来避免此类BUG出现 |
23 |
| -#### TIPS: TMBot的基础接口实现已经全部使用了上述方法,所以可以直接传入作用于项目的相对路径 |
24 | 104 |
|
| 105 | +### 部署 |
25 | 106 |
|
26 |
| ---- |
| 107 | + 见[上手指南](#上手指南) |
27 | 108 |
|
28 |
| -1. 首先,TMBot框架目录结构如下\ |
29 |
| -├───config //TMBot总配置目录(不要往这里操作任何东西!)\ |
30 |
| -├───modules //TMBot框架模块\ |
31 |
| -├───plugins //TMBot插件加载目录(在这里创建插件)\ |
32 |
| -│ └───Data //TMBot插件数据目录\ |
33 |
| -│ └───xxx //(最好每个创建都独立在Data目录创建一个文件夹,不要随意乱放)\ |
34 |
| -└───tools //TMBot用到的小工具 |
| 109 | +### 使用到的框架 |
35 | 110 |
|
36 |
| -2. TMBot已经为你写好了一些基础接口实现,\ |
| 111 | +暂无 |
| 112 | + |
| 113 | +### 贡献者 |
| 114 | + |
| 115 | +请阅读**CONTRIBUTING.md** (现在没有) 查阅为该项目做出贡献的开发者。 |
| 116 | + |
| 117 | +#### 如何参与开源项目 |
| 118 | + |
| 119 | +贡献使开源社区成为一个学习、激励和创造的绝佳场所。你所作的任何贡献都是**非常感谢**的。 |
| 120 | + |
| 121 | + |
| 122 | +1. Fork 这个项目 |
| 123 | +2. 创建你的"Feature Branch",例如 (`git checkout -b feature/AmazingFeature`) |
| 124 | +3. Commit你的更改 (`git commit -m 'Add some AmazingFeature'`) |
| 125 | +4. 将更改推到你的分支上 (`git push origin feature/AmazingFeature`) |
| 126 | +5. 开始PR |
| 127 | + |
| 128 | +#### 开发注意事项 |
| 129 | + |
| 130 | +此框架可以运行于LiteLoaderBDS与NodeJS上 |
| 131 | +#### 但是请要注意,在```NodeJS环境上运行```,根目录是直接作用于```项目目录的``` |
| 132 | +#### 而在```LiteLoaderBDS```上,根目录是作用于```BDS根目录```上的! |
| 133 | +#### 所以可以使用 ```[FileClass.getStandardPath(<相对目录>)]``` 来获取作用于项目路径的绝对路径来避免此类BUG出现 |
| 134 | +#### ```TIPS: TMBot的基础接口实现已经全部使用了上述方法,所以可以直接传入作用于项目的相对路径``` |
| 135 | + |
| 136 | +### 您还需要注意的是 |
| 137 | + |
| 138 | + |
| 139 | +1. TMBot已经为你写好了一些基础接口实现,\ |
37 | 140 | 例如:\
|
38 | 141 | tools/data: JsonConfigFileClass, IniConfigFileClass, \
|
39 | 142 | tools/file: FileClass.readFrom, writeLine, createDir, delete, exists, copy, move, rename, getFileSize, checkIsDir, getFilesList,
|
40 | 143 | tools/logger: Logger
|
41 | 144 |
|
42 |
| -3. TMBot是先登录完成所有配置的WS连接然后再加载插件的 |
43 |
| -4. TMBot已经实现了OneBot标准的连接,你可以使用 modules/BotDockingMgr 的 BotDockingMgr.getBot 来获取已连接实例 |
44 |
| -5. TMBot框架会自动为插件安装依赖,可以直接将没有node_modules的插件放入plugins运行 |
45 |
| -6. TMBot会自行检索插件的package.json所规定的依赖是否在插件目录是否完整 |
46 |
| -7. TMBot插件发行形式必须以Node包的形式发布!不要包含TMBot的任何东西!不要修改源代码!必须可以直接解压至plugins目录运行! |
| 145 | +2. TMBot是先登录完成所有配置的WS连接然后再加载插件的 |
| 146 | +3. TMBot已经实现了OneBot标准的连接,你可以使用 modules/BotDockingMgr 的 BotDockingMgr.getBot 来获取已连接实例 |
| 147 | +4. TMBot框架会自动为插件安装依赖,可以直接将没有node_modules的插件放入plugins运行 |
| 148 | +5. TMBot会自行检索插件的package.json所规定的依赖是否在插件目录是否完整 |
| 149 | +6. TMBot插件发行形式必须以Node包的形式发布!不要包含TMBot的任何东西!不要修改源代码!必须可以直接解压至plugins目录运行! |
| 150 | +7. TMBot框架的插件是以Node包形式存在, 所以你可以在你的项目里随意引用所有模块 |
| 151 | +(请不要随意"使用"内部功能实现的模块) 如:OneBotDocking, PluginLoader,Websocket。 |
| 152 | +虽然不可以使用,但是可以引用它内部的方法作为参数类型 |
| 153 | + |
| 154 | + |
| 155 | + |
| 156 | + |
| 157 | +### 版本控制 |
| 158 | + |
| 159 | +该项目使用Git进行版本管理。您可以在repository参看当前可用版本。 |
| 160 | + |
| 161 | +### 作者 |
| 162 | + |
| 163 | +Timiya |
| 164 | + |
| 165 | +MineBBS:提米吖   qq:284696890 |
| 166 | + |
| 167 | + *您也可以在贡献者名单(暂时没有)中参看所有参与该项目的开发者。* |
| 168 | + |
| 169 | +### 版权说明 |
| 170 | + |
| 171 | +该项目使用 GPL-V3 授权许可,详情请参阅 [LICENSE](https://github.com/TMBotDev/TMBot/blob/master/LICENSE) |
| 172 | + |
| 173 | +### 鸣谢 |
| 174 | + |
| 175 | +<!-- 暂时没用> |
| 176 | +- [GitHub Emoji Cheat Sheet](https://www.webpagefx.com/tools/emoji-cheat-sheet) |
| 177 | +- [Img Shields](https://shields.io) |
| 178 | +- [Choose an Open Source License](https://choosealicense.com) |
| 179 | +- [GitHub Pages](https://pages.github.com) |
| 180 | +- [Animate.css](https://daneden.github.io/animate.css) |
| 181 | +- [xxxxxxxxxxxxxx](https://connoratherton.com/loaders) |
| 182 | +
|
| 183 | +<!-- links --> |
| 184 | +[your-project-path]:TMBotDev/TMBot/ |
| 185 | +[contributors-shield]: https://img.shields.io/github/contributors/TMBotDev/TMBot.svg?style=flat-square |
| 186 | +[contributors-url]: https://github.com/TMBotDev/TMBot/graphs/contributors |
| 187 | +[forks-shield]: https://img.shields.io/github/forks/TMBotDev/TMBot.svg?style=flat-square |
| 188 | +[forks-url]: https://github.com/TMBotDev/TMBot/network/members |
| 189 | +[stars-shield]: https://img.shields.io/github/stars/TMBotDev/TMBot.svg?style=flat-square |
| 190 | +[stars-url]: https://github.com/TMBotDev/TMBot/stargazers |
| 191 | +[issues-shield]: https://img.shields.io/github/issues/TMBotDev/TMBot.svg?style=flat-square |
| 192 | +[issues-url]: https://img.shields.io/github/issues/TMBotDev/TMBot.svg |
| 193 | +[license-shield]: https://img.shields.io/github/license/TMBotDev/TMBot.svg?style=flat-square |
| 194 | +[license-url]: https://github.com/TMBotDev/TMBot/blob/master/LICENSE |
0 commit comments