def addnewschannel(self, ctx, channel_prefix: str=None):
"""Adds news functionality for a channel. Channel prefix is
any part of the channel name that should not be included in
the name of the role to be created for notifications"""
channel = ctx.message.channel
server = ctx.message.server
if server.id not in self.settings:
self.settings[server.id] = {}
if channel.id not in self.settings[server.id]:
self.settings[server.id][channel.id] = {}
if channel_prefix:
new_role_name = channel.name.replace(channel_prefix, "") +\
" news"
else:
new_role_name = channel.name
try:
new_role = await self.bot.create_role(server, name=new_role_name,
permissions=discord.Permissions(permissions=0))
except discord.Forbidden:
await self.bot.say("I cannot create roles!")
return
except discord.HTTPException:
await self.bot.say("Something went wrong!")
return
await self.bot.say("Role created!")
self.settings[server.id][channel.id]["role_id"] = new_role.id
self.settings[server.id][channel.id]["joined"] = []
dataIO.save_json("data/newsannouncer/settings.json", self.settings)
评论列表
文章目录