Example #1
0
        public WebSocketInterface(int port, Session session)
        {
            _session = session;
            var translations = session.Translation;

            _server           = new WebSocketServer();
            _websocketHandler = WebSocketEventManager.CreateInstance();
            var setupComplete = _server.Setup(new ServerConfig
            {
                Name        = "NecroWebSocket",
                Ip          = "Any",
                Port        = port,
                Mode        = SocketMode.Tcp,
                Security    = "tls",
                Certificate = new CertificateConfig
                {
                    FilePath = @"cert.pfx",
                    Password = "******"
                }
            });

            if (setupComplete == false)
            {
                Logger.Write(translations.GetTranslation(TranslationString.WebSocketFailStart, port), LogLevel.Error);
                return;
            }

            _server.NewMessageReceived  += HandleMessage;
            _server.NewSessionConnected += HandleSession;

            _server.Start();
        }
        public WebSocketInterface(int port, Session session)
        {
            _session = session;
            var translations = session.Translation;

            _server           = new WebSocketServer();
            _websocketHandler = WebSocketEventManager.CreateInstance();
            var config = new ServerConfig
            {
                Name             = "NecroWebSocket",
                Mode             = SocketMode.Tcp,
                MaxRequestLength = int.MaxValue,
                Certificate      = new CertificateConfig
                {
                    FilePath = @"cert.pfx",
                    Password = "******"
                },
                Listeners = new List <ListenerConfig>
                {
                    new ListenerConfig
                    {
                        Ip       = "Any",
                        Port     = port,
                        Security = "tls"
                    },
                    new ListenerConfig
                    {
                        Ip       = "Any",
                        Port     = port + 1,
                        Security = "none"
                    }
                }
            };

            var setupComplete = _server.Setup(config);

            if (setupComplete == false)
            {
                Logger.Write(translations.GetTranslation(TranslationString.WebSocketFailStart, port), LogLevel.Error);
                return;
            }

            _server.NewMessageReceived  += HandleMessage;
            _server.NewSessionConnected += HandleSession;

            if (_server.Start())
            {
                Logger.Write(translations.GetTranslation(TranslationString.WebSocketStarted, port, port + 1), LogLevel.Info);
            }
            else
            {
                Logger.Write($"Counld't start socket server at port {port}, this port maybe in use or block, please change config to other port and restart bot if you want to use web gui.", LogLevel.Error);
            }
        }