From 80217fcc4e9e6e2d34dd322898cb474d2542c420 Mon Sep 17 00:00:00 2001 From: Fadi AT Date: Mon, 30 Mar 2020 14:32:48 +0300 Subject: [PATCH] fetching format from jsonfile thats in github --- welcomeCog/info.json | 13 +++++++++++++ welcomeCog/welcome.py | 37 +++++++++++++++++++------------------ 2 files changed, 32 insertions(+), 18 deletions(-) create mode 100644 welcomeCog/info.json diff --git a/welcomeCog/info.json b/welcomeCog/info.json new file mode 100644 index 0000000..605d4b1 --- /dev/null +++ b/welcomeCog/info.json @@ -0,0 +1,13 @@ +{ + "author": [ + "Deathblade" + ], + "install_msg": "May Kanuim show you the way", + "name": "Welcome", + "short": "Sends a welcome dm thats written in a specific format to the users", + "description": "Sends a welcome dm thats written in a specific format to the users", + "requirements": ["requests"], + "tags": [ + "welcome" + ] +} \ No newline at end of file diff --git a/welcomeCog/welcome.py b/welcomeCog/welcome.py index 67b251b..8a8be24 100644 --- a/welcomeCog/welcome.py +++ b/welcomeCog/welcome.py @@ -1,36 +1,37 @@ import discord from discord.ext import commands import json +import requests -def fetchMessage(): - with open('embedded_message.json') as file: - try: - jsonFormat = json.load(file) - print(int(jsonFormat["color"],16)) - message=discord.Embed(title=str(jsonFormat["title"]), description="".join(map(str, jsonFormat["description"])), color=int(jsonFormat["color"],16)) - message.set_thumbnail(url=jsonFormat["thumbnail"]) - for field in jsonFormat["fields"]: - if(field["id"]!="links"): - message.add_field(name=field["name"], value=field["value"], inline=field["inline"]) - else: - message.add_field(name=field["name"], value="".join(map(str,field["value"])), inline=field["inline"]) +embed = requests.get("https://raw.githubusercontent.com/Kanium/KanuimCogs/master/welcomeCog/embedded_message.json").text - message.set_footer(text=jsonFormat["footer"]["text"], icon_url=jsonFormat["footer"]["icon_url"]) - return message +def fetchMessage(jsonFormat): + try: + message=discord.Embed(title=str(jsonFormat['title']), description=''.join(map(str, jsonFormat['description'])), color=hex(jsonFormat['color'])) + message.set_thumbnail(url=jsonFormat['thumbnail']) + for field in jsonFormat['fields']: + if(field['id']!='links'): + message.add_field(name=field['name'], value=field['value'], inline=field['inline']) + else: + message.add_field(name=field['name'], value=''.join(map(str,field['value'])), inline=field['inline']) - except: - return "Welcome To Kanuim !" + message.set_footer(text=jsonFormat['footer']['text'], icon_url=jsonFormat['footer']['icon_url']) + return message + + except: + return 'Welcome To Kanuim !' class WelcomeCog(commands.Cog): def __init__(self, bot): - self.message = fetchMessage() + self.message = json.load(embed) self.bot = bot @commands.Cog.listener() @commands.guild_only() async def on_member_join(self, member: discord.Member): try: - await member.send(content=None, embed=self.message) + message = fetchMessage(self.message) + await member.send(content=None, embed=message) except: print( f'Error Occured! sending a dm to {member.display_name} didnt work !')