Discord.js 机器人提到语音通道

Posted

技术标签:

【中文标题】Discord.js 机器人提到语音通道【英文标题】:Discord.js Bot mentioning Voice Channels 【发布时间】:2021-07-04 07:55:59 【问题描述】:

我有一个特定的事件 (voiceStateUpdate),有时需要提及语音通道:

            channel.send(`The Channel is:`+"``"+`<#$newMember.channelID>`+"``");

正如人们所看到的,我希望频道与他们周围的 `` 一起被提及,所以 Discord 中的频道在这个黑盒子里。但我的实际输出是这样的:

频道是:&lt;#1234134234134&gt;

所以在 Discord 中,这个黑匣子可以工作,但是频道不是用它的名字显示的,而是用 ID 显示的

【问题讨论】:

这不是 SO 问题@Toasty 的答案 我已经复制了您的问题,我认为 Discord 根本不允许这样做。如果你以两个 ` 开头,然后进入频道 然后关闭它,它就可以工作。 i.imgur.com/eFm9Vya.gif 你不能在“``”周围提及 【参考方案1】:

要得到正确的结果,你只需模仿 Discord 对 格式的转换。

channel.send(`The Channel is:`+"`"+`$newMember.channel.name`+"`");

这将得到完全相同的结果,就好像一个用户将使用 Discord 的转换表单发布消息一样

【讨论】:

【参考方案2】:

试试这个方法:

channel.send('`' + `The Channel is: <#$newMember.channelId>` + '`');

对于单行code block,您只需将其包裹在重音符号中一次。

编辑:

grafpatron's answer 是正确的

【讨论】:

this question 能解决您的问题吗?

以上是关于Discord.js 机器人提到语音通道的主要内容,如果未能解决你的问题,请参考以下文章

如何将变量设置为用户指定的语音通道 - Discord.js

Discord.js 将 mpeg 音频流流式传输到语音通道

自动更新嵌入 (discord.js)

加入机器人 discord.js 的语音频道后如何忽略相同的命令

Discord.js 在文本频道中加入/离开语音频道通知

Discord 机器人不离开语音频道