@baldeyu

Telegram Bot Api не возвращает права на отправку сообщения?

Бот в чате является администратором и имеет полные права. После отключения возможности отправки сообщений пользователям, бот используя телеграм апи не может включить возможность отправки сообщений, присылается успешный результат, но ничего не происходит

url = f'https://api.telegram.org/bot{token}/setChatPermissions?chat_id=-1001386422499'
prm = {
            'can_send_messages' : True,
            'can_send_media_messages' : True,
            'can_send_polls' : True,
            'can_send_other_messages' : True,
            'can_add_web_page_previews' : True,
            'can_invite_users' : True
        }
r = requests.post(url, params = prm)
print(r.text)
  • Вопрос задан
  • 544 просмотра
Пригласить эксперта
Ответы на вопрос 2
SoreMix
@SoreMix Куратор тега Python
yellow
Нужно использовать конструкцию подобного вида. chat_id и permissions имеют строгие названия и передаются в качестве POST данных.

Подобное должно работать:
prm = {
            'can_send_messages' : True,
            'can_send_media_messages' : True,
            'can_send_polls' : True,
            'can_send_other_messages' : True,
            'can_add_web_page_previews' : True,
            'can_invite_users' : True
        }

payload = {
        'chat_id': -1001386422499,
        'permissions': prm
    }

requests.post(url, data=payload)


Если не работает - все данные должны быть в подобном виде, и chat_id и permissions - параметры POST, возможно разрешения необходимо будет преобразовать в json строку
Ответ написан
WhiteMarlin
@WhiteMarlin
I think it's fixed. My bot managed to send a message to the channel.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы