dart-telegram-bot
Telegram 機器人 API 的簡單純包裝
- 星標
- 29
- 分支
- 8
- 最近推送(UTC)
- 2025年1月2日
- 專案狀態
- 未封存
原始 README
以下為英文專案原文快照,最新內容請造訪 GitHub。
Dart Telegram Bot ![Dart CI/CD]()
Dart Telegram Bot is a Dart wrapper for Telegram
bot API.
It is compatible with Native, Flutter and JS.
Using Dart Telegram Bot is straightforward, here's an example echo bot:
import 'package:dart_telegram_bot/dart_telegram_bot.dart';
import 'package:dart_telegram_bot/telegram_entities.dart';
void main() {
Bot(
// Insert your bot token here
token: 'BOT_TOKEN',
// Once the bot is ready this function will be called
// You can start the bot here
onReady: (bot) => bot.start(clean: true),
// Register a new callback for new updates
).onUpdate((bot, update) async {
// Send a message to the update chat with the received message
bot.sendMessage(ChatID(update.message!.chat.id), update.message!.text!);
});
}
Bot start may fail when bot token is invalid or with network issues.
To handle such cases follow the next example:
void main() {
Bot(
token: 'BOT_TOKEN',
onReady: (bot) => bot.start(clean: true),
// Handle start failure
onStartFailed: (bot, e, s) => print('Start failed'),
);
}
Also, you may want to disable or allow only certain update types.
To do so follow the next example:
void main() {
Bot(
token: 'BOT_TOKEN',
onReady: (bot) => bot.start(clean: true),
// Either allow all types but some
allowedUpdates: UpdateType.allBut([UpdateType.channelPost]),
// OR allow only a list of types
allowedUpdates: [UpdateType.message, UpdateType.editedMessage],
);
}
Dart Telegram Bot also supports a more OOP approach. The following example is still an echo bot, this time with OOP approach:
class MyBot extends Bot {
MyBot() : super(token: 'BOT_TOKEN') {
onUpdate(updateHandler);
}
@override
Future onReady(Bot bot) => bot.start(clean: true);
@override
Future onStartFailed(Bot bot, Object err, StackTrace st) async {
print('Bot failed to start: $err');
}
Future updateHandler(Bot bot, Update update) async {
bot.sendMessage(ChatID(update.message!.chat.id), update.message!.text!);
}
}
Written by Kaikyu Lotus (Telegram)
語言Dart
分類
使用的依賴
如何選擇適合專案的儲存庫?
先依使用情境篩選,再比較專案活躍情況,最後到原始儲存庫確認使用要求。
- 透過儲存庫名稱、作者或描述搜尋,再依技術分類縮小範圍。
- 綜合星標、分支與最近推送比較專案;星標反映社群關注,不保證品質。
- 使用前在 GitHub 確認 README、授權條款與 Issues。
來源與維護
“A repository is the most basic element of GitHub.”
GitHub Docs — About repositories ↗