jc21 / slack-notifications
A PHP interface for sending Notifications to your Slack team
Installs: 2 829
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 4
Forks: 0
Open Issues: 0
Requires
- php: >=5.3.0
Requires (Dev)
- victorjonsson/markdowndocs: dev-master
This package is auto-updated.
Last update: 2024-05-28 11:08:00 UTC
README
- Send to any Channel or User
- Full webhook options set supported
- Attachments for nice field data display
Installing via Composer
# Install Composer curl -sS https://getcomposer.org/installer | php
Next, run the Composer command to install the latest stable version:
composer.phar require jc21/slack-notifications
After installing, you need to require Composer's autoloader:
require 'vendor/autoload.php';
Using
See the tests folder for some examples, but basically here's how to use it:
use jc21\SlackNotification; use jc21\SlackAttachment; $webhookUrl = 'your incoming webhook url'; $iconURl = ''; // Create Attachment first $attachment = new SlackAttachment(); $attachment->setFallback('Someone has tested the slack-notifications code successfully'); $attachment->setPretext('<https://github.com/jc21/slack-notifications|slack-notifications> was tested'); $attachment->setColor('#00ce3a'); $attachment->setAuthorName('Jamie Curnow'); $attachment->setAuthorLink('http://jc21.com'); $attachment->setAuthorIcon('https://avatars2.githubusercontent.com/u/1518257?v=3&s=460'); // Fields of the Attachment $attachment->addField('Description', 'slack-notifications is a PHP package to help you out', false); $attachment->addField('Type', 'Test', true); $attachment->addField('Result', 'Success', true); // The notification, which uses the Attachment $notification = new SlackNotification($webhookUrl); $notification->setChannel('#general'); // Use @ for a username. ie: @jc21 $notification->setUsername('slack-notifications'); $notification->setIconUrl($iconUrl); $notification->addAttachment($attachment); try { $notification->send(); } catch (\Exception $e) { print 'Error: ' . $e->getMessage() . PHP_EOL; exit(1); }