• Reading time ~ 1 min
  • 10.07.2022

The Laravel Notification Channels project now has a Google Chat notification channel for Laravel. This package makes it easy to send notifications using a custom Google chat message channel:

// Create a super simple message
public function toGoogleChat($notifiable)
{
    return GoogleChatMessage::create('An invoice was paid!');
}

You can also do simple formatting and advanced card layouts using the package’s provided classes:

// Simple text formatting and routing to a specific chat room
GoogleChatMessage::create()
    ->text('Someone just paid an invoice... ')
    ->bold('Woo-hoo!')
    ->line('Looking for ')
    ->link(route('invoices'), 'the details?')
    ->to('sales_team'); // ... and route it to specific rooms

// Advanced card layout
GoogleChatMessage::create()
    ->text('Invoice Paid! Here\'s the details:')
    ->card(
        Card::create(
            Section::create(
                KeyValue::create('Amount', '$520.99', '#10004756')
                    ->onClick(route('invoices'))
                    ->button(TextButton::create(route('invoices'), 'View'))
            )
        )
    );

Lastly, this package has the concept of “alternate” rooms, which you can configure to explicitly send messages to a Google chat room instead of the default:

// config/google-chat.php
return [
    'spaces' => [
        'dev_team' => 'https://chat.googleapis.com/dev-team-room?key=xxxxx',
        // ...
    ]
];
// Usage
GoogleChatMessage::create()->to('dev_team')->...

Learn More

You can learn more about this package, get full installation instructions, and view the source code on GitHub. Check out the Laravel Notification Channels documentation for complete setup and usage details.

Comments

No comments yet
Yurij Finiv

Yurij Finiv

Full stack

ABOUT

Professional Fullstack Developer with extensive experience in website and desktop application development. Proficient in a wide range of tools and technologies, including Bootstrap, Tailwind, HTML5, CSS3, PUG, JavaScript, Alpine.js, jQuery, PHP, MODX, and Node.js. Skilled in website development using Symfony, MODX, and Laravel. Experience: Contributed to the development and translation of MODX3 i...

About author CrazyBoy49z
WORK EXPERIENCE
Contact
Ukraine, Lutsk
+380979856297