LaravelPackages.net
Acme Inc.
Toggle sidebar
joecampo/laravel-notification-basecamp

Post notifications to Basecamp 3 Campfires

8.227
6
6.0.0
About joecampo/laravel-notification-basecamp

joecampo/laravel-notification-basecamp is a Laravel package for post notifications to basecamp 3 campfires. It currently has 6 GitHub stars and 8.227 downloads on Packagist (latest version 6.0.0). Install it with composer require joecampo/laravel-notification-basecamp. Discover more Laravel packages by joecampo or browse all Laravel packages to compare alternatives.

Last updated

laravel-notification-basecamp

Basecamp 3 Chatbot Campfire notification channel for Laravel.

Latest Version on Packagist Software License Build Status Total Downloads

Installation

You can install the package via composer:

composer require joecampo/laravel-notification-basecamp

Usage

Within a Laravel notification you can now use this as a channel for via()

use Illuminate\Notifications\Notification;
use NotificationChannels\Basecamp\CampfireChannel;
use NotificationChannels\Basecamp\CampfireMessage;


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

    public function toCampfire($notifiable)
    {
        return CampfireMessage::create()->data('Hello from my chatbot 🤖');
    }
}

You'll need to implement a routeNotificationForBasecamp method on your notifiable model that returns the webhook URL provided by Basecamp 3 for your Chatbot. (Setting up a Basecamp 3 Chatbot)

    public function routeNotificationForBasecamp()
    {
        return 'https://basecamp3.lvh.me';
    }

Messages

Basecamp allows Chatbots to post the following tags table tr td th thead tbody details summary. You may use the following standard HTML tags in rich text content: div, h1, br, strong, em, strike, a (with an href attribute), pre, ol, ul, li, and blockquote.

This package provides helpers for a simple message, and details/summary messages.

Simple message

 CampfireMessage::create()->data("It Doesn't Have To Be Crazy At Work");

Summary w/ details

The summary will show and the details will be hidden unless clicked. This is good for displaying messages that might have long stack traces etc.

CampfireMessage::create()
  ->summary('This is the text/markup used as the summary')
  ->details('This is the text/markup that is hidden unless clicked on in the UI');

Testing

composer test

License

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

Star History Chart