[英]Send a greeting message when new channel created using discord.js?
async function CreateChannel(msg,channelName){
return await Promise.resolve(msg.guild.channels.create(channelName,{parent: 'PARENT_ID'})
.then((msg.channel.send(`${channelName} named channel created !!`)))
.catch(console.error));
}
function SendMessageToChannel(msg,message,channelName){
const channel = msg.guild.channels.cache.find(ch => ch.name === channelName);
if(!channel) return;
channel.send(message);
}
我使用上述兩個函數針對特定命令創建通道
例如: !channel surf
使用 surf 創建一個新的頻道名稱。
我想要的是在創建頻道時我想自動創建一條問候消息,例如
Welcome to Channel!
但是我所面臨的沒有通過SendMessageToChannel中的代碼發送,因為消息行會的緩存沒有更新。
幫我解決這個問題!!
先感謝您
我的問題的解決方案
async function CreateChannel(msg,channelName){
const channelCheck = msg.guild.channels.cache.find(ch => ch.name == channelName);
if(!channelCheck){
return await Promise.resolve(msg.guild.channels.create(channelName,{parent: '706748967790182401'})
.then(() => {
msg.channel.send(`${channelName} named channel created !!`);
SendMessageToChannel(msg,`Welcome to the ${channelName}!`,channelName);
})
.catch(console.error));
}
else{
msg.reply(`${channelName} already exists!`);
}
}
而不是在CreateChannel之后調用SendMessageToChannel我在 Channel Creation promise 被解決時調用了所以在創建通道之后可以立即發送問候/消息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.