Laravel Echo 和 Whisper,listenForWhisper 不起作用
Laravel Echo and Whisper, listenForWhisper not work
我是 运行 Echo 服务器和 Beyondcode (Pusher)。状态通道运行完美,我为它构建的消息传递也运行良好。现在我正在尝试让耳语也适用于打字状态,但没有运气。
发送悄悄话:
let channel = Echo.join('chat')
setTimeout( () => {
channel.whisper('typing', {
user: Laravel.user.id,
typing: true
})
}, 300)
听耳语:
Echo.join('chat')
.listenForWhisper('typing', (e) => {
console.log(e)
});
在我的回显服务器日志中,当我输入消息时:
testapp: connection id 332742863.966987392 received message:
{
"event":"client-typing",
"data":{
"user":2,
"typing":true
},
"channel":"presence-chat"
}
广播频道(routes/channels.php)
Broadcast::channel('chat', function ($user) {
return [
'id' => $user->id,
'name' => $user->name
];
});
连接 ID 332742863.966987392 是第二个用户(不是我输入消息的那个用户)。
但浏览器控制台中没有显示任何内容。
留在这里供将来可能在
中接收事件时遇到问题的用户使用
.listenForWhisper(..)
如果您正在使用 laravel-websockets,请确保启用
'enable_client_messages'
我知道这是旧的,但我的问题是我没有从推送应用程序设置中启用一个名为“启用客户端事件”的选项。
我是 运行 Echo 服务器和 Beyondcode (Pusher)。状态通道运行完美,我为它构建的消息传递也运行良好。现在我正在尝试让耳语也适用于打字状态,但没有运气。
发送悄悄话:
let channel = Echo.join('chat')
setTimeout( () => {
channel.whisper('typing', {
user: Laravel.user.id,
typing: true
})
}, 300)
听耳语:
Echo.join('chat')
.listenForWhisper('typing', (e) => {
console.log(e)
});
在我的回显服务器日志中,当我输入消息时:
testapp: connection id 332742863.966987392 received message:
{
"event":"client-typing",
"data":{
"user":2,
"typing":true
},
"channel":"presence-chat"
}
广播频道(routes/channels.php)
Broadcast::channel('chat', function ($user) {
return [
'id' => $user->id,
'name' => $user->name
];
});
连接 ID 332742863.966987392 是第二个用户(不是我输入消息的那个用户)。
但浏览器控制台中没有显示任何内容。
留在这里供将来可能在
中接收事件时遇到问题的用户使用.listenForWhisper(..)
如果您正在使用 laravel-websockets,请确保启用 'enable_client_messages'
我知道这是旧的,但我的问题是我没有从推送应用程序设置中启用一个名为“启用客户端事件”的选项。