示例#1
0
        /// <summary>
        /// Sends a message to the Pushalot service
        /// </summary>
        /// <param name="title"></param>
        /// <param name="message"></param>
        /// <param name="priority"></param>
        /// <param name="callback"></param>
        void Pushalot(string title, string message, string priority = "high", Action <bool> callback = null)
        {
            var important = false;
            var quiet     = false;

            switch (priority.ToLower())
            {
            case "high":
                important = true;
                break;

            case "quiet":
                quiet = true;
                break;
            }

            var payload = new PushalotMessage {
                Title = title, Body = message, IsImportant = important, IsQuiet = quiet
            };

            if (ErrorHandling(payload))
            {
                callback?.Invoke(false);
                return;
            }

            WebRequest(pushalotUrl, payload.QueryString(), callback);
        }
示例#2
0
        bool ErrorHandling(PushalotMessage payload)
        {
            if (string.IsNullOrEmpty(pushbulletToken) || pushbulletToken.Length != 34)
            {
                LogWarning("Pushbullet access token not set! Please set it and try again");
                return(false);
            }

            if (string.IsNullOrEmpty(payload.Title))
            {
                LogWarning("Title not given! Please enter one and try again");
                return(false);
            }

            if (string.IsNullOrEmpty(payload.Body))
            {
                LogWarning("Body not given! Please enter one and try again");
                return(false);
            }

            return(true);
        }