Reconnect
If your connection is lost while you are connected to a room, the app will automatically handle the reconnection process.
You can monitor these events by utilizing the useConnection
hook.
Example hook that logs the current status to the console:
import { useEffect, useRef } from "react";
import {
ConnectionStatus,
useConnection,
} from "@fishjam-cloud/react-native-client";
export function useLogConnectionStatus() {
const prevStatus = useRef<ConnectionStatus>("idle");
const { reconnectionStatus } = useConnection();
useEffect(() => {
if (prevStatus.current === reconnectionStatus) return;
prevStatus.current = reconnectionStatus;
switch (reconnectionStatus) {
case "error":
return console.log("Failed to reconnect");
case "reconnecting":
return console.log("Connection is broken, reconnecting...");
default:
return console.log("Connected successfully");
}
}, [reconnectionStatus]);
}