Авторизация в Telegram Bot по коду не удаетсяPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Авторизация в Telegram Bot по коду не удается

Сообщение Anonymous »

Я пишу бот Telegram с телетоном, который получает доступ к нескольким чатам в учетной записи и анализирует сообщения из него в базе данных.
Когда я пытаюсь использовать этого бота, я пытаюсь войти в систему, Telegram отправляет мне код аутентификации. Когда я отправляю этот код аутентификации в бот, аутентификация не удается, а Telegram отправляет мне такое сообщение: < /p>

Никто не получил доступ к вашим чатам, потому что вход не был завершен. Код был введен правильно, но войти не был разрешен, потому что этот код ранее был разделен вашей учетной записью. Пожалуйста, не делитесь кодами входа в систему с другими, потому что они позволяют кому -либо войти в вашу учетную запись и получить доступ к вашим чатам.async def handle_app_info(bot, event):
global app_state, last_message_id
user_id = event.message.peer_id.user_id
response = event.message.text
parts = response.split()

if len(parts) != 4:
error_message = "Error: Invalid input format. Please provide all required information."
await bot.send_message(user_id, error_message)
return

phone_number, app_id, app_hash, app_name = parts

client = TelegramClient(StringSession(), app_id, app_hash)
await client.connect()
if not await client.is_user_authorized():
await client.send_code_request(phone_number)

message = "Please enter the code sent to your Telegram app:"
await bot.send_message(user_id, message)

# Set user state to WAITING_CODE
db.set_user_state(user_id, states.WAITING_CODE)

# Set user state to WAITING_CODE
app_state = AppState.WAITING_CODE
last_message_id = event.message.id

# Store the client object and phone number in the respective dictionaries
clients[user_id] = client
phone_numbers[user_id] = phone_number
app_ids[user_id] = app_id
app_hashes[user_id] = app_hash
app_names[user_id] = app_name

async def handle_code(bot, event):
global app_state, last_message_id
user_id = event.message.peer_id.user_id
# Handle code input by the user
code = event.message.text

# Retrieve the client object and phone number from the respective dictionaries
client = clients[user_id]
phone_number = phone_numbers[user_id]
app_id = app_ids[user_id]
app_hash = app_hashes[user_id]
app_name = app_names[user_id]

# Sign in the user with the code they provided
try:
await client.sign_in(phone_number, code)
except Exception as e:
await bot.send_message(user_id, f"Failed to sign in: {e}")
return

# Save the session string
session_string = client.session.save()

# Save all connection data to the database
db.save_connection_data(user_id, phone_number, app_id, app_hash, app_name, session_string)

message = "Your Telegram app has been successfully connected to the bot."
await bot.send_message(user_id, message)

# Reset user state
app_state = AppState.MAIN_MENU
last_message_id = event.message.id
# Reset user state
db.set_user_state(user_id, states.MAIN_MENU)
< /code>
Я пытался отключить 2FA на телеграмме, но это не помогло. < /p>
У кого -нибудь есть идея, что я делаю не так? Спасибо за помощь

Подробнее здесь: https://stackoverflow.com/questions/786 ... code-fails
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»