private void Stop()
        {
            //stop other tasks here

            if (altmon != null)
            {
                altmon.Stop();
                altmon = null;
            }

            //accgrpsmon.Stop();

            foreach (ExpanderMonitor expmon in expander_monitors)
            {
                expmon.Stop();
            }

            foreach (PanelMonitor pnlmon in panel_monitors)
            {
                pnlmon.Stop();
            }

            server_active = false;

            ErrorLogManager.AppendLog("Server Stopped", true);
        }
        private void Start()
        {
            foreach (ExpanderMonitor expmon in expander_monitors)
            {
                expmon.Start();
            }

            foreach (PanelMonitor pnlmon in panel_monitors)
            {
                pnlmon.Start();
            }

            //accgrpsmon = new AccessControlGroupMonitor(control_groups);
            //accgrpsmon.Start();

            altmon = new AltMonitor(expander_monitors[0], panel_monitors, dbconnprop, "default");
            altmon.Start();

            //start other tasks here

            server_active = true;

            ErrorLogManager.AppendLog("Server Started", true);
        }