Beispiel #1
0
        private async void StartCommand(object sender, MessageEventArgs e)
        {
            //e.Message.Chat.Type == ChatType.Group
            if (e.Message.Type == MessageType.Text)
            {
                if (e.Message.Text == @"/start")
                {
                    InlineKeyboardMarkup inlineKeyboard;
                    string message;

                    if (!GmailServiceWorker.IsAuth(e.Message.Chat.Id))
                    {
                        inlineKeyboard = new InlineKeyboardMarkup(
                            new[] { InlineKeyboardButton.WithCallbackData("Авторизируйся здесь 📩", "Auth") }
                            );

                        message = "Привет!\nМеня зовут Zoomie!\nЯ создан, чтобы помочь тебе чательнее отслеживать новую информацию о проведении пар на дистанционном обучении!" +
                                  " Чтобы получать уведомления о парах, необходимо подключить почту.";
                    }
                    else
                    {
                        inlineKeyboard = new InlineKeyboardMarkup(
                            new[] { InlineKeyboardButton.WithCallbackData("Авторизовать другую почту ❗", "ReAuth") }
                            );

                        message = $"Ты уже авторизован как {GmailServiceWorker.GetGmailName(e.Message.Chat.Id)}";
                    }

                    await _botClient.SendTextMessageAsync(e.Message.Chat.Id, message, replyMarkup : inlineKeyboard);
                }
            }
        }
Beispiel #2
0
        private async void GetGmailMessagesCommand(object sender, MessageEventArgs e)
        {
            if (e.Message.Type == MessageType.Text)
            {
                if (e.Message.Text.Contains(@"/get_last"))
                {
                    List <string> messages = new List <string>();
                    string[]      param    = e.Message.Text.Split();
                    int           number;

                    if (param.Length > 1 && int.TryParse(param[1], out number))
                    {
                        messages = GmailServiceWorker.GetGmailMessages(number);
                    }
                    else
                    {
                        messages = GmailServiceWorker.GetGmailMessages();
                    }


                    foreach (var message in messages)
                    {
                        await _botClient.SendTextMessageAsync(e.Message.Chat.Id, message);
                    }
                }
            }
        }
Beispiel #3
0
        private async void GetTodayCommand(object sender, MessageEventArgs e)
        {
            if (e.Message.Type == MessageType.Text)
            {
                if (e.Message.Text == @"/get_tomorrow")
                {
                    var now = DateTime.Now;
                    now = now.AddDays(1);

                    List <string> messages = GmailServiceWorker.GetGmailMessages(now);

                    if (messages != null && messages.Count > 0)
                    {
                        foreach (var message in messages)
                        {
                            await _botClient.SendTextMessageAsync(e.Message.Chat.Id, message);
                        }
                    }
                    else
                    {
                        await _botClient.SendTextMessageAsync(e.Message.Chat.Id, "Завтра пар нет! Можно отдохнуть 😴😴😴");
                    }
                }
            }
        }
Beispiel #4
0
        private async void AuthCommand(object sender, CallbackQueryEventArgs e)
        {
            var message = e.CallbackQuery;

            if (message.Data == "Auth")
            {
                GmailServiceWorker.Init(message.Message.Chat.Id);
                GmailServiceWorker.GetService();

                string messageToUser = $"Вы успешно прошли авторизацию, как {GmailServiceWorker.GetGmailName(message.Message.Chat.Id)}";

                await _botClient.SendTextMessageAsync(message.Message.Chat.Id, messageToUser);
            }
            else if (message.Data == "ReAuth")
            {
                GmailServiceWorker.ReInit(message.Message.Chat.Id);
                GmailServiceWorker.GetService();
            }
        }