Алгоритм:
1. Пользователь пишет боту сообщение.
2. Бот пересылает сообщение пользователя в закрытый чат(через forward_message).
3. В закрытом чате админ отвечает на сообщение(через reply)
4. Бот пересылает ответ админа пользователю.
Как сделать 4 пункт?
@bot.message_handler(commands=['start'])
def start_message(message: types.Message):
try:
# create database
connect = sqlite3.connect('database.db')
cursor = connect.cursor()
cursor.execute("""CREATE TABLE IF NOT EXISTS users_information(id INTEGER,
Name TEXT,
Username TEXT,
Message TEXT)""")
connect.commit()
users_id = message.chat.id
cursor.execute(f"SELECT id FROM users_information WHERE id = {users_id}")
data = cursor.fetchone()
# user is not in the database, write in down
if data is None:
values = [message.chat.id, message.from_user.first_name, message.from_user.username]
cursor.execute("INSERT INTO users_information(id, Name, Username) VALUES(?, ?, ?);", values)
connect.commit()
connect.close()
bot.send_message(message.chat.id, f'Hello, {message.from_user.first_name}. Enter text')
except Exception:
pass
@bot.message_handler(content_types=['text'])
def get_message(message: types.Message):
# когда пользователь пишет текст записываем ід сообщения в бд
message_id = [message.message_id, message.chat.id]
connect = sqlite3.connect('database.db')
cursor = connect.cursor()
cursor.execute('UPDATE users_information SET Message = ? WHERE id = ?', message_id)
connect.commit()
connect.close()
bot.forward_message(private_chat, message.chat.id, message.message_id)
# проверка не работает message.chat.id == id админа а должен быть равен private chat
# как сделать что б бот реагировал на текст в закрытом чате
# у бота есть все разрешение в закрытом чате, private mode отключен
if message.chat.id == private_chat:
pass