PresenceChannels 和 PrivateChannels 之间有什么区别 - LARAVEL 5.8

Ike*_*alu 3 laravel

我正在我的 laravel 应用程序socket.io上运行laravel-echo-server。所以我想知道privateChannels和之间的区别presenceChannels。我觉得在很多情况下(如果不是全部)它们可以互换使用。

例如在我的应用程序中:

  • 在某些情况下,我需要通知某个部门的所有用户。
  • 然后在某些情况下,我需要通知部门内具有某些权限的某些用户。
  • 然后,在某些情况下,我可能需要授予某些用户临时访问某些特定通知等的权限。

Nam*_*hek 5

来自官方文档

存在频道建立在私人频道的安全性之上,同时还提供了了解频道订阅者的附加功能。这使得构建强大的协作应用程序功能变得容易,例如当其他用户正在查看同一页面时通知用户。

换句话说,在线频道本身也是私有频道,但允许每个用户看到同一频道中的其他用户。常见的示例是带有rooms 的聊天应用程序,其中每个房间都是一个频道。

对于您描述的场景,我希望始终使用私人频道。您的描述看起来像是应用程序受到身份验证的保护,这会自动排除公共渠道。由于您也不要求用户查看还有谁收到了通知(至少您没有提及),因此状态通道没有意义。这让我们可以选择使用私人频道。