#telegram #telethon
Вопрос:
Есть ли способ отменить скрытую историю для существующих участников частной группы Telegram?
Прямо сейчас, если новый участник присоединяется, когда включена скрытая история, у него нет возможности снова включить ее (например, после того, как он разгадал капчу). Как ни странно, если одного и того же участника выгнали, скрытая история отключается, и они возвращаются, они все равно не могут видеть исторические сообщения.
Я ищу решение этой проблемы, используя либо официальный API, либо telethon
оболочку (достаточно конечной точки).
Ответ №1:
Вам нужно использовать эту TogglePreHistoryHiddenRequest
функцию.
from telethon.sync import TelegramClient
from telethon import functions, types
api_id = 121212
api_hash = "97dsakn421hdsapogjdmaewod"
with TelegramClient("anon", api_id, api_hash) as client:
result = client(functions.channels.TogglePreHistoryHiddenRequest(
channel='username',
enabled=False
))
print(result.stringify())
Если enabled
False
да , то будет виден чат для новых участников. В противном случае это скрыто.
Комментарии:
1. Спасибо! Я не думаю, что это «отменит скрытую историю для существующего участника» (ключевое слово здесь «существующий»), как я просил в ОП. Также я думаю, что вам следует скрыть свой
api_id
иapi_hash
, потому что вы опубликовали его в своем ответе 🙂2. Идентификатор api и хэш api подделаны. Конечно, я бы никогда не показал свои данные API.
3. Извините, я попытался использовать этот метод, и он отменит скрытую историю чатов.