Есть вот такой код@bot.message_handler(commands=["help"])
def help(m, res=False):
global help_user_id
help_user_id = m.from_user.id
markup = types.InlineKeyboardMarkup()
button1 = types.InlineKeyboardButton(text='Отмена', callback_data='cancel')
markup.add(button1)
msg = bot.send_message(m.chat.id, 'Задайте вопрос боту.', reply_markup=markup)
bot.register_next_step_handler(msg, helpBot)
# Функция, отправляющая вопрос от пользователя в чат поддержки
def helpBot(m):
bot.forward_message(-1001907198231, m.chat.id, m.message_id)
# Получение сообщений от юзера,
@bot.message_handler(content_types=["text"])
def handle_text(m):
# здесь если чат id равен id чата поддержки, то отправить сообщение пользователю который задал вопрос
if int(m.chat.id) == int(-1001907198231):
bot.send_message(help_user_id, m.text)
Запускаю. Ввожу команду /help, ввожу вопрос, вопрос пересылается в группу админов, админы могут ответить на вопрос, ответ приходит в бота. Но, если пользователь пишет второй вопрос - он уже не пересылается. Пробовал по разному, лопатил интернет - ничего не могу найти подходящего. Единственное, что нашёл, это добавить в самом конце:
else:
# сообщение от пользователя, отправляем оператору
bot.forward_message(-1001907198231, message.chat.id, message.message_id)
В таком случае все сообщения пользователя пересылаются и на все можно ответить админам. Но есть проблема - пересылаются вообще все сообщения даже без команды /help.