Created bot
This commit is contained in:
parent
4813ec7a65
commit
943c8e35c8
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -1,3 +1,5 @@
|
||||||
|
token
|
||||||
|
|
||||||
# ---> Python
|
# ---> Python
|
||||||
# Byte-compiled / optimized / DLL files
|
# Byte-compiled / optimized / DLL files
|
||||||
__pycache__/
|
__pycache__/
|
||||||
|
|
2
LICENSE
2
LICENSE
|
@ -1,4 +1,4 @@
|
||||||
MIT License Copyright (c) <year> <copyright holders>
|
MIT License Copyright (c) 2020 xenofem <xenofematxenodotscience>
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
|
10
README.md
10
README.md
|
@ -1,3 +1,13 @@
|
||||||
# data-expunged
|
# data-expunged
|
||||||
|
|
||||||
Discord bot to help mobile users spoiler uploaded images
|
Discord bot to help mobile users spoiler uploaded images
|
||||||
|
|
||||||
|
## Setup
|
||||||
|
|
||||||
|
git clone https://git.xeno.science/xenofem/data-expunged
|
||||||
|
cd data-expunged
|
||||||
|
python3 -m venv env
|
||||||
|
source env/bin/activate
|
||||||
|
pip install discord.py
|
||||||
|
echo <token> > token
|
||||||
|
python data_expunged.py
|
||||||
|
|
45
data_expunged.py
Normal file
45
data_expunged.py
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
import discord
|
||||||
|
import io
|
||||||
|
import sys
|
||||||
|
|
||||||
|
client = discord.Client()
|
||||||
|
|
||||||
|
@client.event
|
||||||
|
async def on_ready():
|
||||||
|
print('logged in as {0.user}'.format(client), file=sys.stderr)
|
||||||
|
|
||||||
|
@client.event
|
||||||
|
async def on_message(message):
|
||||||
|
if message.author == client.user:
|
||||||
|
return
|
||||||
|
|
||||||
|
if ('spoil' in message.content.lower()
|
||||||
|
and message.author.is_on_mobile()
|
||||||
|
and message.attachments
|
||||||
|
and not any(a.is_spoiler() for a in message.attachments)):
|
||||||
|
|
||||||
|
attachments = []
|
||||||
|
try:
|
||||||
|
for a in message.attachments:
|
||||||
|
f = await a.to_file()
|
||||||
|
f.filename = 'SPOILER_' + f.filename
|
||||||
|
attachments.append(f)
|
||||||
|
except (discord.HTTPException, discord.Forbidden, discord.NotFound) as e:
|
||||||
|
print('error reading attachments: {0}'.format(e), file=sys.stderr)
|
||||||
|
return
|
||||||
|
|
||||||
|
try:
|
||||||
|
await message.channel.send("{0} says: {1}".format(message.author.mention, message.content), files=attachments)
|
||||||
|
except (discord.HTTPException, discord.Forbidden, discord.InvalidArgument) as e:
|
||||||
|
print('error sending message: {0}'.format(e), file=sys.stderr)
|
||||||
|
return
|
||||||
|
|
||||||
|
try:
|
||||||
|
await message.delete()
|
||||||
|
except (discord.HTTPException, discord.Forbidden, discord.NotFound) as e:
|
||||||
|
print('error deleting message: {0}'.format(e))
|
||||||
|
return
|
||||||
|
|
||||||
|
with open('token') as f:
|
||||||
|
token = f.read().strip()
|
||||||
|
client.run(token)
|
Loading…
Reference in a new issue