如何一次将数据发送到多个通道?(laravel,广播)

Ily*_*nko 1 queue websocket redis laravel laravel-echo

我有一个广播事件,客户端有订阅频道:

/**
* Get the channels the event should broadcast on.
*
* @return PrivateChannel
*/
public function broadcastOn()
{
    return new PrivateChannel("user.{$this->userId}");
}
Run Code Online (Sandbox Code Playgroud)

如何一次将数据发送到多个通道(在 user.1、user.2、user.3 ...上)?

细化,针对特定用户,而不是针对已订阅房间的每个人。

Ily*_*nko 6

我找到了解决方案。

/**
* Get the channels the event should broadcast on.
*
* @return PrivateChannel|array
*/
public function broadcastOn()
{
    return [
        new PrivateChannel("user.{$this->userId}"),
        new PrivateChannel("user.90"),
        new PrivateChannel("user.group.some_group"),
    ];
}
Run Code Online (Sandbox Code Playgroud)