Complete posting poll
This commit is contained in:
parent
4ae5663fea
commit
83a79b7b24
32
bot.py
32
bot.py
|
@ -1,15 +1,41 @@
|
|||
#!/usr/bin/env python3
|
||||
# coding=utf-8
|
||||
|
||||
import logging
|
||||
import config
|
||||
import sqlite3
|
||||
from telegram.ext import Updater, MessageHandler, Filters
|
||||
from telegram import InlineKeyboardButton, InlineKeyboardMarkup
|
||||
|
||||
logging.basicConfig(format='%(asctime)s - %(name)s - %(levelname)s - \
|
||||
%(message)s', level=logging.INFO)
|
||||
|
||||
|
||||
def main(bot, update, db):
|
||||
def get_callback_id(db):
|
||||
cursor = db.cursor()
|
||||
query = ('SELECT max(callback) FROM poll')
|
||||
cursor.execute(query)
|
||||
return int(cursor.fetchone()[0]) + 1
|
||||
|
||||
|
||||
def add_vote(db, callback_id, user_id):
|
||||
cursor = db.cursor()
|
||||
query = ("INSERT INTO poll(callback, user_id) values(?,?)")
|
||||
cursor.execute(query, (callback_id, user_id))
|
||||
db.commit()
|
||||
|
||||
|
||||
def post(bot, update, db):
|
||||
chat_id = update.message.chat_id
|
||||
if chat_id in config.allowed_users:
|
||||
pass
|
||||
callback_id = get_callback_id(db)
|
||||
add_vote(db, callback_id, 0)
|
||||
photo = update.message.photo[0]
|
||||
file_id = photo.file_id
|
||||
keyboard = InlineKeyboardMarkup([[InlineKeyboardButton(text="❤️",
|
||||
callback_data=callback_id)]])
|
||||
bot.send_photo(chat_id=config.channel_id, photo=file_id,
|
||||
reply_markup=keyboard)
|
||||
else:
|
||||
bot.send_message(chat_id=chat_id, text="Not Authorized")
|
||||
|
||||
|
@ -20,6 +46,6 @@ dispatcher = updater.dispatcher
|
|||
db = sqlite3.connect("chanbot.sqlite", check_same_thread=False)
|
||||
cursor = db.cursor()
|
||||
|
||||
dispatcher.add_handler(MessageHandler(Filters.photo, lambda x, y: main(x,
|
||||
dispatcher.add_handler(MessageHandler(Filters.photo, lambda x, y: post(x,
|
||||
y, db)))
|
||||
updater.start_polling()
|
||||
|
|
Loading…
Reference in New Issue