さて、私は絶対に困惑しています。これに対してテストする方法でいくつかの方法を試しましたが、これらの方法を試しました:
_if (msg.channel.isDM) ... Produced undefined
if (msg.isDM) ... Produced undefined
if (msg.channel.DMChannel.isDM) ... produced undefined
if (msg.DMChannel) ... produced undefined
if (msg.channel.DMChannel.dm) ... produced undefined
if (msg.channel.dm) ... produced undefined
_
私はコンソールでmsg
を作成し、これをどこで行うのかを解読しようとした後、すべてを試しました。ドキュメントでさえ、どこでこれをチェックするかについて明確ではありません。私は_<message>.channel.dm
_を噴出するだけの複数の「ソリューション」を見てきましたが、それはうまくいきません。
編集:つまり、_<message>.isDM
_...のようですが、私のコマンドではこれは機能しません。 console.log(msg)
が期待どおりのtrue
を生成したときに、配列でisDMを見つけることができます。ただし、console.log(msg.isDM)
を実行するとundefined
が出力されます...明らかに定義されているため、奇妙なことに...
これを処理する方法がいくつか見つかりました:
<message>.channel.type === dm
ただし、これには単一のDMのみが含まれますが、グループなどは許可されます。
message.guild === null
はすべてのDMをチェックします(DMの場合、ギルドは常にnullになります)。
DMChannel
はクラスなので、message.channel instanceof DMChannel
は動作するはずです。