Exemple #1
0
        public bool Start()
        {
            if (!Directory.Exists(Globals.AppData))
            {
                Directory.CreateDirectory(Globals.AppData);
            }

            appServer.NewSessionConnected += AppServer_NewSessionConnected;
            appServer.SessionClosed       += AppServer_SessionClosed;
            appServer.NewMessageReceived  += AppServer_NewMessageReceived;

            PacketDelegator.Init();

            if (!appServer.Setup(2012))
            {
                return(false);
            }

            if (!appServer.Start())
            {
                return(false);
            }

            Console.WriteLine("WebSockets setup finished");

            bool   newdatabase = false;
            string sqlitefile  = Path.Combine(Globals.AppData, "Database.sqlite3");

            if (!File.Exists(sqlitefile))
            {
                newdatabase = true;
            }

            var stringbuilder = new SQLiteConnectionStringBuilder
            {
                DataSource = sqlitefile
            };

            dbConnection = new SQLiteConnection(stringbuilder.ConnectionString).OpenAndReturn();

            if (newdatabase)
            {
                new DatabaseCreator().CreateDatabase(dbConnection);
            }

            return(true);
        }
Exemple #2
0
        private void AppServer_NewMessageReceived(WebSocketSession session, string value)
        {
            Console.WriteLine("New packet received");
            var reply = "";

            try
            {
                reply = new PacketDelegator().DelegateMessage(this, value);
            }
            catch (DelegatorException ex)
            {
                Console.WriteLine(ex);
                Console.WriteLine("Packet:");
                Console.WriteLine(value);
            }

            if (!string.IsNullOrEmpty(reply))
            {
                session.Send(reply);
            }
        }