Уведомления о трансляции на общедоступный канал с использованием Laravel 5.4 и pusher

Мое уведомление RealtimeNotification.php имеет:

public function via($notifiable)
{
return ['broadcast'];
}

public function toBroadcast($notifiable){
return new BroadcastMessage([
'name' => 'John Snow'
]);
}

На мой взгляд, у меня есть объект-отправитель, который связан с моей учетной записью-отправителем:

var channel = pusher.subscribe('private-App.User.1');
channel.bind('App\\Notifications\\RealtimeNotification', function(data) {
console.log(data);
});

Так что, если я так использую, Pusher выдаст мне эту ошибку в консоли, возможно, потому что это частный канал, я не настроил аутентификацию для Pusher

Failed to load resource: the server responded with a status of 404 (Not Found)
Pusher : Couldn't get auth info from your webapp : 404

У меня вопрос, как я могу транслировать на общедоступный канал?

В документации Laravel 5.4 говорится:
«Уведомления будут транслироваться на частном канале, отформатированном с использованием соглашения {notifiable}. {Id}».

Я думаю, что есть способ для этого, но я все еще не могу найти его, и любая помощь приветствуется.

1

Решение

Каналы должны быть экземплярами Channel, PrivateChannel или PresenceChannel. Экземпляры Channel представляют публичные каналы, на которые может подписаться любой пользователь, в то время как PrivateChannels и PresenceChannels представляют частные каналы, которые требуют авторизации канала …… Как объяснено в официальном документе laravel

1

Другие решения

Других решений пока нет …