laravel-echo-server не прослушивает все уведомления

Я хочу сделать уведомление в реальном времени в моем приложении. Я использую Laravel Broadcast Notification, Laravel Echo и Laravel Echo Server. В моем приложении при локальном уведомлении прослушиваются все пользователи, но на сервере, если уведомление добавлено для 5 пользователей, затем прослушивается от 2 до 3 пользователей, в противном случае пользователи сохраняют журнал в файле laravel.log.,

КОД

// файл контроллера

$users = User::whereHas('dealerRoles', function ($query) {
                $query->where('name', DealerRole::DEALERSHIP_DIRECTOR);
                $query->orWhere('name', DealerRole::DEALERSHIP_PRINCIPAL);
                $query->orWhere('name', DealerRole::DEALERSHIP_MANAGER);
            })->whereHas('dealerships', function ($query) use ($listing) {
                $query->where('dealerships.id', $listing->owner_id);
            })->get();

            \Notification::send($users, (new ListingApproved($listing)));

// файл уведомления (ListingApproved.php)

class ListingApproved extends Notification implements ShouldQueue{
use Queueable;

private $listing;

/**
 * Create a new notification instance.
 *
 * @return void
 */
public function __construct(Listing $listing)
{
    $this->listing = $listing;
}

/**
 * Get the notification's delivery channels.
 *
 * @param  mixed  $notifiable
 * @return array
 */
public function via($notifiable)
{
    return ['database', 'broadcast'];
}

public function toArray($notifiable)
{
    return [
        'listing_id' => $this->listing->id,
        'message' => 'Your Listing has been approved Successfully.'
    ];
}

}

// laravel-echo-server.json

{
"authHost": ["http://dealers.cc/", "http://admin.videocarsales.cc/"],
"authEndpoint": "/broadcasting/auth",
"clients": [
    {
        "appId": "31071dab508dc1bb",
        "key": "8262eb7c6589432f457ad25b83d4cb5a"
    }
],
"database": "redis",
"databaseConfig": {
    "redis": {},
    "sqlite": {
        "databasePath": "/database/laravel-echo-server.sqlite"
    }
},
"devMode": true,
"host": null,
"port": "7878",
"protocol": "http",
"socketio": {},
"sslCertPath": "",
"sslKeyPath": "",
"sslCertChainPath": "",
"sslPassphrase": "",
"apiOriginAllow": {
    "allowCors": true,
    "allowOrigin": "http://localhost:80",
    "allowMethods": "GET, POST",
    "allowHeaders": "Origin, Content-Type, X-Auth-Token, X-Requested-With, Accept, Authorization, X-CSRF-TOKEN, X-Socket-Id"
}

}

// интерфейс для уведомления о прослушивании

Echo.private('App.Domain.User.User.' + '{{ auth()->user()->id }}')
            .notification((notification) => {
                console.log('yes');
                Messenger().post({
                    message: 'Your Listing las been approved Successfully.',
                    type: 'success',
                    showCloseButton: true
                });
            });

//laravel.log

[2018-06-13 08:13:09] production.INFO: Broadcasting [Illuminate\Notifications\Events\BroadcastNotificationCreated] on channels [private-App.Domain.User.User.49] with payload:
{
"listing_id": 1,
"message": "Your Listing has been approved Successfully.",
"id": "acb1f428-0116-43a4-88cd-53e35089084a",
"type": "App\\Notifications\\ListingApproved",
"socket": null}

Помогите мне, пожалуйста. Заранее спасибо!

0 ответов

Другие вопросы по тегам