@Andronron

Как заставить телеграмм бота работать постоянно?

Я написал телеграмм бота и мне надо, чтобы он постоянно ожидал запрос. Сейчас он работает благодаря Console.ReadLine (она не дает ему схопнуть).
Я уверен, что "ридлайн" плохая практика... Что лучше использовать вместо Readline? Может BackgroundService?
  • Вопрос задан
  • 111 просмотров
Пригласить эксперта
Ответы на вопрос 2
vabka
@vabka Куратор тега C#
Токсичный шарпист
Используй Console.Cancelkeypress и TaskCompletionSource, чтобы можно было закрыть нажатием ^C

Примерно так:
var cts = new TaskCompletionSource();
Console.CancelKeyPress += () => cts.SetResult();
await cts.Task;


Либо ты можешь использовать generic host (загугли) с IHostedService

Либо ты можешь перейти на asp net core и начать использовать вебхуки, вместо поллинга

Заворачивать ли это в виндовые сервис, чтобы он автоматом перезапускал при падении и запускал при включении - это на твоё усмотрение.
Ответ написан
Комментировать
Griboks
@Griboks Куратор тега C#
В теории в таких случаях следует использовать планировщик. На практике достаточно while(true) sleep.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы