Пример #1
0
        public AlertFunctionResult DefaultAlert(AlertSettings settings)
        {
            AlertFunctionResult functionResult = new AlertFunctionResult();

            functionResult.RanSuccessfully = true;

            foreach (string target in settings.Targets)
            {
                AlertResult result = new AlertResult();
                try
                {
                    Dictionary<string, string> targetSettings = settings.TargetSettings[target];
                    HaleAlertSlackRecipient recipient = CreateRecipient(targetSettings);

                    SlackMessage msg = CreateSlackMessage(recipient, settings);
                    SendSlackMessage(msg, recipient);

                    result.RanSuccessfully = true;
                    result.Message = "OK";
                }
                catch (Exception x)
                {
                   functionResult.RanSuccessfully = result.RanSuccessfully = false;
                   functionResult.FunctionException = result.ExecutionException = x;
                }
                functionResult.AlertResults.Add(target, result);
            }

            

            return functionResult;
        }
        public AlertFunctionResult DefaultAlert(AlertSettings settings)
        {
            var afr = new AlertFunctionResult();
            foreach (var target in settings.Targets)
            {
                var ar = new AlertResult();
                try {
                    var targetSettings = settings.TargetSettings[target];
                    var recipient = new HaleAlertPushbulletRecipient()
                    {
                        AccessToken = targetSettings["accessToken"],
                        Target = targetSettings["target"],
                        TargetType = (PushbulletPushTarget)Enum.Parse(typeof(PushbulletPushTarget),
                            targetSettings["targetType"]),
                        Name = targetSettings["name"],
                        Id = Guid.NewGuid()

                    };
                    var response = _api.Push("Hale Alert", string.Format("{0}\n{1}", settings.SourceString, settings.Message), recipient);

                    ar.Message = response.Type;
                    ar.RanSuccessfully = true;

                }
                catch (Exception x)
                {
                    ar.RanSuccessfully = false;
                    ar.ExecutionException = x;
                }
                afr.AlertResults.Add(target, ar);
            }
            afr.RanSuccessfully = true;
            return afr;
        }
Пример #3
0
 public AlertFunctionResult DefaultAlert(AlertSettings settings)
 {
     var afr = new AlertFunctionResult();
     foreach (var target in settings.Targets) {
         var result = new AlertResult();
         var mbresult = MessageBox.Show(settings.Message, settings.SourceString, MessageBoxButtons.YesNoCancel,
             MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
         result.RanSuccessfully = true;
         result.Message = $"{target} -> {mbresult.ToString()}";
         result.Target = target;
         afr.AlertResults.Add(target, result);
     }
     afr.RanSuccessfully = true;
     return afr;
 }