Ejemplo n.º 1
0
        private bool GetServerData()
        {
            bool ServerDataFound = false;

            tServerRow = cf.LoadDataRow(Asgard.AsgardCon, $"SELECT * FROM sync.server WHERE name='{tName}'");
            if (tServerRow != null)
            {
                if (tServerRow["name"].ToString() != string.Empty)
                {
                    tServerType     = (Servertype)Enum.Parse(typeof(Servertype), tServerRow["server_type"].ToString(), true);
                    tDescription    = tServerRow["Description"].ToString().Trim();
                    tServiceName    = tServerRow["service_name"].ToString().Trim();
                    tServiceType    = (Servicetype)Enum.Parse(typeof(Servicetype), tServerRow["service_type"].ToString(), true);
                    tURL            = tServerRow["url"].ToString().Trim();
                    tStatus         = (Serverstatus)Enum.Parse(typeof(Serverstatus), tServerRow["status"].ToString(), true);
                    tLastChanged    = tServerRow.Field <DateTime>("last_status_change");
                    tLastChecked    = tServerRow.Field <DateTime>("last_status_check");
                    tLogHistoryDays = tServerRow.Field <Int32>("log_history_days");
                    tSessionID      = tServerRow["sessionID"].ToString().Trim();
                    tLastLogin      = tServerRow.Field <DateTime?>("last_login");
                    tServerResponse = tServerRow["server_response"].ToString().Trim();
                    tActive         = (tServerRow["active"].ToString() == "1");
                    ServerDataFound = true;
                }
            }
            else
            {
                Reset();
            }
            return(ServerDataFound);
        }
Ejemplo n.º 2
0
        private bool UpdateStatus(Server aServer, Serverstatus aNewStatus)
        {
            string CheckTime = DateTime.Now.ToString(Mirror.AxessDateTimeFormat);
            string TQuery    = $"UPDATE sync.server SET last_status_check='{CheckTime}'";

            if (aNewStatus != aServer.Status)
            {
                TQuery += $", last_status_change='{CheckTime}', status='{aNewStatus}'";
                switch (aServer.Name)
                {
                case "Asgard":
                    AsgardModified = true;
                    break;

                case "Buy":
                    BuyModified = true;
                    break;

                case "DataWarehouse":
                    DataWarehouseModified = true;
                    break;

                case "DCI4CRM":
                    DCI4CRMModified = true;
                    break;

                case "DCI4WTP":
                    WTPModified = true;
                    break;

                case "Hilde":
                    MirrorModified = true;
                    break;

                case "OBI4POS":
                    POSModified = true;
                    break;

                case "POSSync":
                    SSModified = true;
                    break;

                case "WTPSI":
                    SIModified = true;
                    break;

                case "Shop":
                    ShopModified = true;
                    break;
                }
                ServerStatusChanged = true;
            }
            TQuery += $" WHERE name='{aServer.Name}'";
            return(CF.ExecuteSQL(Asgard.AsgardCon, TQuery));
        }
Ejemplo n.º 3
0
        public Serverstatus Read(XDocument document)
        {
            XElement root = document.XPathSelectElement("root");

            Serverstatus result = new Serverstatus
            {
                Online          = XElementExtender.ReadBoolean(root, "online"),
                MessageOfTheDay = XElementExtender.ReadString(root, "motd"),
                GameMode        = XElementExtender.ReadString(root, "gameType"),
                MaxPlayers      = XElementExtender.ReadInteger(root, "playerMax"),
                CurrentPlayers  = XElementExtender.ReadInteger(root, "playerOnline"),
                Players         = new PlayerReader().Read(document)
            };

            OutputConsole.PrintVerbose(result, 2);
            return(result);
        }
Ejemplo n.º 4
0
 private void Reset()
 {
     tServerRow      = null;
     tServerType     = Servertype.Unknown;
     tDescription    = string.Empty;
     tServiceName    = string.Empty;
     tServiceType    = Servicetype.Unknown;
     tURL            = string.Empty;
     tStatus         = Serverstatus.Unknown;
     tLastChanged    = DateTime.Now;
     tLastChecked    = DateTime.Now;
     tLogHistoryDays = 90;
     tSessionID      = string.Empty;
     tLastLogin      = null;
     tServerResponse = string.Empty;
     tActive         = false;
 }
Ejemplo n.º 5
0
        private Color StatusColor(Serverstatus aStatus)
        {
            Color ReturnColor = Color.Red;

            switch (aStatus)
            {
            case Serverstatus.Active:
                ReturnColor = Color.Green;
                break;

            case Serverstatus.Server_Failed:
                ReturnColor = Color.Red;
                break;

            case Serverstatus.Service_Failed:
                ReturnColor = Color.PaleVioletRed;
                break;
            }
            return(ReturnColor);
        }
Ejemplo n.º 6
0
        public Serverstatus GetServerStatus()
        {
            Serverstatus tStat = Serverstatus.Unknown;

            if (cf.OpenConn(AsgardCon) == ConnectionState.Open)
            {
                cf.CloseConn(AsgardCon);
                tStat = Serverstatus.Active;
            }
            else
            {
                try
                {
                    AsgardCon.Ping();
                    tStat = Serverstatus.Service_Failed;
                }
                catch { tStat = Serverstatus.Server_Failed; }
            }
            return(tStat);
        }
Ejemplo n.º 7
0
        public Serverstatus CheckStatus()
        {
            PingReply pingReply;

            using (var ping = new Ping())
            {
                pingReply = ping.Send(tURL);
            }
            tLastChecked = DateTime.Now;

            bool isActive = (pingReply.Status == IPStatus.Success);

            tStatus = isActive ? Serverstatus.Active : Serverstatus.Server_Failed;
            if ((isActive && tStatus != Serverstatus.Active) || (!isActive && tStatus != Serverstatus.Server_Failed))
            {
                tLastChanged = DateTime.Now;
                Save();
            }
            return(tStatus);
        }
Ejemplo n.º 8
0
        private void UpdateStatusControls(Serverstatus status)
        {
            serverStatus.Image = status.Online ? style.ServerOnlineImage : style.ServerOfflineImage;

            motdLabel.Visible   = status.Online;
            motdLabel.Font      = new Font(FontLoader.MinecraftFont.Families[0], motdLabel.Font.Size);
            motdLabel.ForeColor = style.FontColor;
            motdLabel.Text      = status.MessageOfTheDay;

            gameModeLabel.Visible   = status.Online;
            gameModeLabel.Font      = new Font(FontLoader.MinecraftFont.Families[0], playersLabel.Font.Size);
            gameModeLabel.ForeColor = style.FontColor;
            gameModeLabel.Text      = status.GameMode;

            playersLabel.Visible   = status.Online;
            playersLabel.Font      = new Font(FontLoader.MinecraftFont.Families[0], playersLabel.Font.Size);
            playersLabel.ForeColor = style.FontColor;
            playersLabel.Text      = $"{status.CurrentPlayers}/{status.MaxPlayers}";

            UpdatePlayerList(status.Players);
        }
Ejemplo n.º 9
0
 public Server(string aName, Servertype aServerType = Servertype.Unknown, string aDescription = "", string aServiceName = "", Servicetype aServiceType = Servicetype.Unknown, string aURL = "", Int32 aLogHistoryDays = 90, bool aActive = true)
 {
     tName = aName;
     if (aServerType != Servertype.Unknown)
     {
         //create new server
         tServerType     = aServerType;
         tDescription    = aDescription;
         tServiceName    = aServiceName;
         tServiceType    = aServiceType;
         tURL            = aURL;
         tStatus         = Serverstatus.Unknown;
         tLastChanged    = DateTime.Now;
         tLastChecked    = DateTime.Now;
         tLogHistoryDays = aLogHistoryDays;
         tSessionID      = string.Empty;
         tLastLogin      = null;
         tServerResponse = string.Empty;
         tActive         = aActive;
     }
     GetServerData();
 }
Ejemplo n.º 10
0
        public Serverstatus GetServerStatus()
        {
            Serverstatus tStat = Serverstatus.Unknown;

            using (Buy_Alta_ComConn)
            {
                if (cf.OpenConn(Buy_Alta_ComConn) == ConnectionState.Open)
                {
                    cf.CloseConn(Buy_Alta_ComConn);
                    tStat = Serverstatus.Active;
                }
                else
                {
                    try
                    {
                        Buy_Alta_ComConn.Ping();
                        tStat = Serverstatus.Service_Failed;
                    }
                    catch { tStat = Serverstatus.Server_Failed; }
                }
            }
            return(tStat);
        }
Ejemplo n.º 11
0
        static void Main(string[] args)
        {
            var dvbServ = new DVBViewerServerApi
            {
                IpAddress = "192.168.2.101",
                User      = "******",
                Port      = 8089
            };

            //Define new SecureString
            var spw = new SecureString();

            var pw = "integrale";

            foreach (char item in pw)
            {
                spw.AppendChar(item);
            }

            //Set the password
            dvbServ.Password = spw;
            pw  = null;
            spw = null;

            try
            {
                var clients = DVBViewerClients.GetDVBViewerClientsAsync().Result;
                var client  = clients.Items[0];
                var test    = ChannelList.GetChannelListAsync().Result;

                //var sw = new Stopwatch();
                //sw.Start();
                //var epgList = EpgList.GetEpgList();
                //sw.Stop();
                //Console.WriteLine($"EPGList with {epgList.Items.Count} entrys. Needed to load {sw.Elapsed.TotalSeconds} seconds.");

                //Gets the Channel 3Sat HD from the server. (Satellite)
                var sat3 = ChannelList.GetChannelList($"{2359890891631983072}").TopGroups[0].Groups[0].Items[0];
                Console.WriteLine($"EPG Channel ID: {sat3.EpgChannelID}");
                Console.WriteLine($"Channelname: {sat3.Name}");

                //Current EPG Title
                var sat3EpgList = sat3.GetEpgListNow();
                //The sat3EpgList.Items.Count is only 1
                Console.WriteLine($"Current Title: {sat3EpgList.Items[0].Title}");

                //alle Timer holen
                var lTimer = TimerList.GetTimerListAsync().Result;
                //ersten Timer auswählen
                var timer0 = lTimer.Items[0];
                //Epg anzeigen
                var epgLTimer = timer0.EpgListAsync.Result;
                Console.WriteLine($"Timer 0: Channel: {timer0.ChannelItem.Name}, Timername: {timer0.Description} has the EPG Description: {epgLTimer.Items[0].Description}");
                Console.WriteLine($"Timer 0: The channel: {timer0.ChannelList.TopGroups[0].Groups[0].Items[0].Name}, currently has the EPG: {timer0.ChannelList.TopGroups[0].Groups[0].Items[0].EpgListNow.Items[0].Title} - {timer0.ChannelList.TopGroups[0].Groups[0].Items[0].EpgListNow.Items[0].Description}");


                var status = Serverstatus.GetServerstatus();

                Console.WriteLine($"Die Rechte sind: {status.Rights}");
            }
            catch (Exception ex)
            {
                if (ex.InnerException == null)
                {
                    Console.WriteLine(ex.Message);
                }
                else
                {
                    Console.WriteLine(ex.InnerException.Message);
                }
            }

            Console.ReadKey();
        }