public static DisconnectMessage Deserialize(string rawMessage)
        {
            DisconnectMessage msg = new DisconnectMessage();
            //  0::
            //  0::/test
            msg.RawMessage = rawMessage;

            string[] args = rawMessage.Split(SPLITCHARS, 3);
            if (args.Length == 3)
            {
                if (!string.IsNullOrWhiteSpace(args[2]))
                    msg.Endpoint = args[2];
            }
            return msg;
        }
Exemple #2
0
        static void Disconnect()
        {
            DisconnectMessage disconnectMessage = new DisconnectMessage()
            {
                SessionId = SessionId
            };

            SendMessage(JsonSerializer.Serialize(disconnectMessage));

            StopReceiveDataThread();

            IsConnecting = false;
            IsConnected  = false;
            SessionId    = string.Empty;
            client.Close();
            client = null;
        }
Exemple #3
0
        internal override MqttMessage Decode(byte[] message)
        {
            DisconnectMessage disconnect = new DisconnectMessage();
            int  index       = 0;
            byte fixedHeader = message[index];

            base.DecodeFixedHeader(fixedHeader);

            int remainingLength = base.DecodeRemainingLength(message);

            if (remainingLength != 0)
            {
                //fault
            }

            return(disconnect);
        }
        public void Disconnect(DisconnectReason reason, string description)
        {
            if (reason == DisconnectReason.ByApplication)
            {
                var message = new DisconnectMessage(reason, description);
                this.TrySendMessage(message);
            }

            try {
                this.socket.Disconnect(true);
                this.socket.Dispose();
            } catch {
                // ignored
            }

            this.Disconnected?.Invoke(this, EventArgs.Empty);
        }
        public void StopStream(Exception exception, IDisconnectMessage disconnectMessage = null)
        {
            lock (_lockStream)
            {
                StopStreamAndUnsubscribeFromEvents();

                if (exception is ITwitterTimeoutException && disconnectMessage == null)
                {
                    disconnectMessage = new DisconnectMessage
                    {
                        Code   = 503,
                        Reason = "Timeout"
                    };
                }

                var streamExceptionEventArgs = new StreamExceptionEventArgs(exception, disconnectMessage);
                this.Raise(StreamStopped, streamExceptionEventArgs);
            }
        }
Exemple #6
0
 public void DisconnectAllPlayers()
 {
     foreach (var connection in ManagerPlayer.Instance.GetPlayers())
     {
         var message = new DisconnectMessage()
         {
             Message  = "Server stopping",
             PlayerId = connection.Value.Player.Id
         };
         message.SetDestinataires(new List <NetConnection>()
         {
             connection.Value.Connection
         });
         ManagerNetwork.Instance.Disconnect(message);
         //connection.Value.Connection.Deny("Server stopped !");
     }
     _connections.Clear();
     ManagerPlayer.Instance.Clear();
 }
Exemple #7
0
        public void Disconnect(DisconnectReason reason, string description)
        {
            if (reason == DisconnectReason.ByApplication)
            {
                var message = new DisconnectMessage(reason, description);
                TrySendMessage(message);
            }

            try
            {
                _socket.Disconnect(true);
                _socket.Dispose();
            }
            catch { }

            if (Disconnected != null)
            {
                Disconnected(this, EventArgs.Empty);
            }
        }
Exemple #8
0
 /// <summary>
 /// The announcement server runs on port 22024/udp and is used to... server announcements to among us players.
 /// </summary>
 /// <param name="master">The plugin's main.</param>
 /// <param name="configFolder">The configuration folder, to store the message identifiers.</param>
 public AnnouncementServer(Class master, string configFolder)
 {
     this.Listener = new UdpConnectionListener(new IPEndPoint(IPAddress.Any, 22024));
     this.Listener.Start();
     this.Listener.NewConnection += Listener_NewConnection;
     this.Master            = master;
     this.Message           = MessageWriter.Get(SendOption.Reliable);
     this.DisconnectMessage = MessageWriter.Get(SendOption.Reliable);
     DisconnectMessage.Write((byte)09);
     this.ConfigPath = Path.Combine(configFolder, "announcement.id");
     this.ReadBuffer = new byte[4];
     if (!File.Exists(ConfigPath))
     {
         IdStream = File.Create(ConfigPath);
         IdStream.Write(GetInt(0), 0, 4);
     }
     else
     {
         IdStream = File.Open(ConfigPath, FileMode.Open, FileAccess.ReadWrite, FileShare.Read);
     }
 }
Exemple #9
0
        public void Disconnect(DisconnectReason reason = DisconnectReason.ByApplication, string description = "Connection terminated by the server.")
        {
            if (reason == DisconnectReason.ByApplication)
            {
                var message = new DisconnectMessage(reason, description);
                TrySendMessage(message);
            }

            try
            {
                _socket.Shutdown(SocketShutdown.Both);
                _socket.Close();
                _socket.Dispose();
            }
            catch { }

            if (Disconnected != null)
            {
                Disconnected(this, EventArgs.Empty);
            }
        }
        protected void OnDisconnect(NetworkConnection connection, DisconnectMessage message)
        {
            //How to handle disconnections?
            if (gamePhase == GamePhase.LOBBY)
            {
                try {
                    players.Remove(connection);
                }
                catch (KeyNotFoundException) {}

                try {
                    viewers.Remove(connection);
                }
                catch (KeyNotFoundException) {}

                SendLobbyUpdate();
            }
            else
            {
                Debug.LogWarning("Disconnections after the lobby phase aren't handled");
            }
        }
        public override void OnClose()
        {
            if (hashId != null)
            {
                var curGame = Games.FirstOrDefault(g => g.ParticipantsHashId.Contains(hashId));
                if (curGame != null)
                {
                    if (curGame.HostHashId == hashId)
                    {
                        Games.Remove(curGame);
                    }
                    else
                    {
                        var gameService       = new GameService(_token);
                        var disconnectMessage = new DisconnectMessage()
                        {
                            GameHashId = curGame.HashId
                        };
                        gameService.DisconnectOfGame(disconnectMessage);

                        dynamic leaveMessage = new JObject();
                        leaveMessage.user_id    = hashId;
                        leaveMessage.match_id   = curGame.HashId;
                        leaveMessage.event_type = 0;

                        foreach (var playerId in curGame.ParticipantsHashId)
                        {
                            clientUser[playerId].Send(leaveMessage.ToString());
                        }
                    }
                }
                if (hashId != null)
                {
                    clientUser.Remove(hashId);
                }
            }
            Clients.Remove(this);
        }
Exemple #12
0
        private void OnConnectQueryMessageRsp(IMessage msg, NetConnection conn)
        {
            var queryMsg = (QueryConnectMessageRsp)msg;

            if (queryMsg.ConnectionType != QueryConnectMessageRsp.ServerType)
            {
                var disMsg = new DisconnectMessage();
                server.SendMessage(disMsg, conn);
            }
            else
            {
                string name    = "TestServerName";
                string ip      = "127.0.0.1";
                string info    = "ext info";
                var    connMsg = new ConnectMessage()
                {
                    Address     = ip,
                    ConnectName = name,
                    Information = info,
                };
                server.SendMessage(connMsg, conn);
            }
        }
Exemple #13
0
        private void Disconnect(DisconnectMessage message)
        {
            Logger.LogDebug($"subscriberId={message.Id} disconnect message received");
            if (!_subscribers.ContainsKey(message.Id))
            {
                return;
            }

            try
            {
                var subscriber = _subscribers[message.Id];
                _subscribers.Remove(message.Id);

                subscriber.Resource.Tell(message);

                Logger.LogDebug(
                    $"subscriberId={message.Id} removed from UpdateDispatcherActor and stream disconnected; subscribersCount={_subscribers.Count}");
            }
            catch (Exception ex)
            {
                Logger.LogError($"failed removing/disconnecting subscriberId={message.Id}", ex);
            }
        }
Exemple #14
0
        public void TestHandleDisconnectNotStarted()
        {
            string uid      = "uid";
            string userName = "******";

            CreateExistingGame();
            JoinGame(uid, userName, ExistingGameName);
            MessagePackets messages = gm.HandleDisconnect(uid);

            List <Player> players = gm.GetPlayers();

            Assert.AreEqual(players.Count, 1);
            CollectionAssert.DoesNotContain(players.Select(p => p.Uid).ToList(), uid);
            Assert.IsFalse(gm.HasEnded());

            Assert.IsTrue(Utils.VerifyMessagePackets(messages, typeof(DisconnectMessage)));

            DisconnectMessage d = (DisconnectMessage)messages.Messages[0].Message;

            Assert.AreEqual(messages.Messages[0].SendTo.Count(), 1);
            Assert.AreEqual(messages.Messages[0].SendTo.Single(), ExistingUid);
            Assert.AreEqual(d.PlayerName, userName);
            Assert.IsFalse(d.ShouldDisableGame);
        }
Exemple #15
0
        protected void Connection_Disconnect(Connection Sender, DisconnectMessage Message)
        {
            // On disconnect, make sure we're invoked on the UI thread
            if (!Dispatcher.CheckAccess())
            {
                Dispatcher.Invoke((Action <Connection, DisconnectMessage>)Connection_Disconnect, Sender, Message);
            }
            else
            {
                Connection.Disconnect -= Connection_Disconnect;

                // Close all windows unless they're the tray icon
                foreach (Window w in Windows)
                {
                    if (w != MainWindow)
                    {
                        if (!w.Dispatcher.CheckAccess())
                        {
                            w.Dispatcher.Invoke((Action)w.Close);
                        }
                        else
                        {
                            w.Close();
                        }
                    }
                }
                // Only hide the tray icon, not close
                MainWindow.Hide();

                // Show the disconnection message
                MessageBox.Show("Lost connection to the server. Will continue trying to connect in the background.");

                // Restart the connection task
                NetTask = Task.Factory.StartNew(NetHandler);
            }
        }
Exemple #16
0
 /// <summary>Called on the client upon disconnecting from a host</summary>
 /// <remarks>
 /// Some memory and ports are freed here.
 /// </remarks>
 /// <param name="message"></param>
 private void OnClientDisconnect(NetworkConnection conn, DisconnectMessage message)
 {
     if (baseClient != null) baseClient.EndSession(hostBridgeEndPoint);
 }
        private void OnConnectionChanged(Codes code, Exception error, string text)
        {
            try
            {
                Message message;

                if (error == null)
                {
                    switch (code)
                    {
                    case Codes.DllConnected:
                    case Codes.QuikConnected:
                        try
                        {
                            bool isAlive;

                            try
                            {
                                isAlive = IsConnectionAlive();
                            }
                            catch
                            {
                                isAlive = false;
                            }

                            GetTerminal().AssignProcess();

                            message = new ConnectMessage
                            {
                                Error = isAlive ? null : new ApiException(code, LocalizedStrings.Str1837)
                            };
                        }
                        catch (Exception ex)
                        {
                            message = new ConnectMessage {
                                Error = ex
                            };
                        }
                        break;

                    case Codes.DllDisconnected:
                        message = new DisconnectMessage();
                        break;

                    case Codes.QuikDisconnected:
                        message = new ConnectMessage {
                            Error = new ApiException(code, text)
                        };
                        break;

                    default:
                        message = new ConnectMessage
                        {
                            Error = new InvalidOperationException(LocalizedStrings.Str1838Params.Put(code))
                        };
                        break;
                    }
                }
                else
                {
                    message = new ConnectMessage {
                        Error = error
                    };
                }

                SendOutMessage(message);
            }
            catch (Exception ex)
            {
                SendOutError(ex);
            }
        }
        public void DisconnectMessageConstructorTest()
        {
            DisconnectMessage target = new DisconnectMessage();

            Assert.Inconclusive("TODO: Implement code to verify target");
        }
        protected override void SetupData()
        {
            base.SetupData();

            _disconnectMessage = new DisconnectMessage(DisconnectReason.ServiceNotAvailable, "Not today!");
        }
Exemple #20
0
 private void OnClientDisconnect(NetworkConnection connection, DisconnectMessage message)
 {
     Debug.Log("Disconnected");
 }
        protected virtual void SetupData()
        {
            Random = new Random();

            _serverEndPoint = new IPEndPoint(IPAddress.Loopback, 8122);
            ConnectionInfo  = new ConnectionInfo(
                _serverEndPoint.Address.ToString(),
                _serverEndPoint.Port,
                "user",
                new PasswordAuthenticationMethod("user", "password"))
            {
                Timeout = TimeSpan.FromSeconds(20)
            };
            _keyExchangeAlgorithm = Random.Next().ToString(CultureInfo.InvariantCulture);
            SessionId             = new byte[10];
            Random.NextBytes(SessionId);
            DisconnectedRegister        = new List <EventArgs>();
            DisconnectReceivedRegister  = new List <MessageEventArgs <DisconnectMessage> >();
            ErrorOccurredRegister       = new List <ExceptionEventArgs>();
            ServerBytesReceivedRegister = new List <byte[]>();
            ServerIdentification        = new SshIdentification("2.0", "OurServerStub");
            _authenticationStarted      = false;
            _disconnectMessage          = new DisconnectMessage(DisconnectReason.ServiceNotAvailable, "Not today!");
            _socketFactory = new SocketFactory();

            Session = new Session(ConnectionInfo, _serviceFactoryMock.Object, _socketFactoryMock.Object);
            Session.Disconnected            += (sender, args) => DisconnectedRegister.Add(args);
            Session.DisconnectReceived      += (sender, args) => DisconnectReceivedRegister.Add(args);
            Session.ErrorOccured            += (sender, args) => ErrorOccurredRegister.Add(args);
            Session.KeyExchangeInitReceived += (sender, args) =>
            {
                var newKeysMessage = new NewKeysMessage();
                var newKeys        = newKeysMessage.GetPacket(8, null);
                ServerSocket.Send(newKeys, 4, newKeys.Length - 4, SocketFlags.None);
            };

            ServerListener            = new AsyncSocketListener(_serverEndPoint);
            ServerListener.Connected += socket =>
            {
                ServerSocket = socket;

                // Since we're mocking the protocol version exchange, we'll immediately stat KEX upon
                // having established the connection instead of when the client has been identified

                var keyExchangeInitMessage = new KeyExchangeInitMessage
                {
                    CompressionAlgorithmsClientToServer = new string[0],
                    CompressionAlgorithmsServerToClient = new string[0],
                    EncryptionAlgorithmsClientToServer  = new string[0],
                    EncryptionAlgorithmsServerToClient  = new string[0],
                    KeyExchangeAlgorithms       = new[] { _keyExchangeAlgorithm },
                    LanguagesClientToServer     = new string[0],
                    LanguagesServerToClient     = new string[0],
                    MacAlgorithmsClientToServer = new string[0],
                    MacAlgorithmsServerToClient = new string[0],
                    ServerHostKeyAlgorithms     = new string[0]
                };
                var keyExchangeInit = keyExchangeInitMessage.GetPacket(8, null);
                ServerSocket.Send(keyExchangeInit, 4, keyExchangeInit.Length - 4, SocketFlags.None);
            };
            ServerListener.BytesReceived += (received, socket) =>
            {
                ServerBytesReceivedRegister.Add(received);

                if (!_authenticationStarted)
                {
                    var serviceAcceptMessage = ServiceAcceptMessageBuilder.Create(ServiceName.UserAuthentication).Build();
                    ServerSocket.Send(serviceAcceptMessage, 0, serviceAcceptMessage.Length, SocketFlags.None);
                    _authenticationStarted = true;
                }
            };

            ServerListener.Start();

            ClientSocket = new DirectConnector(_socketFactory).Connect(ConnectionInfo);
        }
Exemple #22
0
 /// <summary>Called on the server when a client disconnects</summary>
 /// <remarks>
 /// Some memory and ports are freed here.
 /// </remarks>
 /// <param name="message"></param>
 static private void OnServerDisconnect(NetworkConnection conn, DisconnectMessage message)
 {
     OnServerDisconnect(conn);
 }
        protected override void Arrange()
        {
            _disconnectMessage = new DisconnectMessage(DisconnectReason.ServiceNotAvailable, "Not today!");

            base.Arrange();
        }
 public override void HandleMessage(BaseMessage message)
 {
     DisconnectMessage msg = (DisconnectMessage)message;
 }
Exemple #25
0
 public async Task DisconnectAsync()
 {
     DisconnectMessage msg = new DisconnectMessage();
     await channel.SendAsync(msg.Encode());
 }
Exemple #26
0
        private void ProcessInnerAdapterDisconnectMessage(IMessageAdapter innerAdapter, DisconnectMessage message)
        {
            if (message.Error != null)
            {
                SessionHolder.AddErrorLog(LocalizedStrings.Str627Params, innerAdapter.GetType().Name, message.Error);
            }

            Exception error = null;

            var canProcess = _innerAdapters.SyncGet(c =>
            {
                _adapterStates[innerAdapter] = new RefPair <bool, Exception>(false, message.Error);

                if (_canRaiseDisconnected && _adapterStates.Values.All(p => !p.First))
                {
                    _canRaiseConnected    = true;
                    _canRaiseDisconnected = false;

                    var errors = _adapterStates.Values.Where(p => p.Second != null).Select(p => p.Second).ToArray();

                    if (errors.Length != 0)
                    {
                        error = new AggregateException(LocalizedStrings.Str628, errors);
                        ResetConnectionErrors();
                    }

                    DisposeInnerAdapters();

                    return(true);
                }

                return(false);
            });

            if (canProcess)
            {
                SendOutMessage(new DisconnectMessage {
                    Error = error
                });
            }
        }
Exemple #27
0
 public void ChatDisconnect()
 {
     DisconnectMessage msg = new DisconnectMessage();
     //jcm.nickname = ServiceLocator.Get<LoginViewModel>().Nickname;
     chatReceiver.SendToServiceAsync(msg);
 }
Exemple #28
0
 private void HandleMessage(DisconnectMessage message)
 {
     Disconnect(message.ReasonCode, message.Description);
 }
Exemple #29
0
        private void CheckMessageType(string data)
        {
            try
            {
                Tweet tweet = JsonUtility.FromJson <Tweet>(data);
                if (tweet.text != null && tweet.id_str != null)
                {
                    messageType = StreamMessageType.Tweet;
                    return;
                }

                StreamEvent streamEvent = JsonUtility.FromJson <StreamEvent>(data);
                if (streamEvent.event_name != null)
                {
                    messageType = StreamMessageType.StreamEvent;
                    return;
                }

                FriendsList friendsList = JsonUtility.FromJson <FriendsList>(data);
                if (friendsList.friends != null)
                {
                    messageType = StreamMessageType.FriendsList;
                    return;
                }

                DirectMessage directMessage = JsonUtility.FromJson <DirectMessage>(data);
                if (directMessage.recipient_screen_name != null)
                {
                    messageType = StreamMessageType.DirectMessage;
                    return;
                }

                StatusDeletionNotice statusDeletionNotice = JsonUtility.FromJson <StatusDeletionNotice>(data);
                if (statusDeletionNotice.delete != null)
                {
                    messageType = StreamMessageType.StatusDeletionNotice;
                    return;
                }

                LocationDeletionNotice locationDeletionNotice = JsonUtility.FromJson <LocationDeletionNotice>(data);
                if (locationDeletionNotice.scrub_geo != null)
                {
                    messageType = StreamMessageType.LocationDeletionNotice;
                    return;
                }

                LimitNotice limitNotice = JsonUtility.FromJson <LimitNotice>(data);
                if (limitNotice.limit != null)
                {
                    messageType = StreamMessageType.LimitNotice;
                    return;
                }

                WithheldContentNotice withheldContentNotice = JsonUtility.FromJson <WithheldContentNotice>(data);
                if (withheldContentNotice.status_withheld != null || withheldContentNotice.user_withheld != null)
                {
                    messageType = StreamMessageType.WithheldContentNotice;
                    return;
                }

                DisconnectMessage disconnectMessage = JsonUtility.FromJson <DisconnectMessage>(data);
                if (disconnectMessage.disconnect != null)
                {
                    messageType = StreamMessageType.DisconnectMessage;
                    return;
                }

                StallWarning stallWarning = JsonUtility.FromJson <StallWarning>(data);
                if (stallWarning.warning != null)
                {
                    messageType = StreamMessageType.StallWarning;
                    return;
                }

                messageType = StreamMessageType.None;
                return;
            } catch (System.Exception e)
            {
                // Debug.Log("CheckMessageType Error : " + data);  // I'm sick of these messages
                messageType = StreamMessageType.None;
                return;
            }
        }
 protected void OnDisconnect(NetworkConnection connection, DisconnectMessage message) {
     Debug.LogWarning("Lost connection");
 }
Exemple #31
0
        public static void HandleRequestLoadHomePage(INetworkService service, Client.BaseMessage message)
        {
            var data = (RequestLoadHomePage)message;

            if (data.BuildId != Program.BUILD_ID)
            {
                var disconnect = new DisconnectMessage(DisconnectMessage.DisconnectReason.OldVersion);
                service.SendMessage(disconnect);
                return;
            }

            var userData = PlayerManager.GetUserData(data.Username);
            var password = userData?.PasswordMd5;

            if (userData == null || password == null || !Crypto.VerifyPassword(password, data.PasswordEncrypted))
            {
                var disconnect = new DisconnectMessage(DisconnectMessage.DisconnectReason.InvalidUsernameOrPassword);
                service.SendMessage(disconnect);
                return;
            }

            var homePage = new LoadHomePageMessage(false);

            service.UserData = userData;

            var userStats = new UserStatisticsMessage(userData.UserStatistics);

            var settingsInfo = new SettingsInformationMessage(userData.UserSettings);

            var selectionSettings = new SelectionSettingsMessage(userData.UserSelections);

            var userInformation = new UserInformationMessage(
                userData.UserName,
                userData.TownPoints,
                userData.MeritPoints
                );

            var currencyMultiplier = new CurrencyMultiplierMessage(
                userData.TownPointsMultiplier,
                userData.MeritPointsMultiplier
                );

            var activeSpecialEvents = new ActiveSpecialEventsMessage(new List <SpecialEvent>());

            var lastBonusWinTime = new LastBonusWinTimeMessage(userData.LastBonusWinTime);

            var earnedAchievements = new EarnedAchievementsMessage(userData.EarnedAchievements);

            var purchasedCharacters = new PurchasedCharactersMessage(userData.PurchasedCharacters);

            var purchasedHouses = new PurchasedHousesMessage(userData.PurchasedHouses);

            var purchasedBackgrounds = new PurchasedBackgroundsMessage(userData.PurchasedBackgrounds);

            var purchasedPets = new PurchasedPetsMessage(userData.PurchasedPets);

            var friendIds  = userData.FriendIds;
            var friendList = new List <Friend>();

            foreach (var friendId in friendIds)
            {
                var friendData = PlayerManager.GetUserData(friendId);
                if (friendData == null) // ?
                {
                    continue;
                }

                var friendClient = Program.AllConnectedClients.FirstOrDefault(x => x.UserData.UserId == friendData.UserId);
                var friend       = new Friend
                {
                    AccountId = friendData.UserId,
                    OwnsCoven = friendData.UserAccountFlags.OwnsCoven,
                    Status    = friendClient?.Status ?? ActivityStatus.Offline,
                    UserName  = friendData.UserName
                };
                friendList.Add(friend);
            }

            var friendListPacket = new FriendListMessage(friendList);

            var purchasedLobbyIcons = new PurchasedLobbyIconsMessage(userData.PurchasedLobbyIcons);

            var purchasedDeathAnimations = new PurchasedDeathAnimationsMessage(userData.PurchasedDeathAnimations);

            var purchasedScrolls = new PurchasedScrollsMessage(userData.PurchasedScrolls);

            var tutorialStatus = new TutorialStatusMessage(userData.TutorialStatus);

            var activeGameModes = new ActiveGameModesMessage(new[] { 1, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 18, 19 });

            var serverFlags = new ServerFlagsMessage(true);

            var accountFlags = new AccountFlagsMessage(userData.UserAccountFlags);

            var rankedInfo = new RankedInfoUpdateMessage(userData.RankedInformation);

            service.SendMessage(homePage);

            service.SendMultipleMessages(userStats, settingsInfo, selectionSettings, userInformation,
                                         currencyMultiplier, activeSpecialEvents, lastBonusWinTime, earnedAchievements, purchasedCharacters,
                                         purchasedHouses, purchasedBackgrounds, purchasedPets, friendListPacket, purchasedLobbyIcons,
                                         purchasedDeathAnimations, purchasedScrolls, tutorialStatus, activeGameModes, serverFlags, accountFlags,
                                         rankedInfo);
            Thread.Sleep(1000);
            service.SendMessage(new ReturnToHomeMessage());
        }
Exemple #32
0
 private Task Disconnect(DisconnectMessage msg)
 {
     Logger.LogDebug($"resourceActorId={Id} Disconnection message raised for {msg.Id}");
     return(Consumer.OnStreamDisconnected());
 }
Exemple #33
0
 private void OnConnectQueryMessageRsp(IMessage msg, NetConnection conn)
 {
     var queryMsg = (QueryConnectMessageRsp)msg;
     if (queryMsg.ConnectionType != QueryConnectMessageRsp.ServerType)
     {
         var disMsg = new DisconnectMessage();
         server.SendMessage(disMsg, conn);
     }
     else
     {
         string name = "TestServerName";
         string ip   = "127.0.0.1";
         string info = "ext info";
         var connMsg = new ConnectMessage()
         {
             Address     = ip,
             ConnectName = name,
             Information = info,
         };
         server.SendMessage(connMsg, conn);
     }
 }