Make Support Channel Private Between Those Who Need Help and Those Who Have a Moderator Role !
//Type !support to use this code.
const lib = require('lib')({token: process.env.STDLIB_SECRET_TOKEN});
const Mod = 'Your Role Id'
const guild_id = `Your (Guild/Server) Id`
const categoryid = `Category ID of The CHANNEL`
let members = await lib.discord.guilds['@0.1.0'].members.list({ guild_id, limit: 100 });
let permissions = [
{
id: `${context.params.event.guild_id}`,
type: 0,
deny: `${1 << 10}`
},
{
id: `${context.params.event.member.user.id}`,
type: 1,
allow: `${1 << 10}`
}
];
for (let i = 0; i < members.length; i++){
for (let r = 0; r < members[i].roles.length; r++){
if (members[i].roles[r] == `${Mod}`){ //This is the code where people with roles are added.
permissions.push({ id: members[i].user.id, type: 1, allow: `${1 << 10}`});
}
}
}
let channelname = await lib.discord.guilds['@0.2.4'].channels.create({
guild_id: guild_id,
name: `${context.params.event.member.user.username}`,
topic: `${context.params.event.member.user.username}'s Support Channel`,
parent_id: categoryid,
permission_overwrites: permissions
});
lib.discord.channels['@0.3.2'].messages.create({
channel_id: channelname,
content: `Message Content`
});