Needs redis server, required env NODE_ENV, NODE_PORT, REDIS_HOST, REDIS_PORT, REDIS_USER, REDIS_PASS
npm run build
npm run dev
npm run test
npm startNeeds channel prefix laravel.event.[(a-zA-Z|0-9)] so that it won't clash with other channels.
/**
* Get the channels the event should broadcast on.
*
* @return \Illuminate\Broadcasting\PrivateChannel
*/
public function broadcastOn()
{
return new PrivateChannel('laravel.event.'.$this->order->id);
} // Example codes to trigger events
/**
* Namespace is
* Note: Namespace is dynamic can be named anything and it's required
* https://<domain>/root
*/
// trigger server-side events
socket.emit("join:room", { room: "room_name", payload: string|object });
socket.emit("leave:room", { room: "room_name", payload: string|object });
// custom Events
socket.emit("trigger", { room: "room_name", event: "event_name", payload: string|object});
// register events on client-side
socket.on("join:room", callback(payload) => {});
socket.on("leave:room", callback(payload) => {});
socket.on("event_name", callback(payload) => {});