clawrock / slack-api
Slack 集成
1.6.0
2018-01-10 13:38 UTC
Requires
- php: >=5.5
- marc-mabe/php-enum: ^2.3
- monolog/monolog: 1.*
Requires (Dev)
- phpdocumentor/phpdocumentor: 2.*
- phpunit/phpunit: 4.*
- sebastian/phpcpd: 2.*
This package is auto-updated.
Last update: 2024-08-29 04:31:27 UTC
README
简介
Slack-API 允许您为 Slack 的 slash 命令 API 构建简单的响应系统。
安装
对于生产环境,请确保已安装 Composer。然后运行
composer require clawrock/slack-api
安装后,您需要引入 Composer 的自动加载器
require 'vendor/autoload.php';
代码示例
匿名函数的基本示例。
use ClawRock\Slack\SlackFactory; //Create new dispatcher $dispatcher = SlackFactory::dispatcher(); //Add commands to respond to your request $dispatcher->addCommand(SlackFactory::slashCommand('your-command-token') ->run(function ($req, $res){ $res->addText('Hello world!'); }))->dispatch(SlackFactory::getRequest()) ->create() ->toRequest() ->serve();
您还可以添加 Guard 来管理用户/团队/渠道权限。
use ClawRock\Slack\Enums\Permissions; $dispatcher->addGuard(SlackFactory::guard() ->defaultBehavior(Permissions::DenyAll()) ->allowUserIds(['U01']) ->allowTeamIds(['T01'])) ->addCommand(//commands) ->dispatch(SlackFactory::getRequest()) ->create() ->toRequest() ->serve();
值得注意的是,每个可调用对象都可以用于 addCommand() 方法。
您可以通过 Incoming webhooks 发送消息
use ClawRock\Slack\SlackFactory; SlackFactory::getMessageService('')->sendText("Hello world!");
文档
在 examples/ 目录中有非常详细的示例。您应该查看它们。
测试
只需运行
vendor/bin/phpunit
要求
Slack API 需要启用 SSL 的服务器。请参考 Slack API 的参考以获取更多信息。
贡献
如果您想参与开发,可以使用 grunt 生成文档文件。要这样做,请确保已安装 node 和 npm。
$ node -v
v4.7.0
$ npm -v
2.15.11
然后运行
$ npm install $ grunt init
然后运行以下命令生成文档:
grunt build
这将同时启动单元测试。
鸣谢
Slack-API 是由 generator-composer 启动的,这是一个 Yeoman 生成器,用于构建 PHP Composer 项目。
此项目以下列作为开发依赖项使用
许可证
作者:cr-team office@clawrock.com