Broadcasting with Laravel Echo, laravel-echo-server and socket.io won't work
<p>I've setup websockets with Laravel sucessfully with an own implementation. Now I'd like to switch to Laravel Echo and <a href="https://github.com/tlaverdure/laravel-echo-server" rel="noreferrer">laravel-echo-server</a>. But, after many hours of trying and reading every piece of documentation I could find, I do need further help.</p>

<p>What's happening when I fire an event: The queue worker processes the event as desired: "<em>Processed: Illuminate\Broadcasting\BroadcastEvent</em>". But nothing happens in the laravel-echo-server console nor on the client.</p>

<p>Some information:</p>

<ul>
<li><p>Laravel is running on port 8001</p></li>
<li><p>Redis is running on 6379</p></li>
<li><p>the queue worker is running (php artisan queue:work)</p></li>
<li><p>Laravel, Redis and laravel-echo-server are running on the same machine (192.168.134.214)</p></li>
<li><p>when trying private channels the authentication in the <code>BroadcastServiceProvider</code> seems to work (the server writes errors to the console if it fails)</p></li>
<li><p>the client uses the socket.io script of the laravel-echo-server: <code>&lt;script src="//192.168.134.214:6001/socket.io/socket.io.js"&gt;&lt;/script&gt;</code></p></li>
</ul>

<p>Excerpt of my .env:</p>

<pre><code>BROADCAST_DRIVER=redis
CACHE_DRIVER=redis
SESSION_DRIVER=redis
QUEUE_DRIVER=redis

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
</code></pre>

<p>The laravel-echo-server.json:</p>

<pre><code>{
    "appKey": "&lt;myAppKey&gt;",
    "authEndpoint": "/broadcasting/auth",
    "authHost": "http://localhost:8001",
    "database": "redis",
    "databaseConfig": {
        "redis": {
            "port": "6379",
            "host": "http://localhost"
        }
    },
    "devMode": true,
    "host": "192.168.134.214",
    "port": "6001",
    "sslCertPath": "",
    "sslKeyPath": ""
}
</code></pre>

<p>app.js</p>

<pre><code>import Echo from "laravel-echo"

window.Echo = new Echo({
    broadcaster: 'socket.io',
    host: 'http://192.168.134.214:6001',
});
</code></pre>

<p>app.blade.php</p>

<pre><code>&lt;script&gt;
    Echo.channel('mychan')
        .listen('myevent', (e) =&gt; {
            console.log('Hello World!', e);
        });
&lt;/script&gt;
</code></pre>

<p>Parts of the Event "NewsPublished":</p>

<pre><code>class NewsPublished implements ShouldBroadcast {
    use InteractsWithSockets, SerializesModels;

    public function broadcastOn() {
        return new Channel('mychan');
    }

    public function broadcastAs() {
        return 'myevent';
    }
}
</code></pre>

<p>..and I'm firing the Event with <code>event(new App\Events\NewsPublished());</code></p>

<p>I was hoping to get some information out of the laravel-echo-server when switching "devMode" to <em>true</em>. But that doesn't seem to change anything!</p>