授权Laravel软件包中的频道

问题描述

我正在开发laravel软件包,需要在其中授权一个私人频道。

在我正常的laravel项目(不是软件包)中,一切正常:

事件SendMessage:

public function broadcastOn()
{
    return new PrivateChannel('chat');
}

在我的route/channel.PHP中,我的操作如下:

broadcast::channel('chat',function ($user) {
    return Auth::check();
});

但是我如何在laravel软件包中授权我的聊天频道?

在我的laravel软件包中,服务提供者具有启动和注册功能,就像routes/web.PHP一样,我知道我们可以注册它,但是如何处理通道?我们可以注册吗?我找不到与此有关的文档。请帮忙。

我正在使用推服务器和laravel echo。

希望您能理解我的问题。我只想知道如何认证我的包裹中的频道。

解决方法

我自己的问题的答案是,我们必须取消注释config/app.php中的一行:

     App\Providers\BroadcastServiceProvider::class,

我在频道上苦苦挣扎,到了这一点,我们不需要在我们的程序包中注册频道或广播服务。

默认情况下,它们是全局启用的。

因此,一切都保持不变,只是取消注释我就可以授权私人频道了。

希望没有人遇到这种麻烦。

干杯。