Node.js module to interact with official Telegram Bot API. A bot token is required and can be obtained by talking to @botfather.
npm install --save node-telegram-bot-api
const TelegramBot = require('node-telegram-bot-api');
// replace the value below with the Telegram token you receive from @BotFather
const token = 'YOUR_TELEGRAM_BOT_TOKEN';
// Create a bot that uses 'polling' to fetch new updates
const bot = new TelegramBot(token, {polling: true});
// Matches "/echo [whatever]"
bot.onText(/\/echo (.+)/, (msg, match) => {
// 'msg' is the received Message from Telegram
// 'match' is the result of executing the regexp above on the text content
// of the message
const chatId = msg.chat.id;
const resp = match[1]; // the captured "whatever"
// send back the matched "whatever" to the chat
bot.sendMessage(chatId, resp);
});
// Listen for any kind of message. There are different kinds of
// messages.
bot.on('message', (msg) => {
const chatId = msg.chat.id;
// send a message to the chat acknowledging receipt of their message
bot.sendMessage(chatId, 'Received your message');
});
- Usage
- Examples
- Tutorials
- Help Information
- API Reference (release / development / experimental)
- Contributing to the Project
- Experimental Features
Note: Development is done against the master branch. Code for the latest release resides on the release branch. Experimental features reside on the experimental branch.
We thank all the developers in the Open-Source community who continuously take their time and effort in advancing this project. See our list of contributors.
We have a Telegram channel where we post updates on the Project. Head over and subscribe!
Some things built using this library that might interest you:
- tgfancy: A fancy, higher-level wrapper for Telegram Bot API
- node-telegram-bot-api-middleware: Middleware for node-telegram-bot-api
- teleirc: A simple Telegram ↔ IRC gateway
- bot-brother: Node.js library to help you easily create telegram bots
- redbot: A Node-RED plugin to create telegram bots visually
- node-telegram-keyboard-wrapper: A wrapper to improve
reply_markup
structures creation in an easy way (supports Inline Keyboards, Reply Keyboard, Remove Keyboard and Force Reply)
The MIT License (MIT)
Copyright © 2017 Yago