public async Task EstablishConnection() { var isConnected = await _connection.GetIsConnectedAsync(); if (isConnected) { if (SignalingStatus.IsRegistered) { OnRegistered?.Invoke(); } else { await _connection.RegisterAsync(); } } else { _isConnecting = true; await UpdateStatusAsync(); await _connection.ConnectAsync(); _isConnecting = false; await UpdateStatusAsync(); } }