Telegram Bot: Можем ли мы определить, отправлено ли сообщение администратором группы?

Я добавил своего бота в групповой чат, теперь для нескольких команд мне нужно дать доступ только администратору группы, поэтому можно ли определить, является ли отправитель сообщения администратором группы? Я использую библиотеку python-telegram-bot


person ThiyagaB    schedule 22.01.2018    source источник
comment
На это был дан ответ здесь. Проверить API отправителя сообщения   -  person Dhnesh Dhingra    schedule 30.08.2018


Ответы (3)


Это абсолютно возможно. Вы можете использовать метод API getChatAdministrators ( возвращает список ChatMember), чтобы получить список администраторов для чат или метод API getChatMember ( возвращает один ChatMember), чтобы получить статус администратора одного пользователя .

Эффективный метод решения этой проблемы описан здесь: https://github.com/python-telegram-bot/python-telegram-bot/wiki/Code-snippets#cached-telegram-group-administrator-проверить

person jh0ker    schedule 23.01.2018

Когда вы используете getUpdates, вы можете видеть, что .message.chat.type является group или нет.

Затем используйте getChatMember, .result.status должно быть administrator или creator.

person Sean    schedule 22.01.2018

Нет. Вам нужно жестко закодировать идентификатор пользователя в исходном коде и сравнить его с идентификатором пользователя в массиве admin-ids.

person lov3catch    schedule 23.01.2018