• Stars
    star
    155
  • Rank 240,864 (Top 5 %)
  • Language
    PHP
  • License
    BSD 2-Clause "Sim...
  • Created over 8 years ago
  • Updated almost 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Laravel integration for the maknz/slack package

Slack for Laravel

This package allows you to use Slack for PHP easily and elegantly in your Laravel 4 or 5 app. Read the instructions below to get setup, and then head on over to Slack for PHP for usage details. Note: this package is no longer being actively maintained.

Requirements

Laravel 4 or 5.

Installation

You can install the package using the Composer package manager. You can install it by running this command in your project root:

composer require maknz/slack-laravel

Then create an incoming webhook for each Slack team you'd like to send messages to. You'll need the webhook URL(s) in order to configure this package.

Laravel 5

Add the Maknz\Slack\Laravel\ServiceProvider provider to the providers array in config/app.php:

'providers' => [
  Maknz\Slack\Laravel\ServiceProvider::class,
],

Then add the facade to your aliases array:

'aliases' => [
  ...
  'Slack' => Maknz\Slack\Laravel\Facade::class,
],

Finally, publish the config file with php artisan vendor:publish. You'll find it at config/slack.php.

Laravel 4

Add the Maknz\Slack\Laravel\ServiceProvider provider to the providers array in app/config.php:

'providers' => [
  ...
  'Maknz\Slack\Laravel\ServiceProvider',
],

Then add the facade to your aliases array:

'aliases' => [
  ...
  'Slack' => 'Maknz\Slack\Laravel\Facade',
],

Finally, publish the config file with php artisan config:publish maknz/slack. You'll find the config file at app/config/packages/maknz/slack-laravel/config.php.

Configuration

The config file comes with defaults and placeholders. Configure at least one team and any defaults you'd like to change.

Usage

The Slack facade is now your interface to the library. Any method you see being called an instance of Maknz\Slack\Client is available on the Slack facade for easy use.

Note that if you're using the facade in a namespace (e.g. App\Http\Controllers in Laravel 5) you'll need to either use Slack at the top of your class to import it, or append a backslash to access the root namespace directly when calling methods, e.g. \Slack::method().

// Send a message to the default channel
Slack::send('Hello world!');

// Send a message to a different channel
Slack::to('#accounting')->send('Are we rich yet?');

// Send a private message
Slack::to('@username')->send('psst!');

Now head on over to Slack for PHP for more examples, including attachments and message buttons.