Mahdi Dibaiee
714ffa9458
Fix promises getting rejected silently - Thanks to @joepie91
Fix bot not working properly in groups Fix bot not answering properly Bump to version 0.2.2
Telegram Bots
Create and control Telegram bots easily using the new Telegram API.
telegram-api is in beta, your feedback is appreciated, please fill an issue for any bugs you find or any suggestions you have.
npm install telegram-api
The code is well documented. I'm trying to integrate JSDoc / ESDoc into our repository for an easy to access documentation.
Example
@JavaScriptBot runs on demo.js
, you can test it.
var Bot = require('telegram-api');
// only require the message types you need, more coming soon!
var Message = require('telegram-api/types/Message');
var Question = require('telegram-api/types/Question');
var bot = new Bot({
token: 'YOUR_KEY'
});
bot.start().then(() => {
console.log(bot.info);
});
// polling
bot.on('update', update => {
console.log('Polled\n', update);
});
const question = new Question({
text: 'How should I greet you?',
answers: [['Hey'], ['Hello, Sir'], ['Yo bro']]
});
bot.get(/Hi\sBot/, message => {
const id = message.chat.id;
question.to(id).reply(message.message_id);
bot.send(question).then(answer => {
const msg = new Message().to(id).text('Your answer: ' + answer);
bot.send(msg);
}, () => {
const msg = new Message().to(id).text('Invalid answer');
bot.send(msg);
});
});
const hello = new Message().text('Hello');
bot.command('start', message => {
bot.send(hello.to(message.chat.id));
});
const test = new Message().text('Test Command');
bot.command('test', message => {
bot.send(test.to(message.chat.id));
});
This will result in:
Bots using this module
Todo
- BulkMessage Type
- File Type
- Sticker Type
- Location Type
- Contact Type
- Allow remote control of bots (TCP maybe)
- YOUR IDEAS! Fill an issue
Description
Languages
JavaScript
100%