This package can quickly send alerts to Google Chat. You can use this to notify yourself of any noteworthy events happening in your app.
A hard fork of Laravel Slack Alerts by Spatie
use GuyWarner\GoogleChatAlerts\Facades\GoogleChatAlert;
GoogleChatAlert::message("You have a new subscriber to the {$newsletter->name} newsletter!");
Under the hood, a job is used to communicate with Google Chat. This prevents your app from failing in case Google Chat is down.
Want to send alerts to Slack instead? Check out laravel-slack-alerts.
Want to send alerts to GoogleChat instead? Check out laravel-discord-alerts.
You can install the package via composer:
composer require guywarner/laravel-google-chat-alerts
You can set a GOOGLE_CHAT_ALERT_WEBHOOK
env variable containing a valid Google Chat webhook URL. You can learn how to get a webhook URL [in the Google Chat API docs](https://api.Google Chat.com/messaging/webhooks).
Alternatively, you can publish the config file with:
php artisan vendor:publish --tag="google-chat-alerts-config"
This is the contents of the published config file:
return [
/*
* The webhook URLs that we'll use to send a message to Google Chat.
*/
'webhook_urls' => [
'default' => env('GOOGLE_CHAT_ALERT_WEBHOOK'),
],
/*
* This job will send the message to Google Chat. You can extend this
* job to set timeouts, retries, etc...
*/
'job' => GuyWarner\GoogleChatAlerts\Jobs\SendToGoogleChatChannelJob::class,
];
To send a message to Google Chat, simply call GoogleChatAlert::message()
and pass it any message you want.
GoogleChatAlert::message("You have a new subscriber to the {$newsletter->name} newsletter!");
You can also use an alternative webhook, by specify extra ones in the config file.
// in config/google-chat-alerts.php
'webhook_urls' => [
'default' => 'https://chat.googleapis.com/v1/spaces/XXXX',
'sales' => 'https://chat.googleapis.com/v1/spaces/YYYYYY',
],
The webhook to be used can be chosen using the to
function.
use GuyWarner\GoogleChatAlerts\Facades\GoogleChatAlert;
GoogleChatAlert::to('sales')->message("You have a new subscriber to the {$newsletter->name} newsletter!");
You can format your messages with markup. Learn how in the Google Chat API docs.
use GuyWarner\GoogleChatAlerts\Facades\GoogleChatAlert;
GoogleChatAlert::message("A message *with some bold statements* and _some italicized text_.");
You can use the same emoji codes as in Google Chat. This means custom emoji's are also supported.
use GuyWarner\GoogleChatAlerts\Facades\GoogleChatAlert;
GoogleChatAlert::message("New support ticket. <users/all>");
composer test
Please see CHANGELOG for more information on what has changed recently.
Please see CONTRIBUTING for details.
Please report to warnerdata@gmail.com or via Twitter DM @DigiGuyDev
The MIT License (MIT). Please see License File for more information.