This package makes it easy to send notifications to Pr0gramm users with Laravel.
You can install the package via composer:
composer require tschucki/laravel-notification-channel-pr0gramm
Next, you must load the service provider if you don't use auto-discovery:
// config/app.php
'providers' => [
// ...
NotificationChannels\Pr0gramm\Pr0grammServiceProvider::class,
],
It is recommended to use the credentials of a bot account, as you will not be able to solve the required captcha. You can read more about the Pr0gramm-API and how to get your credentials here.
Next, you must add your Pr0gramm Credentials in config/services.php
:
// config/services.php
'pr0gramm' => [
'username' => env('PR0GRAMM_USERNAME'),
'password' => env('PR0GRAMM_PASSWORD'),
],
In every model you wish to be notifiable via Pr0gramm, you must add a getPr0grammName
method that returns the name of
the user on Pr0gramm.
// app/Models/User.php
public function getPr0grammName(): string
{
return $this->pr0grammName;
}
You can now use the channel in your via()
method inside the notification (You can also use 'pr0gramm'
as channel
name)):
use NotificationChannels\Pr0gramm\Pr0grammChannel;
public function via($notifiable)
{
return [Pr0grammChannel::class];
}
Next, you must add a toPr0gramm
method to your notification containing the message you wish to send to the user:
public function toPr0gramm($notifiable): string
{
return 'Message from Laravel';
}
NOTE - RATE LIMIT: As the rate limit for sending messages is quite low, you will probably run into the
Pr0grammRateLimitReached
-Exception.You can handle this exception through your try catch block or when using the queue driver by adding a
failed
-method
That's it, you're ready to go!
Please see CHANGELOG for more information what has changed recently.
$ composer test
If you discover any security related issues, please email info@marcelwagner.dev instead of using the issue tracker.
Please see CONTRIBUTING for details.
The MIT License (MIT). Please see License File for more information.