@synchronized должен передавать один и тот же объект каждый раз. Так что @synchronized (self) будет работать лучше всего.
Попробуйте это:
created () {
window.Echo.channel('chat')
.listen('App\\Events\\Chats\\MessageSent', (e) => {
console.log(e);
this.sentMessages.push({
message: e.message.message,
user: e.user
});
});
},
По умолчанию Laravel будет транслировать событие, используя имя класса события. Однако вы можете настроить имя широковещательной рассылки, определив метод широковещательной рассылки для события:
public function broadcastAs()
{
return 'server.created';
}
Вышеуказанная копия была вставлена из Laravel Broadcast Name
blockquote>Моя рекомендация:
Я всегда использовал частные каналы для чата, и вы тоже должны. Читайте здесь, почему