patory / core
基于 Satori 协议的 PHP。
dev-main
2023-10-28 14:07 UTC
This package is auto-updated.
Last update: 2024-09-17 03:54:24 UTC
README
Satori PHP :: Patory
Satori 协议实现。
安装
运行环境需要 PHP 8.1 及以上版本。
特性
- Patory\Api: 请求 API 定义
- BasicApi
- (抽象) channel.*
- (抽象) friend.* (由于架构原因,由 User 中拆出)
- (抽象) guild.*
- (抽象) guild.member.*
- (抽象) guild.role.*
- (抽象) login.*
- (抽象) message.*
- (抽象) user.*
- Patory\Events: API 事件定义
- Patory\Universal: 通用数据定义
- Patory\Interval: 内部接口转义
- Patory\Messager: 消息编码
- Patory\Element: 消息元素工具类
- Patory\Auth: 简单鉴权工具
- Patory\Helper: 其他工具
Patory\Api
所有 API 派生基类都拥有内部魔术方法,以 Channel 基类为例:
Channel::path('create'): 生成 URL Path
示例
// 实现 Channel 基类 class Channel extends Patory\Api\Channel { function create(string $channel_id, Patory\Universal\Channel $data) : Patory\Universal\Channel{ $url = static::path(__FUNCTION__); //输出: /v1/channel.create } }
Patory\Element
元素内部以 Object 形式流转,通过 toString() 转为标准元素 <foo></foo>。
// 内部 Element = [ 'type' => 'at', 'attrs' => [ 'id' => '114514', 'name' => 'Tadokoro Koji', 'role' => null, 'type' => null ] ];
APIs
$at = new Patory\Element();