private void Connect() { var factory = new DefaultWampChannelFactory(); _channel = factory.CreateJsonChannel(_serverAddress, "mtcrossbar"); var tries = 0; while (!_channel.RealmProxy.Monitor.IsConnected) { try { tries++; LogInfo($"Trying to connect to server {_serverAddress }..."); _channel.Open().Wait(); } catch (Exception ex) { LogError(ex); if (tries > 5) { throw; } LogInfo("Retrying in 5 sec..."); } } LogInfo($"Connected to server {_serverAddress}"); _realmProxy = _channel.RealmProxy; _service = _realmProxy.Services.GetCalleeProxy <IRpcMtFrontend>(); // Subscribe Notifications _notificationSubscription = _realmProxy.Services.GetSubject <NotifyResponse>($"user.updates.{_notificationId}").Subscribe(NotificationReceived); }
public void Connect(ClientEnv env) { SetEnv(env); var factory = new DefaultWampChannelFactory(); _channel = factory.CreateJsonChannel(_serverAddress, "mtcrossbar"); while (!_channel.RealmProxy.Monitor.IsConnected) { try { Console.WriteLine($"Trying to connect to server {_serverAddress}..."); _channel.Open().Wait(); } catch { Console.WriteLine("Retrying in 5 sec..."); Thread.Sleep(5000); } } Console.WriteLine($"Connected to server {_serverAddress}"); _realmProxy = _channel.RealmProxy; _service = _realmProxy.Services.GetCalleeProxy <IRpcMtFrontend>(); }