Skip to content

Commit b500144

Browse files
euribatessdelquin
authored andcommitted
Añade comando /status para saber si el bot esta activo y desde cuando (#19)
* Añade comando /status para saber si el bot esta activo y desde cuando * Los mensajes del bot sobre /status van en ingles
1 parent c8b7899 commit b500144

1 file changed

Lines changed: 42 additions & 7 deletions

File tree

bot.py

Lines changed: 42 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
1+
import logging
2+
import datetime
3+
14
import telegram
2-
from telegram.ext import Updater, Filters, MessageHandler
5+
from telegram.ext import Updater, Filters, MessageHandler, CommandHandler
36
from telegram import Bot, Update
47

58
import config
@@ -44,11 +47,43 @@ def reply(bot, update):
4447
)
4548

4649

47-
updater = Updater(config.TELEGRAM_BOT_TOKEN)
48-
dp = updater.dispatcher
50+
def since(reference=datetime.datetime.now()):
51+
now = datetime.datetime.now()
52+
delta = now - reference
53+
buff = []
54+
if delta.days:
55+
buff.append('{} days'.format(delta.days))
56+
hours = delta.seconds // 3600
57+
if hours > 0:
58+
buff.append('{} hours'.format(hours))
59+
minutes = delta.seconds // 60
60+
if minutes > 0:
61+
buff.append('{} minutes'.format(minutes))
62+
seconds = delta.seconds % 60
63+
buff.append('{} seconds'.format(seconds))
64+
return ' '.join(buff)
65+
66+
67+
def status(bot, update):
68+
bot.send_message(
69+
chat_id=update.message.chat_id,
70+
text='Status is OK, running since {}'.format(since())
71+
)
72+
73+
74+
def main():
75+
logging.basicConfig(level=logging.INFO)
76+
logging.info('Starting bot...')
77+
updater = Updater(config.TELEGRAM_BOT_TOKEN)
78+
dp = updater.dispatcher
79+
80+
dp.add_handler(MessageHandler(Filters.status_update.new_chat_members, welcome))
81+
dp.add_handler(MessageHandler(Filters.group, reply))
82+
dp.add_handler(CommandHandler('status', status))
83+
84+
updater.start_polling()
85+
updater.idle()
4986

50-
dp.add_handler(MessageHandler(Filters.status_update.new_chat_members, welcome))
51-
dp.add_handler(MessageHandler(Filters.group, reply))
5287

53-
updater.start_polling()
54-
updater.idle()
88+
if __name__ == "__main__":
89+
main()

0 commit comments

Comments
 (0)