Deploy
All checks were successful
Local Deploy with Docker / build-and-deploy (push) Successful in 6s
All checks were successful
Local Deploy with Docker / build-and-deploy (push) Successful in 6s
This commit is contained in:
parent
950bed61e3
commit
ed4c493574
29
Program.cs
29
Program.cs
@ -1,10 +1,10 @@
|
||||
using System;
|
||||
using System.Data;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using Telegram.Bot;
|
||||
using Telegram.Bot.Types;
|
||||
using Telegram.Bot.Types.Enums;
|
||||
using Telegram.Bot.Types.ReplyMarkups;
|
||||
using Dapper;
|
||||
using Npgsql;
|
||||
|
||||
@ -18,25 +18,32 @@ class Program
|
||||
static async Task Main(string[] args)
|
||||
{
|
||||
Console.WriteLine("Bot is running...");
|
||||
botClient.StartReceiving(UpdateHandler, ErrorHandler);
|
||||
|
||||
Console.ReadLine();
|
||||
// Управление токеном завершения
|
||||
var cts = new CancellationTokenSource();
|
||||
Console.CancelKeyPress += (_, _) => cts.Cancel();
|
||||
|
||||
botClient.StartReceiving(UpdateHandler, ErrorHandler, cancellationToken: cts.Token);
|
||||
|
||||
Console.WriteLine("Press Ctrl+C to exit...");
|
||||
await Task.Delay(Timeout.Infinite, cts.Token);
|
||||
}
|
||||
|
||||
private static async Task UpdateHandler(ITelegramBotClient bot, Update update, CancellationToken cancellationToken)
|
||||
{
|
||||
Console.WriteLine($"Start recieveing");
|
||||
Console.WriteLine("Received an update");
|
||||
|
||||
if (update.Type == UpdateType.Message && update.Message?.Text != null)
|
||||
{
|
||||
var message = update.Message;
|
||||
|
||||
if (message.Text.StartsWith("/help"))
|
||||
{
|
||||
await bot.SendMessage(message.Chat.Id, "Уйди. Попробуйте /reg", cancellationToken: cancellationToken);
|
||||
await bot.SendTextMessageAsync(message.Chat.Id, "Уйди. Попробуйте /reg", cancellationToken: cancellationToken);
|
||||
}
|
||||
if (message.Text.StartsWith("/reg"))
|
||||
else if (message.Text.StartsWith("/reg"))
|
||||
{
|
||||
await RegisterUser(message);
|
||||
await RegisterUser(message, cancellationToken);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -45,7 +52,7 @@ class Program
|
||||
}
|
||||
}
|
||||
|
||||
private static async Task RegisterUser(Message message)
|
||||
private static async Task RegisterUser(Message message, CancellationToken cancellationToken)
|
||||
{
|
||||
try
|
||||
{
|
||||
@ -64,18 +71,18 @@ class Program
|
||||
|
||||
if (rowsAffected > 0)
|
||||
{
|
||||
await botClient.SendTextMessageAsync(message.Chat.Id, "Вы успешно зарегистрированы!");
|
||||
await botClient.SendTextMessageAsync(message.Chat.Id, "Вы успешно зарегистрированы!", cancellationToken: cancellationToken);
|
||||
}
|
||||
else
|
||||
{
|
||||
await botClient.SendTextMessageAsync(message.Chat.Id, "Вы уже зарегистрированы.");
|
||||
await botClient.SendTextMessageAsync(message.Chat.Id, "Вы уже зарегистрированы.", cancellationToken: cancellationToken);
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Console.WriteLine($"Error: {ex.Message}");
|
||||
await botClient.SendTextMessageAsync(message.Chat.Id, "Произошла ошибка при регистрации. Попробуйте позже.");
|
||||
await botClient.SendTextMessageAsync(message.Chat.Id, "Произошла ошибка при регистрации. Попробуйте позже.", cancellationToken: cancellationToken);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user