2017-01-19 3 views
2

Я использую библиотеку discord.js и node.js, чтобы создать бонус Discord, который облегчает покер. Это функционально, за исключением того, что руки показаны всем, и мне нужно пройти через игроков и отправить им DM с их стороны.discord.js - Отправка личных сообщений пользователю

bot.on("message", message => { 
message.channel.sendMessage("string"); 
}) 

Это код, который отправляет сообщение на канал, когда любой пользователь отправляет сообщение. Мне нужен бот, чтобы ответить в частном канале; Я видел dmChannel, но я не понимаю, как его использовать. У меня есть имя пользователя, к которому я хочу отправить сообщение. Пример был бы оценен.

Редактировать: Осмотрев объект для пользователя, я обнаружил, что могу получить всех пользователей с использованием свойства .users клиента (бота). В ближайшее время я попытаюсь использовать метод user.sendMessage ("string").

+0

Я еще не работаю с discord.js. Можете ли вы создать User-Object? Если это так, вы можете использовать 'UserObject.sendMessage (« string »);' –

+0

Бот - это клиент, вот страница документа: https://discord.js.org/#/docs/main/stable/class/ Клиент. Ваш код не будет работать, потому что sendMessage не является методом клиента. Я собираюсь посмотреть, могу ли я создать объект пользователя. – adapap

+2

Вы пробовали 'message.author.sendMessage (" XXX ")'? Я использую это в версии 10.0.1 библиотеки. – JulCh

ответ

8

Для того, чтобы бот мог отправить сообщение, вам необходимо <client>.sendMessage(), client - это то, где бот отправит сообщение (канал, всюду на сервере или PM). Поскольку вы хотите, чтобы бот был PM определенным пользователем, вы можете использовать message.author как ваш client. (Можно заменить author, как указано пользователем в сообщении или что-то, и т.д.)

Следовательно, ответ: message.author.sendMessage("Your message here.")

Я рекомендую смотреть на документацию Discord.js о свойствах определенного объекта всякий раз, когда вы застряли, вы можете найти определенную функцию, которая может служить вашим решением.

+4

Помните, что документация discord.js (https: //discord.js .org/#/docs/main/stable/general/welcome) записывается как javadoc и может не всегда быть эффективным для использования примеров использования или перевода намерения в код. Неразумно предлагать кому-то изучить всю библиотеку для конкретной реализации, если для этого существуют такие сайты, как StackOverflow. Лучше всего указать их на документацию относительно их вопроса (https://discord.js.org/#/docs/main/stable/search?q=sendmessage). – LoungeKatt

+1

'.sendMessage ('content')' теперь устарел - вместо этого используйте '.send ('content')' –

Смежные вопросы