I am trying to build a real-time chat application, but I am encountering issues connecting to my Reverb server from React. The error message I receive is as follows: runtime.ts:115 WebSocket connection to ‘wss://localhost:8080/app/knycnmdeg1hemq2vnt1i?protocol=7&client=js&version=8.4.0-rc2&flash=false’ failed: .
Could you help me troubleshoot this problem?
Here is my .env
REVERB_APP_ID=147846
REVERB_APP_KEY=knycnmdeg1hemq2vnt1i
REVERB_APP_SECRET=xccoqs0txoecjmjw8ol5
REVERB_HOST="localhost"
REVERB_PORT=8080
REVERB_SCHEME=http
VITE_REVERB_APP_KEY="${REVERB_APP_KEY}"
VITE_REVERB_HOST="${REVERB_HOST}"
VITE_REVERB_PORT="${REVERB_PORT}"
VITE_REVERB_SCHEME="${REVERB_SCHEME}"
BROADCAST_CONNECTION=reverb
Here is my broadcasting.php
<?php
return [
/*
|--------------------------------------------------------------------------
| Default Broadcaster
|--------------------------------------------------------------------------
|
| This option controls the default broadcaster that will be used by the
| framework when an event needs to be broadcast. You may set this to
| any of the connections defined in the "connections" array below.
|
| Supported: "reverb", "pusher", "ably", "redis", "log", "null"
|
*/
'default' => env('BROADCAST_CONNECTION', 'null'),
/*
|--------------------------------------------------------------------------
| Broadcast Connections
|--------------------------------------------------------------------------
|
| Here you may define all of the broadcast connections that will be used
| to broadcast events to other systems or over WebSockets. Samples of
| each available type of connection are provided inside this array.
|
*/
'connections' => [
'reverb' => [
'driver' => 'reverb',
'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',
],
'client_options' => [
// Guzzle client options: https://docs.guzzlephp.org/en/stable/request-options.html
],
],
'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'),
'host' => env('PUSHER_HOST') ?: 'api-'.env('PUSHER_APP_CLUSTER', 'mt1').'.pusher.com',
'port' => env('PUSHER_PORT', 6001),
'scheme' => env('PUSHER_SCHEME', 'https'),
'encrypted' => true,
'useTLS' => env('PUSHER_SCHEME', 'https') === 'https',
],
'client_options' => [
// Guzzle client options: https://docs.guzzlephp.org/en/stable/request-options.html
],
],
'ably' => [
'driver' => 'ably',
'key' => env('ABLY_KEY'),
],
'log' => [
'driver' => 'log',
],
'null' => [
'driver' => 'null',
],
],
];
Here is my echo.ts
import Echo from "laravel-echo";
import Pusher from "pusher-js";
//@ts-ignore
window.Pusher = Pusher;
const echo = new Echo({
broadcaster: 'reverb',
key: "knycnmdeg1hemq2vnt1i",
wsHost: "localhost",
wsPort: 8080,
wssPort: 8080,
forceTLS: 'http',
enabledTransports: ['ws', 'wss'],
});
export default echo;
I was trying to install various packages, but none of them worked for me. Can you help me troubleshoot this issue?
2
Answers
I’m currently having this same issue with reverb and nextjs
I am currently facing an issue with Laravel 11 where I experience reverb or repeated responses when making requests via Postman. I’ve tried troubleshooting this, but haven’t found a solution yet. Has anyone else encountered this problem? Any advice or solutions would be greatly appreciated.