diff --git a/Console.Advanced/Abstract/ReceiverServiceBase.cs b/Console.Advanced/Abstract/ReceiverServiceBase.cs
index 25ffccd..3a053a7 100644
--- a/Console.Advanced/Abstract/ReceiverServiceBase.cs
+++ b/Console.Advanced/Abstract/ReceiverServiceBase.cs
@@ -39,7 +39,7 @@ public async Task ReceiveAsync(CancellationToken stoppingToken)
DropPendingUpdates = true,
};
- var me = await _botClient.GetMeAsync(stoppingToken);
+ var me = await _botClient.GetMe(stoppingToken);
_logger.LogInformation("Start receiving updates for {BotName}", me.Username ?? "My Awesome Bot");
// Start receiving updates
diff --git a/Console.Advanced/Console.Advanced.csproj b/Console.Advanced/Console.Advanced.csproj
index 88c81aa..74f9ca7 100644
--- a/Console.Advanced/Console.Advanced.csproj
+++ b/Console.Advanced/Console.Advanced.csproj
@@ -11,7 +11,7 @@
-
+
diff --git a/Console.Advanced/README.md b/Console.Advanced/README.md
index aec1012..79c2658 100644
--- a/Console.Advanced/README.md
+++ b/Console.Advanced/README.md
@@ -27,7 +27,7 @@ Make sure that your .csproj contains these items (versions may vary):
```xml
-
+
```
diff --git a/Console.Advanced/Services/UpdateHandler.cs b/Console.Advanced/Services/UpdateHandler.cs
index ea2f350..aeb8c45 100644
--- a/Console.Advanced/Services/UpdateHandler.cs
+++ b/Console.Advanced/Services/UpdateHandler.cs
@@ -59,7 +59,7 @@ private async Task OnMessage(Message msg)
"/throw" => FailingHandler(msg),
_ => Usage(msg)
});
- logger.LogInformation("The message was sent with id: {SentMessageId}", sentMessage.MessageId);
+ logger.LogInformation("The message was sent with id: {SentMessageId}", sentMessage.Id);
}
async Task Usage(Message msg)
@@ -76,15 +76,15 @@ async Task Usage(Message msg)
/poll_anonymous - send an anonymous poll
/throw - what happens if handler fails
""";
- return await bot.SendTextMessageAsync(msg.Chat, usage, parseMode: ParseMode.Html, replyMarkup: new ReplyKeyboardRemove());
+ return await bot.SendMessage(msg.Chat, usage, parseMode: ParseMode.Html, replyMarkup: new ReplyKeyboardRemove());
}
async Task SendPhoto(Message msg)
{
- await bot.SendChatActionAsync(msg.Chat, ChatAction.UploadPhoto);
+ await bot.SendChatAction(msg.Chat, ChatAction.UploadPhoto);
await Task.Delay(2000); // simulate a long task
await using var fileStream = new FileStream("Files/bot.gif", FileMode.Open, FileAccess.Read);
- return await bot.SendPhotoAsync(msg.Chat, fileStream, caption: "Read https://telegrambots.github.io/book/");
+ return await bot.SendPhoto(msg.Chat, fileStream, caption: "Read https://telegrambots.github.io/book/");
}
// Send inline keyboard. You can process responses in OnCallbackQuery handler
@@ -95,7 +95,7 @@ async Task SendInlineKeyboard(Message msg)
.AddNewRow()
.AddButton("WithCallbackData", "CallbackData")
.AddButton(InlineKeyboardButton.WithUrl("WithUrl", "https://github.com/TelegramBots/Telegram.Bot"));
- return await bot.SendTextMessageAsync(msg.Chat, "Inline buttons:", replyMarkup: inlineMarkup);
+ return await bot.SendMessage(msg.Chat, "Inline buttons:", replyMarkup: inlineMarkup);
}
async Task SendReplyKeyboard(Message msg)
@@ -103,12 +103,12 @@ async Task SendReplyKeyboard(Message msg)
var replyMarkup = new ReplyKeyboardMarkup(true)
.AddNewRow("1.1", "1.2", "1.3")
.AddNewRow().AddButton("2.1").AddButton("2.2");
- return await bot.SendTextMessageAsync(msg.Chat, "Keyboard buttons:", replyMarkup: replyMarkup);
+ return await bot.SendMessage(msg.Chat, "Keyboard buttons:", replyMarkup: replyMarkup);
}
async Task RemoveKeyboard(Message msg)
{
- return await bot.SendTextMessageAsync(msg.Chat, "Removing keyboard", replyMarkup: new ReplyKeyboardRemove());
+ return await bot.SendMessage(msg.Chat, "Removing keyboard", replyMarkup: new ReplyKeyboardRemove());
}
async Task RequestContactAndLocation(Message msg)
@@ -116,24 +116,24 @@ async Task RequestContactAndLocation(Message msg)
var replyMarkup = new ReplyKeyboardMarkup(true)
.AddButton(KeyboardButton.WithRequestLocation("Location"))
.AddButton(KeyboardButton.WithRequestContact("Contact"));
- return await bot.SendTextMessageAsync(msg.Chat, "Who or Where are you?", replyMarkup: replyMarkup);
+ return await bot.SendMessage(msg.Chat, "Who or Where are you?", replyMarkup: replyMarkup);
}
async Task StartInlineQuery(Message msg)
{
var button = InlineKeyboardButton.WithSwitchInlineQueryCurrentChat("Inline Mode");
- return await bot.SendTextMessageAsync(msg.Chat, "Press the button to start Inline Query\n\n" +
+ return await bot.SendMessage(msg.Chat, "Press the button to start Inline Query\n\n" +
"(Make sure you enabled Inline Mode in @BotFather)", replyMarkup: new InlineKeyboardMarkup(button));
}
async Task SendPoll(Message msg)
{
- return await bot.SendPollAsync(msg.Chat, "Question", PollOptions, isAnonymous: false);
+ return await bot.SendPoll(msg.Chat, "Question", PollOptions, isAnonymous: false);
}
async Task SendAnonymousPoll(Message msg)
{
- return await bot.SendPollAsync(chatId: msg.Chat, "Question", PollOptions);
+ return await bot.SendPoll(chatId: msg.Chat, "Question", PollOptions);
}
static Task FailingHandler(Message msg)
@@ -145,8 +145,8 @@ static Task FailingHandler(Message msg)
private async Task OnCallbackQuery(CallbackQuery callbackQuery)
{
logger.LogInformation("Received inline keyboard callback from: {CallbackQueryId}", callbackQuery.Id);
- await bot.AnswerCallbackQueryAsync(callbackQuery.Id, $"Received {callbackQuery.Data}");
- await bot.SendTextMessageAsync(callbackQuery.Message!.Chat, $"Received {callbackQuery.Data}");
+ await bot.AnswerCallbackQuery(callbackQuery.Id, $"Received {callbackQuery.Data}");
+ await bot.SendMessage(callbackQuery.Message!.Chat, $"Received {callbackQuery.Data}");
}
#region Inline Mode
@@ -159,13 +159,13 @@ private async Task OnInlineQuery(InlineQuery inlineQuery)
new InlineQueryResultArticle("1", "Telegram.Bot", new InputTextMessageContent("hello")),
new InlineQueryResultArticle("2", "is the best", new InputTextMessageContent("world"))
];
- await bot.AnswerInlineQueryAsync(inlineQuery.Id, results, cacheTime: 0, isPersonal: true);
+ await bot.AnswerInlineQuery(inlineQuery.Id, results, cacheTime: 0, isPersonal: true);
}
private async Task OnChosenInlineResult(ChosenInlineResult chosenInlineResult)
{
logger.LogInformation("Received inline result: {ChosenInlineResultId}", chosenInlineResult.ResultId);
- await bot.SendTextMessageAsync(chosenInlineResult.From.Id, $"You chose result with Id: {chosenInlineResult.ResultId}");
+ await bot.SendMessage(chosenInlineResult.From.Id, $"You chose result with Id: {chosenInlineResult.ResultId}");
}
#endregion
@@ -181,7 +181,7 @@ private async Task OnPollAnswer(PollAnswer pollAnswer)
var answer = pollAnswer.OptionIds.FirstOrDefault();
var selectedOption = PollOptions[answer];
if (pollAnswer.User != null)
- await bot.SendTextMessageAsync(pollAnswer.User.Id, $"You've chosen: {selectedOption.Text} in poll");
+ await bot.SendMessage(pollAnswer.User.Id, $"You've chosen: {selectedOption.Text} in poll");
}
private Task UnknownUpdateHandlerAsync(Update update)
diff --git a/Console/Console.csproj b/Console/Console.csproj
index 140723d..101901a 100644
--- a/Console/Console.csproj
+++ b/Console/Console.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/Console/Program.cs b/Console/Program.cs
index 62879fb..e0abbc5 100644
--- a/Console/Program.cs
+++ b/Console/Program.cs
@@ -9,8 +9,9 @@
using var cts = new CancellationTokenSource();
var bot = new TelegramBotClient(token, cancellationToken: cts.Token);
-var me = await bot.GetMeAsync();
-await bot.DropPendingUpdatesAsync();
+var me = await bot.GetMe();
+await bot.DeleteWebhook(); // you may comment this line if you find it unnecessary
+await bot.DropPendingUpdates(); // you may comment this line if you find it unnecessary
bot.OnError += OnError;
bot.OnMessage += OnMessage;
bot.OnUpdate += OnUpdate;
@@ -58,7 +59,7 @@ async Task OnCommand(string command, string args, Message msg)
switch (command)
{
case "/start":
- await bot.SendTextMessageAsync(msg.Chat, """
+ await bot.SendMessage(msg.Chat, """
Bot menu:
/photo [url] - send a photo (optionally from an url)
/inline_buttons - send inline buttons
@@ -71,13 +72,13 @@ await bot.SendTextMessageAsync(msg.Chat, """
break;
case "/photo":
if (args.StartsWith("http"))
- await bot.SendPhotoAsync(msg.Chat, args, caption: "Source: " + args);
+ await bot.SendPhoto(msg.Chat, args, caption: "Source: " + args);
else
{
- await bot.SendChatActionAsync(msg.Chat, ChatAction.UploadPhoto);
+ await bot.SendChatAction(msg.Chat, ChatAction.UploadPhoto);
await Task.Delay(2000); // simulate a long task
await using var fileStream = new FileStream("bot.gif", FileMode.Open, FileAccess.Read);
- await bot.SendPhotoAsync(msg.Chat, fileStream, caption: "Read https://telegrambots.github.io/book/");
+ await bot.SendPhoto(msg.Chat, fileStream, caption: "Read https://telegrambots.github.io/book/");
}
break;
case "/inline_buttons":
@@ -86,22 +87,22 @@ await bot.SendTextMessageAsync(msg.Chat, """
.AddNewRow()
.AddButton("WithCallbackData", "CallbackData")
.AddButton(InlineKeyboardButton.WithUrl("WithUrl", "https://github.com/TelegramBots/Telegram.Bot"));
- await bot.SendTextMessageAsync(msg.Chat, "Inline buttons:", replyMarkup: inlineMarkup);
+ await bot.SendMessage(msg.Chat, "Inline buttons:", replyMarkup: inlineMarkup);
break;
case "/keyboard":
- var replyMarkup = new ReplyKeyboardMarkup(true)
+ var replyMarkup = new ReplyKeyboardMarkup()
.AddNewRow("1.1", "1.2", "1.3")
.AddNewRow().AddButton("2.1").AddButton("2.2");
- await bot.SendTextMessageAsync(msg.Chat, "Keyboard buttons:", replyMarkup: replyMarkup);
+ await bot.SendMessage(msg.Chat, "Keyboard buttons:", replyMarkup: replyMarkup);
break;
case "/remove":
- await bot.SendTextMessageAsync(msg.Chat, "Removing keyboard", replyMarkup: new ReplyKeyboardRemove());
+ await bot.SendMessage(msg.Chat, "Removing keyboard", replyMarkup: new ReplyKeyboardRemove());
break;
case "/poll":
- await bot.SendPollAsync(msg.Chat, "Question", ["Option 0", "Option 1", "Option 2"], isAnonymous: false, allowsMultipleAnswers: true);
+ await bot.SendPoll(msg.Chat, "Question", ["Option 0", "Option 1", "Option 2"], isAnonymous: false, allowsMultipleAnswers: true);
break;
case "/reaction":
- await bot.SetMessageReactionAsync(msg.Chat, msg.MessageId, ["❤"], false);
+ await bot.SetMessageReaction(msg.Chat, msg.Id, ["❤"], false);
break;
}
}
@@ -118,12 +119,12 @@ async Task OnUpdate(Update update)
async Task OnCallbackQuery(CallbackQuery callbackQuery)
{
- await bot.AnswerCallbackQueryAsync(callbackQuery.Id, $"You selected {callbackQuery.Data}");
- await bot.SendTextMessageAsync(callbackQuery.Message!.Chat, $"Received callback from inline button {callbackQuery.Data}");
+ await bot.AnswerCallbackQuery(callbackQuery.Id, $"You selected {callbackQuery.Data}");
+ await bot.SendMessage(callbackQuery.Message!.Chat, $"Received callback from inline button {callbackQuery.Data}");
}
async Task OnPollAnswer(PollAnswer pollAnswer)
{
if (pollAnswer.User != null)
- await bot.SendTextMessageAsync(pollAnswer.User.Id, $"You voted for option(s) id [{string.Join(',', pollAnswer.OptionIds)}]");
+ await bot.SendMessage(pollAnswer.User.Id, $"You voted for option(s) id [{string.Join(',', pollAnswer.OptionIds)}]");
}
diff --git a/FSharp.Example/FSharp.Example.fsproj b/FSharp.Example/FSharp.Example.fsproj
index 19c1749..80b5741 100644
--- a/FSharp.Example/FSharp.Example.fsproj
+++ b/FSharp.Example/FSharp.Example.fsproj
@@ -20,6 +20,6 @@
-
+
diff --git a/FSharp.Example/Services/Internal/UpdateHandlerFuncs.fs b/FSharp.Example/Services/Internal/UpdateHandlerFuncs.fs
index 74c7914..646f40b 100644
--- a/FSharp.Example/Services/Internal/UpdateHandlerFuncs.fs
+++ b/FSharp.Example/Services/Internal/UpdateHandlerFuncs.fs
@@ -27,7 +27,7 @@ open FSharp.Example.Util
module UpdateHandlerFuncs =
module private BotTextMessages =
let sendInlineKeyboard (botClient:ITelegramBotClient) (logger: ILogger) (cts: CancellationToken) (message:Message) =
- botClient.SendChatActionAsync(
+ botClient.SendChatAction(
chatId = message.Chat.Id,
action = ChatAction.Typing,
cancellationToken = cts) |> Async.AwaitTask |> ignore
@@ -46,7 +46,7 @@ module UpdateHandlerFuncs =
}
}
- botClient.SendTextMessageAsync(
+ botClient.SendMessage(
chatId = message.Chat.Id,
text = "Choose",
replyMarkup = InlineKeyboardMarkup(inlineKeyboard),
@@ -64,7 +64,7 @@ module UpdateHandlerFuncs =
},
ResizeKeyboard = true)
- botClient.SendTextMessageAsync(
+ botClient.SendMessage(
chatId = message.Chat.Id,
text = "Choose",
replyMarkup = replyKeyboardMarkup,
@@ -72,7 +72,7 @@ module UpdateHandlerFuncs =
|> Async.AwaitTask |> Async.Ignore
let removeKeyboard (botClient:ITelegramBotClient) (logger: ILogger) (cts: CancellationToken) (message:Message) =
- botClient.SendTextMessageAsync(
+ botClient.SendMessage(
chatId = message.Chat.Id,
text = "Removing keyboard",
replyMarkup = ReplyKeyboardRemove(),
@@ -80,7 +80,7 @@ module UpdateHandlerFuncs =
|> Async.AwaitTask |> Async.Ignore
let sendFile (botClient:ITelegramBotClient) (logger: ILogger) (cts: CancellationToken) (message:Message) =
- botClient.SendChatActionAsync(
+ botClient.SendChatAction(
message.Chat.Id,
ChatAction.UploadPhoto,
cancellationToken = cts)
@@ -94,7 +94,7 @@ module UpdateHandlerFuncs =
InputFileStream(new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read),
fileName)
- botClient.SendPhotoAsync(
+ botClient.SendPhoto(
chatId = message.Chat.Id,
photo = inputStream,
caption = "Nice Picture",
@@ -109,7 +109,7 @@ module UpdateHandlerFuncs =
},
ResizeKeyboard = true)
- botClient.SendTextMessageAsync(
+ botClient.SendMessage(
chatId = message.Chat.Id,
text = "Who or Where are you?",
replyMarkup = requestReplyKeyboard,
@@ -120,7 +120,7 @@ module UpdateHandlerFuncs =
let inlineKeyboard =
InlineKeyboardMarkup (InlineKeyboardButton.WithSwitchInlineQueryCurrentChat("Inline Mode"))
- botClient.SendTextMessageAsync(
+ botClient.SendMessage(
chatId = message.Chat.Id,
text = "Press the button to start Inline Query",
replyMarkup = inlineKeyboard,
@@ -141,7 +141,7 @@ module UpdateHandlerFuncs =
"/inline_mode - send keyboard with inline query\n" +
"/throw - Simulate a failed bot message handler\n"
- botClient.SendTextMessageAsync(
+ botClient.SendMessage(
chatId = message.Chat.Id,
text = usage,
replyMarkup = ReplyKeyboardRemove(),
@@ -169,9 +169,9 @@ module UpdateHandlerFuncs =
| _ -> async { return () }
let botOnCallbackQueryReceived (botClient:ITelegramBotClient) (logger: ILogger) (cts: CancellationToken) (query:CallbackQuery) =
- botClient.AnswerCallbackQueryAsync(query.Id, $"Received {query.Data}") |> Async.AwaitTask |> ignore
+ botClient.AnswerCallbackQuery(query.Id, $"Received {query.Data}") |> Async.AwaitTask |> ignore
- botClient.SendTextMessageAsync(
+ botClient.SendMessage(
chatId = query.Message.Chat.Id,
text = $"Received {query.Data}",
cancellationToken = cts) |> Async.AwaitTask |> Async.Ignore
@@ -188,7 +188,7 @@ module UpdateHandlerFuncs =
inputMessageContent = InputTextMessageContent("hello"))
}
- botClient.AnswerInlineQueryAsync(inlinequery.Id,
+ botClient.AnswerInlineQuery(inlinequery.Id,
results |> Seq.cast,
isPersonal = true,
cacheTime = 0,
diff --git a/FSharp.Example/Services/ReceiverService.fs b/FSharp.Example/Services/ReceiverService.fs
index 8a641e3..9b555cf 100644
--- a/FSharp.Example/Services/ReceiverService.fs
+++ b/FSharp.Example/Services/ReceiverService.fs
@@ -32,7 +32,7 @@ type ReceiverService<'T when 'T :> IUpdateHandler>(botClient: ITelegramBotClient
)
try
- let! me = botClient.GetMeAsync(cts) |> Async.AwaitTask
+ let! me = botClient.GetMe(cts) |> Async.AwaitTask
let username =
match me.Username with
| null -> "My Awesome Bot"
diff --git a/InlineQueries/InlineQueries.csproj b/InlineQueries/InlineQueries.csproj
index c72ad0e..5ae8935 100644
--- a/InlineQueries/InlineQueries.csproj
+++ b/InlineQueries/InlineQueries.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/InlineQueries/Program.cs b/InlineQueries/Program.cs
index 42fb433..5fb43d7 100644
--- a/InlineQueries/Program.cs
+++ b/InlineQueries/Program.cs
@@ -24,7 +24,7 @@
// start the bot
using var cts = new CancellationTokenSource();
var bot = new TelegramBotClient(token, cancellationToken: cts.Token);
-var me = await bot.GetMeAsync();
+var me = await bot.GetMe();
bot.OnUpdate += OnUpdate;
Console.WriteLine($"Start listening for @{me.Username}");
@@ -73,7 +73,7 @@ async Task OnInlineQuery(ITelegramBotClient botClient, InlineQuery inlineQuery)
});
index++;
}
- await botClient.AnswerInlineQueryAsync(inlineQuery.Id, results);
+ await botClient.AnswerInlineQuery(inlineQuery.Id, results);
}
// for this method to be called, you need to enable "Inline feedback" in BotFather (100% if you want to know all your users choices)
diff --git a/MiniApp/Cafe.cs b/MiniApp/Cafe.cs
index a1cd433..6aab4e4 100644
--- a/MiniApp/Cafe.cs
+++ b/MiniApp/Cafe.cs
@@ -2,7 +2,7 @@
using Telegram.Bot;
using Telegram.Bot.Types.Payments;
-#pragma warning disable CA1305, IDE0059, IDE1006
+#pragma warning disable CA1305, CA1812, CA1852, IDE0059, IDE1006
internal static class Cafe
{
@@ -28,8 +28,8 @@ internal static async Task
\ No newline at end of file
diff --git a/Serverless/AzureFunctions.IsolatedProcess.Webhook/AzureFunctions.IsolatedProcess.Webhook.csproj b/Serverless/AzureFunctions.IsolatedProcess.Webhook/AzureFunctions.IsolatedProcess.Webhook.csproj
index 1bd7ad0..e36477a 100644
--- a/Serverless/AzureFunctions.IsolatedProcess.Webhook/AzureFunctions.IsolatedProcess.Webhook.csproj
+++ b/Serverless/AzureFunctions.IsolatedProcess.Webhook/AzureFunctions.IsolatedProcess.Webhook.csproj
@@ -10,7 +10,7 @@
-
+
diff --git a/Serverless/AzureFunctions.IsolatedProcess.Webhook/UpdateService.cs b/Serverless/AzureFunctions.IsolatedProcess.Webhook/UpdateService.cs
index f6be281..7a84206 100644
--- a/Serverless/AzureFunctions.IsolatedProcess.Webhook/UpdateService.cs
+++ b/Serverless/AzureFunctions.IsolatedProcess.Webhook/UpdateService.cs
@@ -24,7 +24,7 @@ public async Task EchoAsync(Update update)
if (!(update.Message is { } message)) return;
_logger.LogInformation("Received Message from {ChatId}", message.Chat.Id);
- await _botClient.SendTextMessageAsync(
+ await _botClient.SendMessage(
chatId: message.Chat.Id,
text: $"Echo : {message.Text}");
}
diff --git a/Serverless/AzureFunctions.Webhook/AzureFunctions.Webhook.csproj b/Serverless/AzureFunctions.Webhook/AzureFunctions.Webhook.csproj
index ae8c2ba..802d6c2 100644
--- a/Serverless/AzureFunctions.Webhook/AzureFunctions.Webhook.csproj
+++ b/Serverless/AzureFunctions.Webhook/AzureFunctions.Webhook.csproj
@@ -7,10 +7,10 @@
-
+
-
+
diff --git a/Serverless/AzureFunctions.Webhook/UpdateService.cs b/Serverless/AzureFunctions.Webhook/UpdateService.cs
index 04198bb..100e865 100644
--- a/Serverless/AzureFunctions.Webhook/UpdateService.cs
+++ b/Serverless/AzureFunctions.Webhook/UpdateService.cs
@@ -24,7 +24,7 @@ public async Task EchoAsync(Update update)
if (!(update.Message is { } message)) return;
_logger.LogInformation("Received Message from {0}", message.Chat.Id);
- await _botClient.SendTextMessageAsync(
+ await _botClient.SendMessage(
chatId: message.Chat.Id,
text: $"Echo : {message.Text}");
}
diff --git a/Webhook.Controllers/Controllers/BotController.cs b/Webhook.Controllers/Controllers/BotController.cs
index fbb5bca..244b673 100644
--- a/Webhook.Controllers/Controllers/BotController.cs
+++ b/Webhook.Controllers/Controllers/BotController.cs
@@ -14,7 +14,7 @@ public class BotController(IOptions Config) : ControllerBase
public async Task SetWebHook([FromServices] ITelegramBotClient bot, CancellationToken ct)
{
var webhookUrl = Config.Value.BotWebhookUrl.AbsoluteUri;
- await bot.SetWebhookAsync(webhookUrl, allowedUpdates: [], secretToken: Config.Value.SecretToken, cancellationToken: ct);
+ await bot.SetWebhook(webhookUrl, allowedUpdates: [], secretToken: Config.Value.SecretToken, cancellationToken: ct);
return $"Webhook set to {webhookUrl}";
}
diff --git a/Webhook.Controllers/Services/UpdateHandler.cs b/Webhook.Controllers/Services/UpdateHandler.cs
index d1c58f6..8a9e2ee 100644
--- a/Webhook.Controllers/Services/UpdateHandler.cs
+++ b/Webhook.Controllers/Services/UpdateHandler.cs
@@ -59,7 +59,7 @@ private async Task OnMessage(Message msg)
"/throw" => FailingHandler(msg),
_ => Usage(msg)
});
- logger.LogInformation("The message was sent with id: {SentMessageId}", sentMessage.MessageId);
+ logger.LogInformation("The message was sent with id: {SentMessageId}", sentMessage.Id);
}
async Task Usage(Message msg)
@@ -76,15 +76,15 @@ async Task Usage(Message msg)
/poll_anonymous - send an anonymous poll
/throw - what happens if handler fails
""";
- return await bot.SendTextMessageAsync(msg.Chat, usage, parseMode: ParseMode.Html, replyMarkup: new ReplyKeyboardRemove());
+ return await bot.SendMessage(msg.Chat, usage, parseMode: ParseMode.Html, replyMarkup: new ReplyKeyboardRemove());
}
async Task SendPhoto(Message msg)
{
- await bot.SendChatActionAsync(msg.Chat, ChatAction.UploadPhoto);
+ await bot.SendChatAction(msg.Chat, ChatAction.UploadPhoto);
await Task.Delay(2000); // simulate a long task
await using var fileStream = new FileStream("Files/bot.gif", FileMode.Open, FileAccess.Read);
- return await bot.SendPhotoAsync(msg.Chat, fileStream, caption: "Read https://telegrambots.github.io/book/");
+ return await bot.SendPhoto(msg.Chat, fileStream, caption: "Read https://telegrambots.github.io/book/");
}
// Send inline keyboard. You can process responses in OnCallbackQuery handler
@@ -95,7 +95,7 @@ async Task SendInlineKeyboard(Message msg)
.AddNewRow()
.AddButton("WithCallbackData", "CallbackData")
.AddButton(InlineKeyboardButton.WithUrl("WithUrl", "https://github.com/TelegramBots/Telegram.Bot"));
- return await bot.SendTextMessageAsync(msg.Chat, "Inline buttons:", replyMarkup: inlineMarkup);
+ return await bot.SendMessage(msg.Chat, "Inline buttons:", replyMarkup: inlineMarkup);
}
async Task SendReplyKeyboard(Message msg)
@@ -103,12 +103,12 @@ async Task SendReplyKeyboard(Message msg)
var replyMarkup = new ReplyKeyboardMarkup(true)
.AddNewRow("1.1", "1.2", "1.3")
.AddNewRow().AddButton("2.1").AddButton("2.2");
- return await bot.SendTextMessageAsync(msg.Chat, "Keyboard buttons:", replyMarkup: replyMarkup);
+ return await bot.SendMessage(msg.Chat, "Keyboard buttons:", replyMarkup: replyMarkup);
}
async Task RemoveKeyboard(Message msg)
{
- return await bot.SendTextMessageAsync(msg.Chat, "Removing keyboard", replyMarkup: new ReplyKeyboardRemove());
+ return await bot.SendMessage(msg.Chat, "Removing keyboard", replyMarkup: new ReplyKeyboardRemove());
}
async Task RequestContactAndLocation(Message msg)
@@ -116,24 +116,24 @@ async Task RequestContactAndLocation(Message msg)
var replyMarkup = new ReplyKeyboardMarkup(true)
.AddButton(KeyboardButton.WithRequestLocation("Location"))
.AddButton(KeyboardButton.WithRequestContact("Contact"));
- return await bot.SendTextMessageAsync(msg.Chat, "Who or Where are you?", replyMarkup: replyMarkup);
+ return await bot.SendMessage(msg.Chat, "Who or Where are you?", replyMarkup: replyMarkup);
}
async Task StartInlineQuery(Message msg)
{
var button = InlineKeyboardButton.WithSwitchInlineQueryCurrentChat("Inline Mode");
- return await bot.SendTextMessageAsync(msg.Chat, "Press the button to start Inline Query\n\n" +
+ return await bot.SendMessage(msg.Chat, "Press the button to start Inline Query\n\n" +
"(Make sure you enabled Inline Mode in @BotFather)", replyMarkup: new InlineKeyboardMarkup(button));
}
async Task SendPoll(Message msg)
{
- return await bot.SendPollAsync(msg.Chat, "Question", PollOptions, isAnonymous: false);
+ return await bot.SendPoll(msg.Chat, "Question", PollOptions, isAnonymous: false);
}
async Task SendAnonymousPoll(Message msg)
{
- return await bot.SendPollAsync(chatId: msg.Chat, "Question", PollOptions);
+ return await bot.SendPoll(chatId: msg.Chat, "Question", PollOptions);
}
static Task FailingHandler(Message msg)
@@ -145,8 +145,8 @@ static Task FailingHandler(Message msg)
private async Task OnCallbackQuery(CallbackQuery callbackQuery)
{
logger.LogInformation("Received inline keyboard callback from: {CallbackQueryId}", callbackQuery.Id);
- await bot.AnswerCallbackQueryAsync(callbackQuery.Id, $"Received {callbackQuery.Data}");
- await bot.SendTextMessageAsync(callbackQuery.Message!.Chat, $"Received {callbackQuery.Data}");
+ await bot.AnswerCallbackQuery(callbackQuery.Id, $"Received {callbackQuery.Data}");
+ await bot.SendMessage(callbackQuery.Message!.Chat, $"Received {callbackQuery.Data}");
}
#region Inline Mode
@@ -159,13 +159,13 @@ private async Task OnInlineQuery(InlineQuery inlineQuery)
new InlineQueryResultArticle("1", "Telegram.Bot", new InputTextMessageContent("hello")),
new InlineQueryResultArticle("2", "is the best", new InputTextMessageContent("world"))
];
- await bot.AnswerInlineQueryAsync(inlineQuery.Id, results, cacheTime: 0, isPersonal: true);
+ await bot.AnswerInlineQuery(inlineQuery.Id, results, cacheTime: 0, isPersonal: true);
}
private async Task OnChosenInlineResult(ChosenInlineResult chosenInlineResult)
{
logger.LogInformation("Received inline result: {ChosenInlineResultId}", chosenInlineResult.ResultId);
- await bot.SendTextMessageAsync(chosenInlineResult.From.Id, $"You chose result with Id: {chosenInlineResult.ResultId}");
+ await bot.SendMessage(chosenInlineResult.From.Id, $"You chose result with Id: {chosenInlineResult.ResultId}");
}
#endregion
@@ -181,7 +181,7 @@ private async Task OnPollAnswer(PollAnswer pollAnswer)
var answer = pollAnswer.OptionIds.FirstOrDefault();
var selectedOption = PollOptions[answer];
if (pollAnswer.User != null)
- await bot.SendTextMessageAsync(pollAnswer.User.Id, $"You've chosen: {selectedOption.Text} in poll");
+ await bot.SendMessage(pollAnswer.User.Id, $"You've chosen: {selectedOption.Text} in poll");
}
private Task UnknownUpdateHandlerAsync(Update update)
diff --git a/Webhook.Controllers/Webhook.Controllers.csproj b/Webhook.Controllers/Webhook.Controllers.csproj
index 70d05b0..f9c1e10 100644
--- a/Webhook.Controllers/Webhook.Controllers.csproj
+++ b/Webhook.Controllers/Webhook.Controllers.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/Webhook.MinimalAPIs/Program.cs b/Webhook.MinimalAPIs/Program.cs
index ce1553e..38a04c7 100644
--- a/Webhook.MinimalAPIs/Program.cs
+++ b/Webhook.MinimalAPIs/Program.cs
@@ -10,7 +10,7 @@
var app = builder.Build();
app.UseHttpsRedirection();
-app.MapGet("/bot/setWebhook", async (TelegramBotClient bot) => { await bot.SetWebhookAsync(webhookUrl); return $"Webhook set to {webhookUrl}"; });
+app.MapGet("/bot/setWebhook", async (TelegramBotClient bot) => { await bot.SetWebhook(webhookUrl); return $"Webhook set to {webhookUrl}"; });
app.MapPost("/bot", OnUpdate);
app.Run();
@@ -21,5 +21,5 @@ async void OnUpdate(TelegramBotClient bot, Update update)
var msg = update.Message;
Console.WriteLine($"Received message '{msg.Text}' in {msg.Chat}");
// let's echo back received text in the chat
- await bot.SendTextMessageAsync(msg.Chat, $"{msg.From} said: {msg.Text}");
+ await bot.SendMessage(msg.Chat, $"{msg.From} said: {msg.Text}");
}
diff --git a/Webhook.MinimalAPIs/Webhook.MinimalAPIs.csproj b/Webhook.MinimalAPIs/Webhook.MinimalAPIs.csproj
index 3972f4a..e1779d5 100644
--- a/Webhook.MinimalAPIs/Webhook.MinimalAPIs.csproj
+++ b/Webhook.MinimalAPIs/Webhook.MinimalAPIs.csproj
@@ -8,7 +8,7 @@
-
+