 (34).png)
Kullanıcılarınıza anlık bildirimler göndermek mi istiyorsunuz? Artık sayfa yenilemeden, kullanıcılarınıza gerçek zamanlı olarak ulaşabilirsiniz! Laravel + Pusher ikilisiyle bu işlem çocuk oyuncağı 🎯
Pusher, WebSocket tabanlı bir real-time iletişim servisi. Laravel ile entegrasyonu çok kolay!
✔️ Anlık bildirimler 📨
✔️ Canlı veri güncellemeleri 🔄
✔️ Chat uygulamaları 💬
✔️ Dashboard’larda gerçek zamanlı veri 📊
Önce Pusher’a üye olun ve bir app oluşturun.
Laravel’de Pusher Paketini Yükleyelim:
composer require pusher/pusher-php-server
.env Dosyasını Güncelleyelim:
BROADCAST_DRIVER=pusher PUSHER_APP_ID=your-app-id PUSHER_APP_KEY=your-app-key PUSHER_APP_SECRET=your-app-secret PUSHER_APP_CLUSTER=your-cluster (e.g., mt1, eu)
Laravel’de bildirimler Event sistemine dayanır.
php artisan make:event NewNotification
NewNotification.php:
class NewNotification implements ShouldBroadcast
{
public $message;
public function __construct($message)
{
$this->message = $message;
}
public function broadcastOn()
{
return new Channel('notifications');
}
}
Pusher’ı frontend’e bağlamak için Laravel Echo kullanacağız.
npm install --save laravel-echo pusher-js
resources/js/bootstrap.js:
import Echo from 'laravel-echo';
window.Pusher = require('pusher-js');
window.Echo = new Echo({
broadcaster: 'pusher',
key: process.env.MIX_PUSHER_APP_KEY,
cluster: process.env.MIX_PUSHER_APP_CLUSTER,
encrypted: true
});
window.Echo.channel('notifications')
.listen('NewNotification', (data) => {
console.log('Yeni bildirim:', data.message);
alert(data.message); // Bildirim göster
});
Artık bir Controller veya Command içinden bildirim tetikleyebilirsiniz.
event(new NewNotification("Merhaba! Yeni bir mesajınız var! 📩"));
Kullanıcı tarafında anında görünecek!
public function broadcastOn()
{
return new PrivateChannel('user.' . $this->user->id);
}
Sonuç: Laravel + Pusher = Süper Güçler! 💪
Artık gerçek zamanlı bildirimleri kolayca entegre edebilirsiniz!
Siz de denediniz mi? Yorumlarda tecrübelerinizi paylaşın! 👇💬
#Laravel #Pusher #RealTime #WebDevelopment #WebSockets 🚀