2019-10-15 20:51:07 +05:30
< h1 align = "center" > Node.js Telegram Bot API< / h1 >
2017-02-15 13:59:56 +09:00
2019-10-15 20:51:07 +05:30
< div align = "center" >
2015-10-10 18:28:21 +02:00
2019-10-15 20:51:07 +05:30
Node.js module to interact with the official [Telegram Bot API ](https://core.telegram.org/bots/api ).
2021-04-26 18:50:34 +02:00
2021-12-07 16:43:16 +01:00
[](https://core.telegram.org/bots/api)
2019-10-15 21:38:49 +05:30
[](https://www.npmjs.org/package/node-telegram-bot-api)
2019-10-15 20:51:07 +05:30
[](https://travis-ci.org/yagop/node-telegram-bot-api)
[](https://codecov.io/gh/yagop/node-telegram-bot-api)
[](https://telegram.me/node_telegram_bot_api)
[](https://telegram.me/ntbasupport)
[](https://telegram.me/Yago_Perez)
< / div >
2015-06-29 22:37:38 +02:00
2017-02-15 13:59:56 +09:00
## Install
2017-01-11 18:18:24 +03:00
2020-04-30 20:54:29 +05:30
```sh
npm i node-telegram-bot-api
2015-06-29 22:19:19 +02:00
```
2017-02-15 13:59:56 +09:00
## Usage
2017-01-11 18:18:24 +03:00
2015-06-29 22:19:19 +02:00
```js
2017-02-15 13:59:56 +09:00
const TelegramBot = require('node-telegram-bot-api');
2015-06-29 22:19:19 +02:00
2016-11-11 16:54:04 +03:00
// replace the value below with the Telegram token you receive from @BotFather
2017-02-15 13:59:56 +09:00
const token = 'YOUR_TELEGRAM_BOT_TOKEN';
2015-10-10 18:09:25 +02:00
2016-11-11 16:54:04 +03:00
// Create a bot that uses 'polling' to fetch new updates
2017-02-15 13:59:56 +09:00
const bot = new TelegramBot(token, {polling: true});
2016-11-11 16:54:04 +03:00
// Matches "/echo [whatever]"
2017-02-15 13:59:56 +09:00
bot.onText(/\/echo (.+)/, (msg, match) => {
2016-11-11 16:54:04 +03:00
// 'msg' is the received Message from Telegram
// 'match' is the result of executing the regexp above on the text content
// of the message
2017-02-15 13:59:56 +09:00
const chatId = msg.chat.id;
const resp = match[1]; // the captured "whatever"
2016-11-11 16:54:04 +03:00
// send back the matched "whatever" to the chat
bot.sendMessage(chatId, resp);
2015-10-10 18:09:25 +02:00
});
2016-11-11 16:54:04 +03:00
// Listen for any kind of message. There are different kinds of
// messages.
2017-02-15 13:59:56 +09:00
bot.on('message', (msg) => {
const chatId = msg.chat.id;
2016-11-11 16:54:04 +03:00
// send a message to the chat acknowledging receipt of their message
2017-02-15 13:59:56 +09:00
bot.sendMessage(chatId, 'Received your message');
2015-06-29 22:19:19 +02:00
});
```
2017-01-11 18:18:24 +03:00
## Documentation
2016-06-06 22:57:06 +02:00
2017-02-15 13:59:56 +09:00
* [Usage][usage]
* [Examples][examples]
2017-06-26 12:28:11 +03:00
* [Tutorials][tutorials]
2017-02-15 13:59:56 +09:00
* [Help Information][help]
2019-10-15 20:51:07 +05:30
* API Reference [api-release] / [development][api-dev] / [experimental][api-experimental])
2017-02-15 13:59:56 +09:00
* [Contributing to the Project][contributing]
2017-05-13 10:34:07 +03:00
* [Experimental Features][experimental]
_**Note**: Development is done against the **master** branch.
2018-02-04 00:12:44 +01:00
Code for the latest release resides on the **release** branch.
2017-05-13 10:34:07 +03:00
Experimental features reside on the **experimental** branch._
2016-06-06 22:57:06 +02:00
2017-02-15 13:59:56 +09:00
## Community
2016-10-04 00:05:20 +05:30
2017-12-20 13:48:29 +03:00
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][contributors].
2017-01-11 18:18:24 +03:00
We have a [Telegram channel][tg-channel] where we post updates on
the Project. Head over and subscribe!
2016-10-04 00:05:20 +05:30
2019-10-15 20:51:07 +05:30
We also have a [Telegram group][tg-group] to discuss issues related to this library.
2017-11-18 13:18:50 -06:00
Some things built using this library that might interest you:
2016-10-04 00:05:20 +05:30
2017-11-18 13:18:50 -06:00
* [tgfancy ](https://github.com/GochoMugo/tgfancy ): A fancy, higher-level wrapper for Telegram Bot API
2017-01-11 18:18:24 +03:00
* [node-telegram-bot-api-middleware ](https://github.com/idchlife/node-telegram-bot-api-middleware ): Middleware for node-telegram-bot-api
2017-01-20 15:11:16 +03:00
* [teleirc ](https://github.com/FruitieX/teleirc ): A simple Telegram ↔ IRC gateway
2017-04-28 12:26:43 +03:00
* [bot-brother ](https://github.com/SerjoPepper/bot-brother ): Node.js library to help you easily create telegram bots
2017-05-26 09:36:34 +02:00
* [redbot ](https://github.com/guidone/node-red-contrib-chatbot ): A Node-RED plugin to create telegram bots visually
2021-08-12 20:19:34 +02:00
* [node-telegram-keyboard-wrapper ](https://github.com/alexandercerutti/node-telegram-keyboard-wrapper ): A wrapper to improve keyboards structures creation through a more easy-to-see way (supports Inline Keyboards, Reply Keyboard, Remove Keyboard and Force Reply)
2016-10-04 00:05:20 +05:30
2017-02-15 13:59:56 +09:00
## License
2016-10-22 16:01:34 +05:30
2017-01-11 18:18:24 +03:00
**The MIT License (MIT)**
2016-10-22 16:01:34 +05:30
2019-10-15 15:33:30 +05:30
Copyright © 2019 Yago
2017-01-06 21:03:10 +03:00
2017-02-15 13:59:56 +09:00
[usage]:https://github.com/yagop/node-telegram-bot-api/tree/master/doc/usage.md
[examples]:https://github.com/yagop/node-telegram-bot-api/tree/master/examples
[help]:https://github.com/yagop/node-telegram-bot-api/tree/master/doc/help.md
2017-06-26 12:28:11 +03:00
[tutorials]:https://github.com/yagop/node-telegram-bot-api/tree/master/doc/tutorials.md
2017-02-15 13:59:56 +09:00
[api-dev]:https://github.com/yagop/node-telegram-bot-api/tree/master/doc/api.md
[api-release]:https://github.com/yagop/node-telegram-bot-api/tree/release/doc/api.md
2017-05-13 10:34:07 +03:00
[api-experimental]:https://github.com/yagop/node-telegram-bot-api/tree/experimental/doc/api.md
2017-02-15 13:59:56 +09:00
[contributing]:https://github.com/yagop/node-telegram-bot-api/tree/master/CONTRIBUTING.md
2017-12-20 13:48:29 +03:00
[contributors]:https://github.com/yagop/node-telegram-bot-api/graphs/contributors
2017-05-13 10:34:07 +03:00
[experimental]:https://github.com/yagop/node-telegram-bot-api/tree/master/doc/experimental.md
2017-01-11 18:18:24 +03:00
[tg-channel]:https://telegram.me/node_telegram_bot_api
2019-10-15 20:51:07 +05:30
[tg-group]:https://telegram.me/ntbasupport