В моем приложении Laravel я использую Laravel ECHO. В этом я пытаюсь прослушать событие «Толкатель: подписаться» через на метод. Но я ее не происходит. Я могу подписаться, add_memeber, remove_memeber в соответствии с документацией эха laravel. Но я не могу слушать конкретно «Толкатель: подписаться» событие. На самом деле я пытаюсь получить данные из этого события, и я буду манипулировать дальше
window.Echo = new Echo({
broadcaster: 'pusher',
key: 'myKeyHere',
authEndpoint: 'pusher/auth',
auth: {
headers: {
},
params: {
username: this.username
}
}
});window.Echo.join('openChat').here((users) => {
console.log(users);
}).listen('MessagePublished', (e) => {
console.log('Message Received');
}).on('pusher:subscribe', (users) => {
console.log('NOT WORKING');
}).joining((user) => {
console.log('User Joined');
}).leaving((user) => {
console.log('User gone');
});
После глубокого просмотра документов и форумов я понял, pusher:subscribe
это внутреннее событие, поэтому оно не может быть записано через Laravel ECHO
, Но я использовал pusher:subscription_succeeded
чтобы получить информацию об участнике ..
Модифицированный код:
window.Echo = new Echo({
broadcaster: 'pusher',
key: 'myKeyHere',
authEndpoint: 'pusher/auth',
auth: {
headers: {
},
params: {
username: this.username
}
}
});window.Echo.join('openChat').here((users) => {
console.log(users);
}).listen('MessagePublished', (e) => {
console.log('Message Received');
}).on('pusher:subscription_succeeded', (member) => {
console.log(member);
}).joining((user) => {
console.log('User Joined');
}).leaving((user) => {
console.log('User gone');
});
Других решений пока нет …