2
0
mirror of https://github.com/yagop/node-telegram-bot-api synced 2025-08-22 09:57:10 +00:00

130 lines
5.6 KiB
Markdown
Raw Permalink Normal View History

<h1 align="center">Node.js Telegram Bot API</h1>
<div align="center">
2015-10-10 18:28:21 +02:00
Node.js module to interact with the official [Telegram Bot API](https://core.telegram.org/bots/api).
Telegram Bot API 5.2 Support (#870) * Add new method sendPoll * getMyCommands * setMyCommands * Update doc/api * 1# Fix Test sendPhoto The sendPhoto method does not support .gif files, use sendAnimation. This fix remplace .gif file by .png * CustomTitle and ChatPermissions support setChatAdministratorCustomTitle setChatPermissions * Update Readme Update Badge Telegram API Version * Minor Fix and Fix setChatPhoto The Telegram Bots api has a bug that they are fixing and gives problems with the previous image. While they don't fix it, the image replacement is the fastest solution * Minor Fix and Add Test Fixed setChatPermissions Test: - sendDice - getMyCommands - setMyCommands - setChatAdministratorCustomTitle - setChatPermissions * Update Changelog and Package.json version * Fix typos in Changelog * Add support for poll_answer From: https://github.com/yagop/node-telegram-bot-api/pull/777 * Add JieJiSS contribution in Changelog * Add sendPoll Test * Add unpinAllChatMessages Support * Add copyMessage support * Add close and logOut Support * Add Test + Minor fixes * Update CHANGELOG Update version 0.50.1 * Update Readme Bot API Badge * Update Version to 0.51.0 * Bot API 5.1 support Improved Invite Links - Added the method createChatInviteLink - Added the method editChatInviteLink - Added the method revokeChatInviteLink * Update version to 0.52.0 and new tests - Update Changelog - New Test - Update version to 0.52.0 * Add new messageTypes - voice_chat_started - voice_chat_ended - voice_chat_participants_invited * Update Changelog and add new MessageType * New messageTypes and updates Add support for new messageTypes: - chat_invite_link - chat_member_updated Add support for new updates: - my_chat_member - chat_member * Telegram Bot API 5.2 Support * Update Changelog + readme * Fix Changelog
2021-04-26 18:50:34 +02:00
2025-04-17 01:04:54 +02:00
[![Bot API](https://img.shields.io/badge/Bot%20API-v.9.0-00aced.svg?style=flat-square&logo=telegram)](https://core.telegram.org/bots/api)
[![npm package](https://img.shields.io/npm/v/node-telegram-bot-api?logo=npm&style=flat-square)](https://www.npmjs.org/package/node-telegram-bot-api)
[![Coverage Status](https://img.shields.io/codecov/c/github/yagop/node-telegram-bot-api?style=flat-square&logo=codecov)](https://codecov.io/gh/yagop/node-telegram-bot-api)
[![https://telegram.me/node_telegram_bot_api](https://img.shields.io/badge/💬%20Telegram-Channel-blue.svg?style=flat-square)](https://telegram.me/node_telegram_bot_api)
2024-05-30 23:33:27 +02:00
[![https://t.me/+_IC8j_b1wSFlZTVk](https://img.shields.io/badge/💬%20Telegram-Group-blue.svg?style=flat-square)](https://t.me/+_IC8j_b1wSFlZTVk)
[![https://telegram.me/Yago_Perez](https://img.shields.io/badge/💬%20Telegram-Yago_Perez-blue.svg?style=flat-square)](https://telegram.me/Yago_Perez)
</div>
2015-06-29 22:37:38 +02: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
```
<br/>
> ✍️ **Note:** If you use Typescript you can install this package that contains type definitions for this library
>```sh
>npm install --save-dev @types/node-telegram-bot-api
>```
## 🚀 Usage
2017-01-11 18:18:24 +03:00
2015-06-29 22:19:19 +02:00
```js
const TelegramBot = require('node-telegram-bot-api');
2015-06-29 22:19:19 +02:00
// replace the value below with the Telegram token you receive from @BotFather
const token = 'YOUR_TELEGRAM_BOT_TOKEN';
2015-10-10 18:09:25 +02:00
// 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);
2015-10-10 18:09:25 +02:00
});
// 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');
2015-06-29 22:19:19 +02:00
});
```
## 📚 Documentation
2016-06-06 22:57:06 +02:00
* [Usage][usage]
* [Examples][examples]
* [Tutorials][tutorials]
* [Help Information][help]
* API Reference: ([api-release](../master/doc/api.md) / [development][api-dev] / [experimental][api-experimental])
* [Contributing to the Project][contributing]
2017-05-13 10:34:07 +03:00
* [Experimental Features][experimental]
_**Note**: Development is done against the **development** branch.
Code for the latest release resides on the **master** branch.
2017-05-13 10:34:07 +03:00
Experimental features reside on the **experimental** branch._
2016-06-06 22:57:06 +02:00
## 💭 Community
2016-10-04 00:05:20 +05:30
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
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
* [bot-brother](https://github.com/SerjoPepper/bot-brother): Node.js library to help you easily create telegram bots
* [redbot](https://github.com/guidone/node-red-contrib-chatbot): A Node-RED plugin to create telegram bots visually
* [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)
2022-06-21 20:29:24 +01:00
* [beetube-bot](https://github.com/kodjunkie/beetube-bot): A telegram bot for music, videos, movies, EDM tracks, torrent downloads, files and more.
2023-01-31 03:17:06 +03:00
* [telegram-inline-calendar](https://github.com/VDS13/telegram-inline-calendar): Date and time picker and inline calendar for Node.js telegram bots.
2023-05-03 11:29:58 +03:00
* [telegram-captcha](https://github.com/VDS13/telegram-captcha): Telegram bot to protect Telegram groups from automatic bots.
2016-10-04 00:05:20 +05:30
## 👥 Contributors
<p align="center">
<a href="https://github.com/yagop/node-telegram-bot-api/graphs/contributors">
<img src="https://contrib.rocks/image?repo=yagop/node-telegram-bot-api" />
</a>
</p>
## 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
Copyright © 2019 Yago
[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
[tutorials]:https://github.com/yagop/node-telegram-bot-api/tree/master/doc/tutorials.md
[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
[contributing]:https://github.com/yagop/node-telegram-bot-api/tree/master/CONTRIBUTING.md
[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
2023-06-09 21:37:52 +02:00
[tg-group]:https://t.me/+nc3A9Hs1S81mYzdk