telebot
是一個實作了當前最新版Telegram Bot API
的Dart
庫,你可以使用這個庫來很輕易地執行所有動作,
詳細內容請參考Telegram Bot 官方文件。
dependencies:
telebot: ^1.0.0
import 'package:telebot/telebot.dart';
請參閱官方文件或是依照以下步驟
所有關於Telegram機器人的操作都是與機器人爸爸對話來完成,可以想像機器人爸爸就像是後台一樣, 所以請訪問https://t.me/botfather並將機器人爸爸新增為聯絡人。
請打開你的Telegram並找到機器人爸爸(BotFather),然後傳送任何訊息給他,他會告訴你他可以做到什麼事。
傳送或點擊訊息/newbot
給機器人爸爸,然後照著他的步驟設定機器人,最後你會成功建立一個機器人。
傳送或點擊訊息/mybots
給機器人爸爸,他會告訴你你現在有哪些機器人,選擇你要取得token的機器人,並選擇API Token
然後你會得到這個機器人的token。
var bot = TelegramBot.init("BOT_TOKEN");
var bot = TelegramBot.init("BOT_TOKEN");
bot.sendMessage(chateId: "CHAT_ID", text: "Hello World").then((Message messageResult){
// got result
}).catchError((error){
// handle error
});
或是使用async/await
關鍵字
var bot = TelegramBot("BOT_TOKEN");
Message messageResult = await bot.sendMessage(chateId: "CHAT_ID", text: "Hello World");
telebot
已經實作了所有的Telegram Bot API
,詳細內容請參考Telegram機器人官方文檔。
var bot = TelegramBot("BOT_TOKEN");
await bot.sendMessage(
chatId: "CHAT_ID",
text: "Choose One!",
replyMarkup: InlineKeyboardMarkup(
inlineKeyboard: [
[
InlineKeyboardButton(text: "Apple", callbackData: "1000"),
InlineKeyboardButton(text: "Banana", callbackData: "1001"),
]
],
),
);
telebot
現在只支援String
url的模式,檔案的支援會在近期內完成
var bot = TelegramBot.init(BOT_TOKEN);
bot.onMessage((message)){
if(message.from.isBot) return;
message.reply("Hello! I'm a bot.");
}.onEditedMessage((message){
// do something
});
TelegramBot
目前支持的事件
Event | Parameter |
---|---|
onUpdate | Update |
onMessage | Message |
onEditedMessage | Message |
onChannelPost | Message |
onEditedChannelPost | Message |
onInlineQuery | InlineQuery |
onChosenInlineResult | ChosenInlineResult |
onCallbackQuery | CallbackQuery |
onShippingQuery | ShippingQuery |
onPreCheckoutQuery | PreCheckoutQuery |
onPoll | Poll |
onPollAnswer | PollAnswer |
bot.startServer(host: "YOUR SERVER HOST", port: SERVER_PORT);
- Clone或下載此專案
git clone https://github.com/Arxing/dart-telebot.git
- 編輯
example/env.dart
並輸入BOT_TOKEN
、SERVER_PORT
、WEBHOOK_URL
等欄位 - 執行檔案
example/update_webhook.dart
來設置webhook網址dart ./example/update_webhook.dart
- 執行檔案
example/start_bot_server.dart
來啟動機器人伺服器dart ./example/start_bot_server.dart
- 現在可以跟你的機器人對話了! 並且他會回覆你相同的訊息