In my laravel application i am using laravel ECHO. In this I'm trying to listen a event "pusher:subscribe" through on method. But I its not happening. I can able to subscribe, add_memeber, remove_memeber as per laravel echo documentation. But i cannot able to listen specifically "pusher:subscribe" event. Actually I am trying to get data from this event and i will manipulate further
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');
});
After a deep lookup in documents and forums i understood pusher:subscribe
is a internal event , so it cannot be captured through Laravel ECHO
. But I used pusher:subscription_succeeded
to capture the member info ..
Modified Code:
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');
});