繁体   English   中英

Laravel echo 监听耳语功能不起作用

Laravel echo listen for whisper function not working

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我正在构建一个实时聊天应用程序,但我发现listenforwhisper函数不起作用,但.whisper()函数工作正常,pusher 也收到了客户端输入事件。 在此处输入图片说明

这是我的代码:

听耳语:

Echo.private(`messages.${this.user.id}`)
    .listen("NewMessage", (e) => {
      this.handleIncoming(e.message);
    })
    .listenForWhisper("typing", (e) => {
      if(e.name !='') {
        this.typeStatus = 'typing .........'
      }
      else {
        this.typeStatus = ''
      }
      console.log(this.typeStatus);
    });

对于耳语:

watch: {
    message() {
      Echo.private(`messages.${this.user.id}`)
      .whisper("typing", {
        name: this.message
      });
    }
  }

对于频道:

Broadcast::channel('messages.{id}', function ($user, $id) {
    return (int) $user->id === (int) $id;
});

理论上,我的控制台将返回typeStatus ,但我的控制台中什么也没有。

2 个回复

Whisper 的工作方式类似于 broadcastToOthers。 您现在正在尝试聆听当前用户的窃窃私语。 你应该有一个可以让耳语传来的房间,并且那里应该有多个客户可以接待。 现在您的频道与用户相关联,其他人无法看到通过该频道的消息。

好的,我遇到了同样的问题。 我有 2 个频道和 2 个用户。 我用wisper设置了一个间隔

setInterval(() => {
            channel.whisper('typing', {
                message: 'hola!'
            });
        }, 3000);

channel.listenForWhisper('typing', (e) => {
                console.log('Typing');
                console.log(e);
            })

问题是我正在接收事件但在我将第二个用户连接到频道之前将无法看到 listenForWhisper 的输出。

在此处输入图片说明

连接第二个用户后,它就可以正常工作了。 所以如果你有同样的问题,我就离开了她。

1 Laravel Echo 和 Vue.js 无法收听 Whisper

我正在尝试使用 Laravel Echo 和 Pusher 以及 Laravel websockets 为“打字”事件创建一个侦听器。 我已成功将耳语事件发送到推送器,该事件已成功发送,并且我的推送器控制台显示接收到的事件如下 然而,在接收端,我试图在我的浏览器上显示“用户正在输入”,但 .li ...

2 Laravel回声和耳语

我正在运行echo服务器和redis。 私人频道可完美运作,而我为此建立的讯息则可正常运作。 现在,我正在尝试使耳语也可以用于打字状态,但是没有运气。 耳语是否需要推动器才能起作用? 我在keyup(jquery)上尝试过的 然后我当然会在频道中窃听我的声音: 但是我 ...

3 Laravel回声耳语事件

当当前用户离开/加入频道时,是否有一种耳语事件的方法。 我知道有一个joining()和leaveing()方法,但是此方法检测其他用户是否正在加入/离开。 用户A是否有可能向他要离开的其他用户耳语一个事件。 ...

4 Laravel Echo 和 Whisper,listenForWhisper 不起作用

我正在运行 Echo 服务器和 Beyondcode (Pusher)。 状态通道完美运行,我为它构建的消息传递也有效。 现在我试图让耳语也适用于打字状态,但没有运气。 发送耳语: 听耳语: 在我的回显服务器日志中,当我输入消息时: 广播频道(routes/channels.php) ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2021 STACKOOM.COM