Example #1
0
        internal static async Task NotifyIfFalseAsync(Tuple <bool?, string, long> r1, string extraInfo,
                                                      TelegramBotAbstract sender)
        {
            if (r1 == null)
            {
                return;
            }

            if (r1.Item1 == null)
            {
                return;
            }

            if (r1.Item1.Value)
            {
                return;
            }

            var error = "Error (notifyIfFalse): ";

            error += "\n";
            error += "String: " + r1?.Item2 + "\n";
            error += "Long: " + r1.Item3 + "\n";
            error += "Extra: " + extraInfo;
            error += "\n";

            var exception = new ExceptionNumbered(error);

            await NotifyOwners(exception, sender);
        }
Example #2
0
        internal static async Task NotifyOwners(ExceptionNumbered exception,
                                                TelegramBotAbstract sender, int v = 0, string extrainfo = null, string langCode = default_lang,
                                                long?replyToMessageId2            = null)
        {
            if (sender == null)
            {
                return;
            }

            string message3;

            try
            {
                message3 = "";
                try
                {
                    message3 += "Number of times: ";
                    message3 += exception.GetNumberOfTimes();
                    message3 += "\n\n";
                }
                catch
                {
                    message3 += "\n\n";
                }

                try
                {
                    message3 += "Message:\n";
                    message3 += exception.Message;
                    message3 += "\n\n";
                }
                catch
                {
                    message3 += "\n\n";
                }

                try
                {
                    message3 += "ExceptionToString:\n";
                    message3 += exception.GetException().ToString();
                    message3 += "\n\n";
                }
                catch
                {
                    message3 += "\n\n";
                }

                try
                {
                    message3 += "StackTrace:\n";
                    message3 += exception.StackTrace;
                }
                catch
                {
                    message3 += "\n\n";
                }

                if (!string.IsNullOrEmpty(extrainfo))
                {
                    message3 += "\n\n" + extrainfo;
                }
            }
            catch (Exception e1)
            {
                message3 = "Error in sending exception: this exception occurred:\n\n" + e1.Message;
            }

            var text = new Language(new Dictionary <string, string>
            {
                { "it", "Eccezione! " + message3 },
                { "en", "Exception! " + message3 }
            });

            var r1 = await NotifyOwners2Async(text, sender, v, langCode, replyToMessageId2);

            if (r1 == null)
            {
                return;
            }
        }