xianzhe18 / php-chatwork-api
PHP 的 Chatwork API 库
v4.0
2022-03-14 07:29 UTC
Requires
- php: >=7.0
- cakephp/utility: ^3.0
- friendsofphp/php-cs-fixer: ^2.10
- guzzlehttp/guzzle: ^6.0
Requires (Dev)
- phpunit/phpunit: ^6.5
- satooshi/php-coveralls: v2.0.0.
This package is auto-updated.
Last update: 2024-09-16 15:00:46 UTC
README
这是一个用于从 PHP 利用 Chatwork API 的库。
安装
$ composer require Xianzhe18/php-chatwork-api
快速示例
在使用之前,请务必准备好 ChatWork 的 API 密钥。
请确认 API 密钥的确认方法。
获取对象
// ChatWork API Clientオブジェクトの初期化
$chatwork = \Xianzhe18\Chatwork\Chatwork::create("chatwork api token");
获取自己的信息(API 密钥的所有者)
$user = $chatwork->me()->show();
// APIのレスポンスはすべてオブジェクトの形で取得できます
var_dump($user);
获取聊天室列表
$rooms = $chatwork->rooms()->show();
var_dump($rooms);
创建聊天室
// まずはRoomクラスを用意する
$room = new \Xianzhe18\Chatwork\Entity\Room();
$room->name = 'test chat';
// 次にメンバー一覧を用意する
$members = new \Xianzhe18\Chatwork\Entity\Collection\MembersCollection();
$member = new \Xianzhe18\Chatwork\Entity\Member();
$member->role = 'admin';
$member->account = $user;
$members->add($member);
$chatwork->rooms()->create($room, $members)
获取聊天室的成员列表
$members = $client->rooms()->members(123456/* roomidを指定します。*/);
var_dump($members);
获取聊天室的消息列表
// $force(0: 新しいメッセージのみ, 1: ラスト100メッセージ)
$messages = $client->rooms()->messages($room_id)->show($force);
发送消息
$message = new \Xianzhe18\Chatwork\Entity\Message();
$message->body = 'メッセージ内容';
$client->rooms()->messages($room_id)->create($message);
更新消息
$message = new \Xianzhe18\Chatwork\Entity\Message();
$message->body = 'メッセージ内容';
// $message_id(メッセージのID)
$client->rooms()->messages($room_id)->update($message, $message_id);
删除消息
// $message_id(メッセージのID)
$client->rooms()->messages($room_id)->delete($message_id);
获取聊天室的文件列表
$files = $client->rooms()->files($room_id)->show();
获取文件信息
$files = $client->rooms()->files($room_id)->detail($file_id);
上传文件
$chatwork = \Xianzhe18\Chatwork\Chatwork::create("chatwork api token", "v2", array('Content-Type' => 'multipart/form-data'));
$file = $chatwork->rooms()->files($room_id)->create($file, $message);