Бот в Discord читает эмодзи, чтобы назначить роли

Хорошо, я наконец-то заставил смайлики работать благодаря ~ slothiful ~.

Я не пытаюсь назначить боту роль на основе реакции на сообщение, которое публикуется в соответствии с правилами сервера.

bot.on('message', (message) => {
        if (message.content == ':joy:' ) {
                message.member.roles.add(Yard);
        }
});

Спасибо за ответ


person Soulless Rekkr    schedule 31.03.2020    source источник


Ответы (1)


Вы должны использовать версии смайликов в Юникоде, потому что в них преобразуются шаблоны. Это означает, что то, что вы набрали как :joy:, на самом деле ???? в message.content.

Чтобы получить символы Юникода из любого эмодзи в Discord, отправьте, например, \:joy: и скопируйте полученное сообщение. Для дальнейшего пояснения в обоих случаях :joy: и \:joy:, message.content будет читать ????.

Ознакомьтесь с этим руководством для получения дополнительной информации о том, как работают смайлы, и о сборе реакций.

person slothiful    schedule 31.03.2020