PDA

Просмотр полной версии : Node js как реализовать массовый кик vk api


Kecer
24.09.2022, 21:17
Вопрос следующий, используя библиотеку vk io, мне нужно сделать массовый кик из всех бесед где есть юзер, условно говоря у меня есть несколько бесед, и в каждой из бесед имеется бот, и что бы мне в каждой беседе не кикать юзера, я решил облегчить себе жизнь, условно говоря пишу я команду /kick id в лс боту, запускается процесс, бот проверяет где состоит этот юзер и там где он состоит, он кикает и отправляет сообщение в тот чат откуда он кикнул его,

"Пользователь успешно исключён из беседы", на скрине ниже виден пример

https://habrastorage.org/webt/63/2f/2f/632f2f2507ebd931211727.png

neverlane
26.09.2022, 09:56
получаем все беседы в которых есть бот (https://www.blast.hk/redirect/aHR0cHM6Ly9kZXYudmsuY29tL21ldGhvZC9tZXNzYWdlcy5nZX RDb252ZXJzYXRpb25z)

получаем участников бесед (https://www.blast.hk/redirect/aHR0cHM6Ly9kZXYudmsuY29tL21ldGhvZC9tZXNzYWdlcy5nZX RDb252ZXJzYXRpb25NZW1iZXJz)

чекаем участников каждой беседы: есть чел - кик (https://www.blast.hk/redirect/aHR0cHM6Ly9kZXYudmsuY29tL21ldGhvZC9tZXNzYWdlcy5yZW 1vdmVDaGF0VXNlcg)

ещё проще можно сделать если при добавлении чела в беседу сейвить его в бд и при вызове команды получать все беседы где есть юзер(сам уже логику продумаешь)

можно ещё сделать несколько вызовов метода апи за раз с помощью execute (https://www.blast.hk/redirect/aHR0cHM6Ly9kZXYudmsuY29tL21ldGhvZC9leGVjdXRl)

Михаил Бластов
25.10.2022, 00:51
я знаю, что вопрос скорее всего решен, но предложу свое решение.

1. Хранить в JSON (или в базе данных) id бесед откуда нужно кикнуть человека.

2. При вводе команды перебирать все беседы из JSON или базы и кикать пользователя.

3. Если пользователь не состоит в беседе - вернется ошибка.

4. Если пользователь состоит в беседе и был успешно кикнут - ошибки нет.

Далее просто собираешь из полученных данных сообщение и готово.

Для ускорения кика пользователя с бесед можно использовать метод execute как сказал neverlane.