Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

HeXiaolingProject/kjBot

Repository files navigation

kjBot 是一个轻量级多功能的酷Q机器人框架。

警告:本项目面向过程编写。

框架结构

/
|--SDK/ #kjBot\SDK
|--public/
 |--tools/ #各类开放函数的文件
 |--index.php #入口文件
 |--init.php #初始化用
 |......
|--vendor/ #包目录
|--storage/ #请确保运行 PHP 的用户具有这个文件夹的写权限
 |--data/ #数据文件夹
 |--error.log #如果出现异常未捕获则会在此存放日志
 |......
 |--cache/ #缓存文件夹
|--middleWare/ #中间件,用于处理非命令
 |--Chain.php #中间件链,用于调整中间件顺序以及启用状态
 |--......
|--module/ #在这里开始编写你的模块吧 :)
 |--......
|--config.ini.example #配置文件样例,本地部署时请复制为 config.ini 并根据实际情况调整
|--build.sh #进行环境配置
|--run.sh #一键部署(大概 :v

上手

快速安装

如果你安装有 composer

mkdir kjBot/
composer create-project --no-dev kj415j45/kjbot ./kjBot
cd kjBot/
php build.php

如果没有

git clone https://github.com/kj415j45/kjBot.git
cd kjBot/
php build.php

打开 config.ini,根据你的实际情况修改。

如果你需要试用 kjBot 的全部功能,请继续运行 php composer.phar install

仅作为框架使用时,在确保 module 与 middleWare 文件夹下没有你的文件后:composer run-script framework-only

入门

public/init.php 中存在一个全局变量区供编写模块的程序员使用,约定本框架产生的全局变量均为大写字母开头。
public/tools/ 下的文件将为框架扩展各类方法,请仔细阅读。

编写第一个模块

假定该模块为 hello/main.php ,向 bot 发送 !hello 即可触发该模块。

<?php
global $Queue; //从全局变量区中导入 $Queue 数组,该数组提供消息队列的功能
if(!fromGroup()){ //如果消息不是来自群聊
 $Queue[]= sendBack('Hello, world!'); //向消息队列尾插入一句 'Hello, world!',在哪收到就发到哪,此处只会在私聊中发送
}else{
 leave(); //从模块中退出,不再执行下面的语句
}
?>

编写更多模块

参考 module/ 文件夹下的其他模块

参与开发

感谢

LICENSE

kjBot 框架及 SDK 均为 MIT 协议。但是模块与中间件均为 AGPL 协议,如果您希望闭源开发,请不要使用该项目提供的模块和中间件。

About

kjBot Framework and Modules

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 99.8%
  • Other 0.2%

AltStyle によって変換されたページ (->オリジナル) /