Одна вещь - это канал id
, а другая - пользователь id
. Идентификаторы каналов и приложений будут использоваться Laravel-Websockets для идентификации того, какое приложение и канал сервер будет отправлять / прослушивать. Идентификатор пользователя полезен для проверки того, определен ли пользователь для доступа к защищенному (частному) каналу.
Если вы хотите прослушать каждое событие, создайте общий канал, а затем на своем веб-сайте подпишитесь на этот общедоступный общий канал, чтобы прослушивать желаемые события, запущенные на этом общем канале.
Обновление
Учитывая ваши фактические требования
Как я уже сказал в своем комментарии, вы можете управлять строкой URL, чтобы вставить ее в Laravel Echo (или в вашу интерфейсную библиотеку WS), чтобы она прослушивала ваши события. Учитывая конечную точку как это:
WSS: //stream.exemplo.com: 9443 / WS / канал @ событие
Вы могли бы:
$string = 'wss://stream.exemplo.com:9443/ws/channel@event';
$segments = explode('/', $string);
/** ['wss:', '', 'stream.exemplo.com:9443', 'ws', 'channel@event'] */
$url = explode(':', $segments[2]);
/** ['stream.exemplo.com', '9443'] */
$event_data = explode('@', $segments[4]);
/** ['channel', 'event'] */
Таким образом, у вас есть все для подключения к вашей интерфейсной библиотеке (appId
, кроме того, как вы сказали, что вы справитесь с этим на своем конце):
$wsHost = $url[0]; // 'stream.exemplo.com'
$wsPort = $url[1]; // '9443'
$channel = $event_data[0]; // 'channel'
$event = $event_data[1]; // 'event'
PS: здесь я использую explode()
помощника php.