Исключить глобальные переменные telebot python

Подскажите, как тут можно убрать использование глобальных переменный? Так как с ними бот не может взаимодействовать одновременно с 2 пользователями.

@bot.callback_query_handler(func=lambda call: call.data == 'no')
def send_application(call, application):
    if not isDispatcher(call.message.chat.id):
        global counter
        global photos
        application['app_num'] = call.message.chat.id
        bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.id, text=
        "Ваша заявка отправлена. Чтобы отправить еще одну заявку напишите\n/start")
        for i in range(len(dispatcher)):
            bot.send_message(dispatcher[i],
                             f"Application number:{application['app_num']}\nStreet: {application['street']}\nHouse: {application['num']}\nProblem: {application['problem']}")
        if len(photos) > 0:
            for i in photos:
                bot.forward_message(dispatcher, call.message.chat.id, i)
        photos = []
    else:
        global repliable_id
        global disp_photos
        bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.id, text="Успех")
        if len(disp_photos) > 0:
            for i in disp_photos:
                bot.forward_message(repliable_id, dispatcher, i)
        counter = 10
        repliable_id = ''
        disp_photos = []
Как мне передать application в эту функцию, если я не могу записать application в call.data?

application это изначально была глобальной переменной, хочу от нее избавиться. Точно так же мне еще придется избавиться от глобальных переменных counter и photos, которые есть в функции.


Ответы (0 шт):