guywarner / laravel-google-chat-alerts
Send a message to GoogleChat
Installs: 23 476
Dependents: 0
Suggesters: 0
Security: 0
Stars: 53
Watchers: 2
Forks: 33
Open Issues: 0
Requires
- php: ^8.0
- illuminate/contracts: ^8.73|^9.0|^10.0|^11.0
- spatie/laravel-package-tools: ^1.9.2
Requires (Dev)
- nunomaduro/collision: ^5.10|^6.0
- orchestra/testbench: ^6.22|^7.0|^8.0
- pestphp/pest: ^1.21
- pestphp/pest-plugin-laravel: ^1.1
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- phpunit/phpunit: ^9.5
- spatie/laravel-ray: ^1.26
This package is auto-updated.
Last update: 2024-10-25 19:03:01 UTC
README
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.
Installation
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, ];
Usage
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!");
Using multiple webhooks
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!");
Formatting
Markdown
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_.");
Messages that @mention all users
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>");
Testing
composer test
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security Vulnerabilities
Please report to warnerdata@gmail.com or via Twitter DM @DigiGuyDev
Credits
License
The MIT License (MIT). Please see License File for more information.