Anonymous
Как транслировать в разные приложения с помощью Laravel Reverb?
Сообщение
Anonymous » 14 мар 2025, 19:25
У меня есть проблема с настройкой нескольких приложений для Laravel Reverb. Только 1 приложение слушает трансляцию, но другое не так.
Код: Выделить всё
'connections' => [
'pusher' => [
'driver' => 'pusher',
'key' => env('PUSHER_APP_KEY'),
'secret' => env('PUSHER_APP_SECRET'),
'app_id' => env('PUSHER_APP_ID'),
'options' => [
// 'cluster' => env('PUSHER_APP_CLUSTER'),
'encrypted' => env('PUSHER_ENCRYPTED'),
'host' => env('PUSHER_HOST', 'pusher.runcloud.io'),
'port' => env('PUSHER_PORT', 443),
'scheme' => env('PUSHER_SCHEME', 'https'),
],
],
< /code>
.env
REVERB_APP_ID=app
REVERB_APP_KEY=app_key
REVERB_APP_SECRET=app_secret
REVERB_HOST=laravel-reverb.test
REVERB_PORT=8080
REVERB_SCHEME=https
< /code>
и мой Reverb.php < /p>
'apps' => [
'provider' => 'config',
'apps' => [
[
'key' => env('REVERB_APP_KEY'),
'secret' => env('REVERB_APP_SECRET'),
'app_id' => env('REVERB_APP_ID'),
'options' => [
'host' => env('REVERB_HOST'),
'port' => env('REVERB_PORT', 443),
'scheme' => env('REVERB_SCHEME', 'https'),
'useTLS' => env('REVERB_SCHEME', 'https') === 'https',
],
'allowed_origins' => ['*'],
'ping_interval' => env('REVERB_APP_PING_INTERVAL', 60),
'activity_timeout' => env('REVERB_APP_ACTIVITY_TIMEOUT', 30),
'max_message_size' => env('REVERB_APP_MAX_MESSAGE_SIZE', 10_000),
], [
'key' => 'dev_' . env('REVERB_APP_KEY'),
'secret' => 'dev_' .env('REVERB_APP_SECRET'),
'app_id' => 'dev_' .env('REVERB_APP_ID'),
'options' => [
'host' => env('REVERB_HOST'),
'port' => env('REVERB_PORT', 443),
'scheme' => env('REVERB_SCHEME', 'https'),
'useTLS' => env('REVERB_SCHEME', 'https') === 'https',
],
'allowed_origins' => ['*'],
'ping_interval' => env('REVERB_APP_PING_INTERVAL', 60),
'activity_timeout' => env('REVERB_APP_ACTIVITY_TIMEOUT', 30),
'max_message_size' => env('REVERB_APP_MAX_MESSAGE_SIZE', 10_000),
],
],
< /code>
Поэтому я настраиваю своих клиентов, как < /p>
reverb_Test = new Echo({
broadcaster: 'pusher',
key: 'app_key',
wsHost: 'laravel-reverb.test',
wsPort: '8080',
wssPort: '8080',
encrypted: true,
disableStats: true
})
reverb_Test_Two = new Echo({
broadcaster: 'pusher',
key: 'dev_app_key',,
wsHost: 'laravel-reverb.test',
wsPort: '8080',
wssPort: '8080',
encrypted: true,
disableStats: true
})
reverb_Test.channel('delivery')
.listen('deliver', (e) => {
console.log(e);
});
reverb_Test_Two.channel('delivery')
.listen('deliver', (e) => {
console.log(e);
});
< /code>
И я тестирую свою трансляцию так ... < /p>
Broadcast::on('delivery')
->toOthers()
->sendNow();
Broadcast::on('delivery')
->sendNow();
Когда я транслировался, я получил только эти события на Reverb_test клиент, и ничего на Reverb_test_two Client.
Лучше всего отметить, что оба клиента успешно подписаны на доставку wanless , но только reverb_test pre> Why Reverb_test Preverb_test prefer Perform Perform pured pured prefer prefer reverb_test. что? и как я могу получить на обоих клиентов или, если я могу выбрать, какое приложение я хочу транслировать.
Подробнее здесь:
https://stackoverflow.com/questions/791 ... vel-reverb
1741969544
Anonymous
У меня есть проблема с настройкой нескольких приложений для Laravel Reverb. Только 1 приложение слушает трансляцию, но другое не так.[code]'connections' => [ 'pusher' => [ 'driver' => 'pusher', 'key' => env('PUSHER_APP_KEY'), 'secret' => env('PUSHER_APP_SECRET'), 'app_id' => env('PUSHER_APP_ID'), 'options' => [ // 'cluster' => env('PUSHER_APP_CLUSTER'), 'encrypted' => env('PUSHER_ENCRYPTED'), 'host' => env('PUSHER_HOST', 'pusher.runcloud.io'), 'port' => env('PUSHER_PORT', 443), 'scheme' => env('PUSHER_SCHEME', 'https'), ], ], < /code> .env REVERB_APP_ID=app REVERB_APP_KEY=app_key REVERB_APP_SECRET=app_secret REVERB_HOST=laravel-reverb.test REVERB_PORT=8080 REVERB_SCHEME=https < /code> и мой Reverb.php < /p> 'apps' => [ 'provider' => 'config', 'apps' => [ [ 'key' => env('REVERB_APP_KEY'), 'secret' => env('REVERB_APP_SECRET'), 'app_id' => env('REVERB_APP_ID'), 'options' => [ 'host' => env('REVERB_HOST'), 'port' => env('REVERB_PORT', 443), 'scheme' => env('REVERB_SCHEME', 'https'), 'useTLS' => env('REVERB_SCHEME', 'https') === 'https', ], 'allowed_origins' => ['*'], 'ping_interval' => env('REVERB_APP_PING_INTERVAL', 60), 'activity_timeout' => env('REVERB_APP_ACTIVITY_TIMEOUT', 30), 'max_message_size' => env('REVERB_APP_MAX_MESSAGE_SIZE', 10_000), ], [ 'key' => 'dev_' . env('REVERB_APP_KEY'), 'secret' => 'dev_' .env('REVERB_APP_SECRET'), 'app_id' => 'dev_' .env('REVERB_APP_ID'), 'options' => [ 'host' => env('REVERB_HOST'), 'port' => env('REVERB_PORT', 443), 'scheme' => env('REVERB_SCHEME', 'https'), 'useTLS' => env('REVERB_SCHEME', 'https') === 'https', ], 'allowed_origins' => ['*'], 'ping_interval' => env('REVERB_APP_PING_INTERVAL', 60), 'activity_timeout' => env('REVERB_APP_ACTIVITY_TIMEOUT', 30), 'max_message_size' => env('REVERB_APP_MAX_MESSAGE_SIZE', 10_000), ], ], < /code> Поэтому я настраиваю своих клиентов, как < /p> reverb_Test = new Echo({ broadcaster: 'pusher', key: 'app_key', wsHost: 'laravel-reverb.test', wsPort: '8080', wssPort: '8080', encrypted: true, disableStats: true }) reverb_Test_Two = new Echo({ broadcaster: 'pusher', key: 'dev_app_key',, wsHost: 'laravel-reverb.test', wsPort: '8080', wssPort: '8080', encrypted: true, disableStats: true }) reverb_Test.channel('delivery') .listen('deliver', (e) => { console.log(e); }); reverb_Test_Two.channel('delivery') .listen('deliver', (e) => { console.log(e); }); < /code> И я тестирую свою трансляцию так ... < /p> Broadcast::on('delivery') ->toOthers() ->sendNow(); Broadcast::on('delivery') ->sendNow(); [/code] Когда я транслировался, я получил только эти события на Reverb_test клиент, и ничего на Reverb_test_two Client. Лучше всего отметить, что оба клиента успешно подписаны на доставку wanless , но только reverb_test pre> Why Reverb_test Preverb_test prefer Perform Perform pured pured prefer prefer reverb_test. что? и как я могу получить на обоих клиентов или, если я могу выбрать, какое приложение я хочу транслировать. Подробнее здесь: [url]https://stackoverflow.com/questions/79185307/how-to-broadcast-to-different-app-using-laravel-reverb[/url]