@sashx

Почему UserBot не может прочитать id пользователя?

Пишу бота - администратора, который будет "слушать" телеграмм - чат и делать предупреждения в личных сообщениях. Но как только приходит негативное сообщение от пользователя, при попытке отправить ему сообщение, возвращается ошибка:
Could not find the input entity for PeerUser(user_id=...) (PeerUser).


В листинге убрал суть и основной код, оставил проблемный участок:
Листинг


import logging
import time

import telebot
from telethon import TelegramClient, events
from telethon.tl.types import PeerUser
import config


api_id = config.API_ID
api_hash = config.API_HASH
phone = config.PHONE

client = TelegramClient(phone, api_id, api_hash)

@client.on(events.NewMessage(chats=(config.link)))
async def normal_handler(event):
    # --- Currently message from user ---
    user_mess = event.message.to_dict()['message']
    user_id = str(s_user_id['user_id'])

    try:
        await client.send_message(int(user_id),
                                  f'У Вас предупреждение!',
                                  parse_mode="HTML")

        logging.warning('The User Is Successfuly Processed')
    except ValueError as e:
        print(e)
        pass


client.start()
group = config.link
participants = client.get_participants(group)
users = {}

while True:
    try:
        client.run_until_disconnected()
    except Exception:
        logging.warning('Something Went Wrong')
        time.sleep(1)

  • Вопрос задан
  • 69 просмотров
Пригласить эксперта
Ответы на вопрос 1
@puzaka
По-моему, это связано с тем, что бот не может отправлять сообщение тому, кто ранее не писал боту
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
17 апр. 2024, в 00:48
35000 руб./за проект
17 апр. 2024, в 00:13
800 руб./за проект
17 апр. 2024, в 00:06
240000 руб./за проект