prevent images from being too big for discord
This commit is contained in:
+23
-20
@@ -135,26 +135,29 @@ async def on_message(message: discord.Message):
|
|||||||
else:
|
else:
|
||||||
with tempfile.NamedTemporaryFile(delete=False) as output:
|
with tempfile.NamedTemporaryFile(delete=False) as output:
|
||||||
img.save(output, format="JPEG")
|
img.save(output, format="JPEG")
|
||||||
response = None
|
if os.stat(output.name).st_size > 8 * 1024 * 1024: # 8MB
|
||||||
meme_id = utils.sanitize_input(args[0])
|
await message.channel.send(":warning:\nOutput image is too big to be sent by discord")
|
||||||
if len(args) == 1 and meme_id not in ["image", "text"]:
|
else:
|
||||||
meme = meme_db.get_meme(meme_id)
|
response = None
|
||||||
response = f"Template `{meme.id}`:"
|
meme_id = utils.sanitize_input(args[0])
|
||||||
if len(meme.aliases) > 0:
|
if len(args) == 1 and meme_id not in ["image", "text"]:
|
||||||
response += f"\n- Aliases: `{'`, `'.join(meme.aliases)}`"
|
meme = meme_db.get_meme(meme_id)
|
||||||
if meme.info is not None:
|
response = f"Template `{meme.id}`:"
|
||||||
response += f"\n- More info: <{meme.info}>"
|
if len(meme.aliases) > 0:
|
||||||
response += f"\n- Use:" \
|
response += f"\n- Aliases: `{'`, `'.join(meme.aliases)}`"
|
||||||
f"\n```{meme.id} \"" + \
|
if meme.info is not None:
|
||||||
"\" \"".join([f"text {i + 1}" for i in range(meme.texts_len)]) + \
|
response += f"\n- More info: <{meme.info}>"
|
||||||
"\"```"
|
response += f"\n- Use:" \
|
||||||
elif not is_direct:
|
f"\n```{meme.id} \"" + \
|
||||||
response = f"A meme by {message.author.mention}:"
|
"\" \"".join([f"text {i + 1}" for i in range(meme.texts_len)]) + \
|
||||||
if message_id not in SENT:
|
"\"```"
|
||||||
SENT[message_id] = []
|
elif not is_direct:
|
||||||
response = await message.channel.send(response,
|
response = f"A meme by {message.author.mention}:"
|
||||||
file=discord.File(filename="meme.jpg", fp=output.name))
|
if message_id not in SENT:
|
||||||
SENT[message_id] += [response]
|
SENT[message_id] = []
|
||||||
|
response = await message.channel.send(response,
|
||||||
|
file=discord.File(filename="meme.jpg", fp=output.name))
|
||||||
|
SENT[message_id] += [response]
|
||||||
try:
|
try:
|
||||||
os.remove(output.name)
|
os.remove(output.name)
|
||||||
except PermissionError:
|
except PermissionError:
|
||||||
|
|||||||
Reference in New Issue
Block a user