Чат бот телеграм с клиентами. Как реализовать общение клиент - админ

Хочу сделать бота который будет осуществлять общение между админом и клиентом. Использую telebot. Накидал небольшой код, но он работает некорректно. Он видит сообщения только в чате клиента. Клиент задаёт вопрос, он приходит админу, тот отвечает на него, но ничего не происходит. Но если клиент что-то напишет у себя в чате, то он получит в ответ своё же сообщение

Код файла main

from logic_bot import *


def main():

    TOKEN = open('TOKEN.txt').readline()
    bot = MyBot(TOKEN)

    @bot.message_handler(commands=['start'])
    def start(message):
        bot.start_message(message)

    bot.polling(non_stop=True, interval=0)


if __name__ == '__main__':

    main()

Код файла logic_bot

from telebot import TeleBot


class MyBot(TeleBot):

    __chat_id = ''
    __admin_id = 'айди админа'
    __user_name = ''

    def __init__(self, TOKEN):
        super().__init__(TOKEN)

    def start_message(self, message):
        self.__chat_id = message.chat.id
        self.__user_name = f'@{message.from_user.username}'
        self.send_message(message.chat.id, 'conect already!\n'
                                               'Enter your question')
        self.register_next_step_handler(message, self.__conecting_with_admin)

    def __conecting_with_admin(self, message):
        self.send_message(self.__admin_id, f'question from {self.__user_name}')
        self.copy_message(self.__admin_id, message.chat.id, message.message_id)
        self.register_next_step_handler(message, self.__connection_with_user)

    def __connection_with_user(self, message):
        
        self.copy_message(self.__chat_id, message.chat.id, message.message_id)
        self.register_next_step_handler(message, self.__conecting_with_admin)

Как я понял register_next_step_handler работает только внутри одного чата, но не понимаю что можно сделать. Знаю что не хорошо хранить чат айди в переменной, но пока я просто проверяю работу бота, далее заведу бд. Также не против услышать более удобный вариант реализации такого бота


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