Как прописать удаление пользователя из чата ВК, python? Пробовал так, но в документации непонятно, к чему это. К vk_api не подходит: messages.removeChatUser({"chat_id": chat_id, "user_id": user_id, "random_id": 0})
def main(): for event in longpoll.listen(): if event.type == VkBotEventType.MESSAGE_NEW and (action := event.obj['message'].get('action')): if action['type'] == 'chat_kick_user': vk.messages.removeChatUser( chat_id=event.chat_id, user_id=action['member_id'], )
if __name__ == '__main__': main() Не забудьте, что боту необходимо выдать права администратора беседы
Отследить выход человека из беседы можно, проверяя сообщение на наличие ключа action с типом chat_kick_user.
Пример (Python 3.8+):
from vk_api import VkApi
from vk_api.bot_longpoll import VkBotLongPoll, VkBotEventType
ACCESS_TOKEN = '' # Подставьте свой!
GROUP_ID = # Подставьте свой!
vk_session = VkApi(token=ACCESS_TOKEN)
vk = vk_session.get_api()
longpoll = VkBotLongPoll(vk_session, GROUP_ID)
def main():
for event in longpoll.listen():
if event.type == VkBotEventType.MESSAGE_NEW and (action := event.obj['message'].get('action')):
if action['type'] == 'chat_kick_user':
vk.messages.removeChatUser(
chat_id=event.chat_id,
user_id=action['member_id'],
)
if __name__ == '__main__':
main()
Не забудьте, что боту необходимо выдать права администратора беседы