add morj command
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import logging
|
||||
import os
|
||||
import traceback
|
||||
from datetime import datetime, timedelta
|
||||
from html import escape
|
||||
@@ -8,6 +9,7 @@ from queue import Queue, Empty
|
||||
from time import sleep
|
||||
from threading import Thread
|
||||
from typing import Dict, List
|
||||
from uuid import uuid4
|
||||
|
||||
import sentry_sdk
|
||||
from telegram.error import Unauthorized, TelegramError
|
||||
@@ -17,6 +19,7 @@ from telegram import Message, Update, Bot, InlineKeyboardMarkup, InlineKeyboardB
|
||||
|
||||
from config import BOT_TOKEN, SENTRY_DSN, MANAGEMENT_CHAT, DEBUG
|
||||
from db import get_conn, Subscriber, PersistentMapping, commit
|
||||
from morj import draw_morj
|
||||
from send_users_list import send_users_list
|
||||
|
||||
|
||||
@@ -232,6 +235,14 @@ def users_list(bot: Bot, update: Update):
|
||||
update.effective_message.reply_text('\n'.join(messages[i:i+40]), parse_mode='html')
|
||||
|
||||
|
||||
def morj(bot: Bot, update: Update):
|
||||
text = update.effective_message.text[5:]
|
||||
fname = '/tmp/morj{}.png'.format(uuid4())
|
||||
draw_morj(text, fname)
|
||||
update.effective_message.reply_document(open(fname, 'rb'))
|
||||
os.unlink(fname)
|
||||
|
||||
|
||||
def _process_message(bot: Bot, m: Message):
|
||||
if m.sticker or m.animation:
|
||||
delta = datetime.now() - conn.root.last_media
|
||||
@@ -363,6 +374,7 @@ if __name__ == '__main__':
|
||||
updater.dispatcher.add_handler(CommandHandler('remove', remove_user, Filters.chat(MANAGEMENT_CHAT), pass_args=True))
|
||||
updater.dispatcher.add_handler(CallbackQueryHandler(remove_user, pattern=r'^remove (\d+)$', pass_groups=True))
|
||||
updater.dispatcher.add_handler(CommandHandler('users', users_list, Filters.private))
|
||||
updater.dispatcher.add_handler(CommandHandler('morj', morj))
|
||||
updater.dispatcher.add_handler(MessageHandler(Filters.private, msg))
|
||||
|
||||
updater.start_polling()
|
||||
|
||||
Reference in New Issue
Block a user