allowedMentions
discord.jsではsendなどのallowedMentionsがundefiendである場合はClientオプションのallowedMentionsが参照されます。
次のサンプルではhereメンション、ユーザー123へのメンション、ロール124へのメンションのすべてが有効です。
code: example1.js
channel.send({ content: "@here Hi there from <@123>, cc <@&124>" });
次の例ではメンションは一切行われません。
code: example2.js
channel.send({
content: "@everyone hi there, <@&123>",
allowedMentions: {
parse: []
}
});
次の例ではユーザー123とロール124にのみメンションが行われます。(everyoneメンションは行われません)
usersならびにrolesは値がFalsyな場合無視されます。 code: example3.js
channel.send({
content: "@everyone <@123> <@&124>",
allowedMentions: {
users: []
}
});
次の例ではeveryone、ユーザー123、ユーザー124へメンションが行われます。
ユーザー125、役職200へはメンションしたことになりません。
everyoneとしての意味しか持たないという意味です(everyoneの通知を無効にしている場合通知が届きません)。
code: example4.js
channel.send({
content: "@everyone <@123> <@124> <@125> <@&200>",
allowedMentions: {
}
});
次の例はparseにusersが含まれていて、かつTruthyなusersフィールドをallowedMentionsオブジェクトが持っているので不正です。 code:example5.js
channel.send({
content: "@everyone <@123> <@124> <@125> <@&200>",
allowedMentions: {
}
});
次の例ではユーザー123のみにメンションが行われます。
125はcontent内にメンションが存在しないのでメンションされません。
code:example6.js
channel.send({
content: "<@123> Time for some memes.",
allowedMentions: {
}
});