blankqwq / mirai-sdk
There is no license information available for the latest version (dev-main) of this package.
a sdk for mirai
dev-main
2022-12-31 11:28 UTC
Requires
- ext-json: *
- guzzlehttp/guzzle: ^7.3
Requires (Dev)
- mockery/mockery: ^1.4
- phpunit/phpunit: ^9.5
This package is auto-updated.
Last update: 2025-03-29 01:13:48 UTC
README
用于在
laravel
开发mirai
机器人后端
开发中
目前为测试版,所以更新较为频繁。
所有功能完成后发布的v1.0.0
大部分完成后发布v0.x.0
- Mirai 消息类型
- Mirai 事件类型
- 良好的IDE提示
- 请求翻译成对应类
- Mirai-http-adaptor
- http
- websocket
- 状态事件路由
- 单独一个插件
- 完善功能
- GoCq适配
快速开始
安装
composer require blankqwq/mirai-sdk:dev-master -vvv
创建配置文件 config/mirai.php
use Blankqwq\Mirai\Drivers\Mirai\Http; return [ 'default' => 'http', // 使用的驱动 'debug'=>true, // 日志记录 'host' => 'localhost:8080', // adaptor地址 'verify' => '', // 校验码 'tty' => 7200, // session过期时间 'account' => [ 'qq号', // qq号,可以为多个 ], 'drivers' => [ // 驱动列表,非必填(不建议设置,除非有自定义需求) 'http' => Http::class, ], 'guzzleConfig'=>[ ] ]
简单示例
使用默认qq进行拍一拍
use Blankqwq\Mirai\Mirai; .. Mirai::session()->sendNudge($sender['id'], $group['id']); ..
指定某qq进行拍一拍
use Blankqwq\Mirai\Mirai; .. $qq='1234567890'; Mirai::session($qq)->sendNudge($sender['id'], $group['id']); ..
若为拍一拍目标为机器人时,机器人也进行拍一拍
$eventOrMessage = \Blankqwq\Mirai\Translate::get($request); if ($event instanceof NudgeEvent) { Log::info('success_event', [$currentQQ,$event]); if ($event->target==$currentQQ){ Mirai::session()->sendNudge($event->fromId,$event->subject['id'],$event->subject['kind']); } }
发送群组消息
$mirai->sendGroupMsg($qq,new MessageGroup(new Text(Arr::random(['没有了~','被玩坏了!','再问我要给你一拳','干哈,爷就是没有','?还来']))));
发送给好友
$mirai->sendFriendMsg( $qq->subject['id'], // 此处为qq new MessageGroup(new Text(Arr::random(['没有了~','被玩坏了!','再问我要给你一拳','干哈,爷就是没有','?还来']))) );
多消息类型
$imageMessage= new \Blankqwq\Mirai\Message\MessageItem\Image(); $imageMessage->setBase64('')); // base64编码 $imageMessage->setUrl('http://..'); // 图片地址 $at = new \Blankqwq\Mirai\Message\MessageItem\At('qq号'); new MessageGroup($at,new Text(),new Image($imageMessage),...);
更多内容请查阅文档
API
采用小驼峰命名
参考
project-mirai/mirai-api-http
Adaptor文档
事件匹配
Translate::match($request,NudgeEvent::class,function($event){ // 事件执行的回调 });