Laravel echo socket.io уведомление Vue JS

Я делаю клиент-серверное приложение, и мне нужно отправлять push-уведомления через Интернет.

У меня есть Laravel api в качестве бэкэнда с эхо-сервером laravel с вещателем socket.io и Vue JS и приложением Frontend.

Когда я пытаюсь отправить уведомление из laravel-echo, я вижу журнал сервера сокетов. Подключаюсь через socket.io и толкателем не пользуюсь.

У меня правильное соединение, потому что я могу видеть свой журнал, даже если я вижу, что я нахожусь, потому что в консоли я вижу свой журнал.

import Echo from "laravel-echo"

window.echo = new Echo({
    broadcaster : 'socket.io',
    host        : url_server+"6001"
});

И у меня есть этот код в моем компоненте Vue:

window.echo.private("App.Entities.User.2")
.notification(notification => {
    console.log("notification demo", notification)
});

И это мое уведомление журнала с сервера laravel:

[2017-08-09 16:57:02] local.INFO: Broadcasting 
[Illuminate\Notifications\Events\BroadcastNotificationCreated] on channels 
[private-App.Entities.User.2] with payload:
{
 "title": "Hello from Laravel!",
 "body": "Thank you for using our application.",
 "action_url": "https:\/\/laravel.com",
 "created": "2017-08-09T16:57:02-05:00",
 "id": "b3e037ce-9f4e-43d0-a847-e8623f56412d",
 "type": "App\\Notifications\\ReminderSeller",
 "socket": null
}  

person Jhon Lemmon    schedule 09.08.2017    source источник
comment
Я также столкнулся с этой проблемой. Пожалуйста, поделитесь, если нашли решение.   -  person Junaid Ahmad    schedule 22.08.2017


Ответы (1)


Я думаю, что это проблема с конфигурацией, убедитесь, что конфигурация верна в config / broadcasting.php

'default' => env('BROADCAST_DRIVER', 'redis'),

или установлен в файле .env BROADCAST_DRIVER=redis

person Elio Tohme    schedule 24.08.2017