Files
lagomareGateKeeperBot/bot.py

25 lines
1.2 KiB
Python

from telegram.ext import Application, CommandHandler, MessageHandler, CallbackQueryHandler
from functools import partial
from config import BotConfig
from models import Gates, Users
from handlers import *
bot_config = BotConfig("lagomareGateKeeperBot")
gates = Gates()
users = Users()
def main():
app = Application.builder().token(bot_config.token).post_init(partial(post_init, bot_config=bot_config)).build()
app.add_handler(MessageHandler(None, partial(updateuser, users=users)), group=1)
app.add_handler(CommandHandler("start", partial(start, users=users)))
app.add_handler(CommandHandler("setcredentials", partial(setcredentials, users=users)))
app.add_handler(CommandHandler("opengate", partial(opengate, users=users, gates=gates)))
app.add_handler(CommandHandler("requestaccess", partial(requestaccess, users=users)))
app.add_handler(CommandHandler("grantaccess", partial(grantaccess, users=users)))
app.add_handler(CallbackQueryHandler(partial(handle_main_menu_callback, users=users, gates=gates), pattern="^(open_gate_menu|request_access)$"))
app.add_handler(CallbackQueryHandler(partial(handle_gate_open_callback, users=users, gates=gates), pattern="^opengate_"))
app.run_polling()
if __name__ == "__main__":
main()