# Gitter.im notifications channel for Laravel 5.3+

Latest Version on Packagist Software License Build Status StyleCI SensioLabsInsight Quality Score Code Coverage Total Downloads

This package makes it easy to send notifications using Gitter.im with Laravel 5.3.

# Contents

# Installation

Install this package with Composer:

composer require laravel-notification-channels/gitter

If you're using Laravel 5.x you'll also need to specify a version constraint:

composer require laravel-notification-channels/gitter -v 1.0.1

# Setting up the Gitter service

In order to send message to Gitter rooms, you need to obtain Personal Access Token or application token.

# Usage

You can use the channel in your via() method inside the notification:

use Illuminate\Notifications\Notification;
use NotificationChannels\Gitter\GitterMessage;
use NotificationChannels\Gitter\GitterChannel;

class TaskCompleted extends Notification
{
    public function via($notifiable)
    {
        return [GitterChannel::class];
    }

    public function toGitter($notifiable)
    {
        return GitterMessage::create("Task #{$notifiable->id} is complete!")
            ->room('room_id') // optional
            ->from('user_or_app_access_token');
    }
}

In order to let your notification know which Gitter room you are targeting, add the routeNotificationForGitter method to your Notifiable model:

public function routeNotificationForGitter()
{
    return 'room_id';
}

# Available methods

from(): Sets the sender's access token.

room(): Specifies the room id to send the notification to (overridden by routeNotificationForGitter if empty).

content(): Sets a content of the notification message. Supports Github flavoured markdown.

# Changelog

Please see CHANGELOG for more information what has changed recently.

# Testing

$ composer test

# Security

If you discover any security related issues, please email jhaoda@gmail.com instead of using the issue tracker.

# Contributing

Please see CONTRIBUTING for details.

# Credits

# License

The MIT License (MIT). Please see License File for more information.