Discord Bot - реакция голосования с использованием бота YAGPDB - PullRequest
0 голосов
/ 20 апреля 2020

На указанных c каналах я хотел бы добавить реакции upvote? и downvote? с 0 голосами изначально ко всем сообщениям. Если на какой-либо пост проголосуют хотя бы 50% пользователей на сервере (за исключением, конечно, ботов), я бы хотел отправить уведомление всем пользователям и прикрепить это сообщение. После закрепления этого сообщения я хотел бы добавить готовую реакцию (зеленую галочку) только тем пользователям, которые проголосовали, когда-то 75% пользователей, которые проголосовали, теперь проголосовали "готово". Я хотел бы открепить это сообщение. Это возможно? Я новичок ie прости меня, если это глупый вопрос. Есть ли бот, который делает это уже? Если нет, то как мне go узнать об этом?

Вот что я пробовал до сих пор, используя бот YAGPDB , я создал следующую пользовательскую команду {{addMessageReactions nil $.Message.ID "⬆️" "⬇️" "✅"}} Тип триггера: Contains и триггер пуст , поэтому реакции генерируются для каждого сообщения. Я выбрал каналы, на которых я хочу, чтобы это происходило, а также дал ему соответствующую роль и разрешения (Управление сообщениями, Добавление реакций и т. Д. c). Это работает, если любой пользователь вводит что-либо. Однако, когда YAGPDB публикует сообщение из канала Reddit, эти реакции не генерируются. Хотя я не понимаю почему. Любой совет по этому вопросу высоко ценится! Даже если я могу просто сгенерировать эти 3 реакции и не смогу добиться закрепления сообщений, как описано в первом абзаце, это нормально.

1 Ответ

0 голосов
/ 20 апреля 2020

Судя по тому, что вы хотите сделать, я думаю, вам следует попробовать предоставить какой-то код, который вы пробовали, и если вы столкнетесь с проблемой, приходите сюда. Я бы начал с использования для l oop для сообщений в этом канале и использования message.add_reaction . И затем я бы использовал on_raw_reaction_add и удалил события, чтобы получить количество реакций, и если есть не менее 2, которых нет у бота, он будет использовать message.remove_reaction , чтобы удалить их.

...