leonjza / php-gitlab-jabberhook
一个用于解析 Gitlab Webhooks 并通过 XMPP 通知的小型库
0.1
2014-10-16 12:06 UTC
Requires
- php: >=5.3.0, <6.0.0
- fahad19/xmpphp: dev-master
This package is auto-updated.
Last update: 2024-09-14 02:40:17 UTC
README
这是一个简单的项目,用于解析 Gitlab Webhooks 并通过 XMPP 发送通知。
主要思想是将消息发送到广播服务。这个库主要使用 Openfire jabber 服务器进行测试,但可能在其他许多服务器上也能正常工作。
安装
安装相对简单。确保您有 composer
,并执行以下命令:
php composer.phar create-project leonjza/php-gitlab-jabberhook gitlab-notifier "dev-master"
其中 gitlab-notifier
是您希望安装到的目录名称。
接下来,创建入口点文件(您可以命名为任何您想要的名称),您的 webhook 将 POST 到该文件(例如从 examples/test.php)
// File hook.php <?php require 'vendor/autoload.php'; $input = file_get_contents('php://input'); $message = new \GitlabXMPPHook\Read($input); $message = $message->parse(); $jabber = new \GitlabXMPPHook\Client(); $jabber->setOptions('server.local', 5222, 'username@server.local', 'password'); $jabber->call('message')->send($message, 'gitlab_users@broadcast.server.local');
确保此文件可通过您的 web 服务器访问,并在您的 Gitlab 安装中设置服务钩子。建议包含所有项目文件的目录不是世界可访问的,并且 hook.php
文件是 web 目录中唯一的符号链接。
最后,确保您已经修改了 setOptions()
调用,并使用有效的 Jabber 服务器和 JID。
##联系 @leonjza