Example #1
0
        public void AlertsReadoutOnGUI()
        {
            if (Event.current.type == EventType.Layout)
            {
                return;
            }
            if (this.activeAlerts.Count == 0)
            {
                return;
            }
            Alert         alert         = null;
            AlertPriority alertPriority = AlertPriority.Critical;
            bool          flag          = false;
            float         num           = Find.LetterStack.LastTopY - (float)this.activeAlerts.Count * 28f;
            Rect          rect          = new Rect((float)UI.screenWidth - 154f, num, 154f, this.lastFinalY - num);
            float         num2          = GenUI.BackgroundDarkAlphaForText();

            if (num2 > 0.001f)
            {
                GUI.color = new Color(1f, 1f, 1f, num2);
                Widgets.DrawShadowAround(rect);
                GUI.color = Color.white;
            }
            float num3 = num;

            if (num3 < 0f)
            {
                num3 = 0f;
            }
            for (int i = 0; i < this.PriosInDrawOrder.Count; i++)
            {
                AlertPriority alertPriority2 = this.PriosInDrawOrder[i];
                for (int j = 0; j < this.activeAlerts.Count; j++)
                {
                    Alert alert2 = this.activeAlerts[j];
                    if (alert2.Priority == alertPriority2)
                    {
                        if (!flag)
                        {
                            alertPriority = alertPriority2;
                            flag          = true;
                        }
                        Rect rect2 = alert2.DrawAt(num3, alertPriority2 != alertPriority);
                        if (Mouse.IsOver(rect2))
                        {
                            alert = alert2;
                            this.mouseoverAlertIndex = j;
                        }
                        num3 += rect2.height;
                    }
                }
            }
            this.lastFinalY = num3;
            UIHighlighter.HighlightOpportunity(rect, "Alerts");
            if (alert != null)
            {
                alert.DrawInfoPane();
                PlayerKnowledgeDatabase.KnowledgeDemonstrated(ConceptDefOf.Alerts, KnowledgeAmount.FrameDisplayed);
            }
        }
        public void Alert(string bodyMessage, AlertPriority priority)
        {
            if (!_alertingConfiguration.Enable)
            {
                return;
            }

            var client = new RestClient("https://api.opsgenie.com/v2/alerts");

            if (_alertingConfiguration.EnableProxy)
            {
                var proxy = new WebProxy(_alertingConfiguration.ProxyUrl, false);
                if (_alertingConfiguration.EnableProxyAuthentication)
                {
                    proxy.Credentials = new NetworkCredential(_alertingConfiguration.ProxyUsername, _alertingConfiguration.ProxyPassword);
                }
                client.Proxy = proxy;
            }

            var request = new RestRequest(Method.POST);

            request.AddHeader("Authorization", $"GenieKey {_alertingConfiguration.ApiKey}");
            request.AddHeader("Content-Type", "application/json");
            request.AddJsonBody(new { message = bodyMessage, priority = GetOpsGeniePriority(priority) });

            //enable this instead of the above "undefined" if you need it to be P1
            //request.AddParameter("undefined", "{\r\n\t\"message\":\"This is to ignore\",\r\n\t\"priority\":\"P1\"\r\n}", ParameterType.RequestBody);

            IRestResponse response = client.Execute(request);
        }
Example #3
0
 public AlertsReadout()
 {
     AllAlerts.Clear();
     foreach (Type item2 in typeof(Alert).AllLeafSubclasses())
     {
         AllAlerts.Add((Alert)Activator.CreateInstance(item2));
     }
     if (PriosInDrawOrder == null)
     {
         PriosInDrawOrder = new List <AlertPriority>();
         IEnumerator enumerator2 = Enum.GetValues(typeof(AlertPriority)).GetEnumerator();
         try
         {
             while (enumerator2.MoveNext())
             {
                 AlertPriority item = (AlertPriority)enumerator2.Current;
                 PriosInDrawOrder.Add(item);
             }
         }
         finally
         {
             IDisposable disposable;
             if ((disposable = (enumerator2 as IDisposable)) != null)
             {
                 disposable.Dispose();
             }
         }
         PriosInDrawOrder.Reverse();
     }
 }
 public bool HideBySeverity(AlertPriority priority)
 {
     return(!((toolStripMenuItem1.Checked && priority == AlertPriority.Priority1) ||
              (toolStripMenuItem2.Checked && priority == AlertPriority.Priority2) ||
              (toolStripMenuItem3.Checked && priority == AlertPriority.Priority3) ||
              (toolStripMenuItem4.Checked && priority == AlertPriority.Priority4) ||
              (toolStripMenuItem5.Checked && priority == AlertPriority.Priority5) ||
              toolStripMenuItem0.Checked && priority == AlertPriority.Unknown));
 }
        private string GetOpsGeniePriority(AlertPriority priority)
        {
            switch (priority)
            {
            default:
            case AlertPriority.High:
                return("P1");

            case AlertPriority.Low:
                return("P3");
            }
        }
Example #6
0
        public static Icons GetIconFor(AlertPriority priority)
        {
            switch (priority)
            {
            case AlertPriority.Priority1:
                return(Icons.MessagePriority1);

            case AlertPriority.Priority2:
                return(Icons.MessagePriority2);

            case AlertPriority.Priority3:
                return(Icons.MessagePriority3);

            case AlertPriority.Priority4:
                return(Icons.MessagePriority4);

            case AlertPriority.Priority5:
                return(Icons.MessagePriority5);

            default:
                return(Icons.MessageUnknown);
            }
        }
Example #7
0
        public static string GetString(this AlertPriority priority)
        {
            switch (priority)
            {
            case AlertPriority.Priority1:
                return(1.ToString());

            case AlertPriority.Priority2:
                return(2.ToString());

            case AlertPriority.Priority3:
                return(3.ToString());

            case AlertPriority.Priority4:
                return(4.ToString());

            case AlertPriority.Priority5:
                return(5.ToString());

            default:
                return(Messages.UNKNOWN);
            }
        }
Example #8
0
        public static Image GetImage16For(AlertPriority priority)
        {
            var icon = GetIconFor(priority);

            return(icon == Icons.MessageUnknown ? null : GetImage16For(icon));
        }
 public bool HideBySeverity(AlertPriority priority)
 {
     return !((toolStripMenuItem1.Checked && priority == AlertPriority.Priority1)
              || (toolStripMenuItem2.Checked && priority == AlertPriority.Priority2)
              || (toolStripMenuItem3.Checked && priority == AlertPriority.Priority3)
              || (toolStripMenuItem4.Checked && priority == AlertPriority.Priority4)
              || (toolStripMenuItem5.Checked && priority == AlertPriority.Priority5)
              || toolStripMenuItem0.Checked && priority == AlertPriority.Unknown);
 }
Example #10
0
 public static Image GetImage16For(AlertPriority priority)
 {
     var icon = GetIconFor(priority);
     return icon == Icons.MessageUnknown ? null : GetImage16For(icon);
 }
Example #11
0
 public static Icons GetIconFor(AlertPriority priority)
 {
     switch (priority)
     {
         case AlertPriority.Priority1:
             return Icons.MessagePriority1;
         case AlertPriority.Priority2:
             return Icons.MessagePriority2;
         case AlertPriority.Priority3:
             return Icons.MessagePriority3;
         case AlertPriority.Priority4:
             return Icons.MessagePriority4;
         case AlertPriority.Priority5:
             return Icons.MessagePriority5;
         default:
             return Icons.MessageUnknown;
     }
 }
Example #12
0
 public void SetPriority(string name, AlertPriority p)
 {
     AlertByFind.SetPriority(name, p);
     savedAlerts[name].desc.alertPriority = p;
 }
Example #13
0
 public void SetPriority(AlertPriority p)
 {
     defaultPriority = p;
     alertData.desc.alertPriority = p;
 }
Example #14
0
        public void AlertsReadoutOnGUI()
        {
            if (Event.current.type == EventType.Layout || Event.current.type == EventType.MouseDrag || activeAlerts.Count == 0)
            {
                return;
            }
            Alert         alert         = null;
            AlertPriority alertPriority = AlertPriority.Critical;
            bool          flag          = false;
            float         num           = 0f;

            for (int i = 0; i < activeAlerts.Count; i++)
            {
                num += activeAlerts[i].Height;
            }
            float num2 = Find.LetterStack.LastTopY - num;
            Rect  rect = new Rect((float)UI.screenWidth - 154f, num2, 154f, lastFinalY - num2);
            float num3 = GenUI.BackgroundDarkAlphaForText();

            if (num3 > 0.001f)
            {
                GUI.color = new Color(1f, 1f, 1f, num3);
                Widgets.DrawShadowAround(rect);
                GUI.color = Color.white;
            }
            float num4 = num2;

            if (num4 < 0f)
            {
                num4 = 0f;
            }
            for (int j = 0; j < PriosInDrawOrder.Count; j++)
            {
                AlertPriority alertPriority2 = PriosInDrawOrder[j];
                for (int k = 0; k < activeAlerts.Count; k++)
                {
                    Alert alert2 = activeAlerts[k];
                    if (alert2.Priority == alertPriority2)
                    {
                        if (!flag)
                        {
                            alertPriority = alertPriority2;
                            flag          = true;
                        }
                        Rect rect2 = alert2.DrawAt(num4, alertPriority2 != alertPriority);
                        if (Mouse.IsOver(rect2))
                        {
                            alert = alert2;
                            mouseoverAlertIndex = k;
                        }
                        num4 += rect2.height;
                    }
                }
            }
            lastFinalY = num4;
            UIHighlighter.HighlightOpportunity(rect, "Alerts");
            if (alert != null)
            {
                alert.DrawInfoPane();
                PlayerKnowledgeDatabase.KnowledgeDemonstrated(ConceptDefOf.Alerts, KnowledgeAmount.FrameDisplayed);
                CheckAddOrRemoveAlert(alert);
            }
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="Alert"/> class.
 /// </summary>
 /// <param name="message">The message.</param>
 /// <param name="priority">The priority.</param>
 internal Alert(string message, AlertPriority priority)
 {
     Message = message;
     Priority = priority;
     Viewed = false;
 }