the entire bot
This commit is contained in:
commit
61eb1d55c3
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
*.mp3
|
||||||
|
token
|
56
ticker.py
Normal file
56
ticker.py
Normal file
|
@ -0,0 +1,56 @@
|
||||||
|
import discord
|
||||||
|
from datetime import datetime
|
||||||
|
from gtts import gTTS
|
||||||
|
from forex_python.converter import CurrencyRates
|
||||||
|
from apscheduler.schedulers.asyncio import AsyncIOScheduler
|
||||||
|
from apscheduler.triggers.cron import CronTrigger
|
||||||
|
|
||||||
|
c = CurrencyRates()
|
||||||
|
client = discord.Client()
|
||||||
|
|
||||||
|
@client.event
|
||||||
|
async def on_ready():
|
||||||
|
print(client.user.name)
|
||||||
|
|
||||||
|
def update(func):
|
||||||
|
async def wrapper():
|
||||||
|
filename = await func()
|
||||||
|
|
||||||
|
await client.wait_until_ready()
|
||||||
|
|
||||||
|
guild = client.get_guild(665399296522321942) # id of seguis III
|
||||||
|
|
||||||
|
channels = sorted(guild.voice_channels, key = lambda x: len(x.members), reverse = True)
|
||||||
|
channel = channels[0] if len(channels) else client.get_channel(673203690672357422) # main channel of seguis III
|
||||||
|
|
||||||
|
voice_client = await channel.connect()
|
||||||
|
source = discord.FFmpegOpusAudio(filename)
|
||||||
|
voice_client.play(source, after=lambda e: print('fucky wucky: %s' % e) if e else None)
|
||||||
|
|
||||||
|
while voice_client.is_playing():
|
||||||
|
pass
|
||||||
|
await voice_client.disconnect()
|
||||||
|
|
||||||
|
print(filename + " played at " + str(datetime.now()))
|
||||||
|
return wrapper
|
||||||
|
|
||||||
|
@update
|
||||||
|
async def ticker():
|
||||||
|
tts = gTTS("The current JPY exchange rate is " + str(c.get_rate('USD', 'JPY')) + " yen to a dollar")
|
||||||
|
tts.save('rate.mp3')
|
||||||
|
return "rate.mp3"
|
||||||
|
|
||||||
|
@update
|
||||||
|
async def flatten():
|
||||||
|
tts = gTTS("matt its time for your 4pm dick flattening")
|
||||||
|
tts.save('flatten.mp3')
|
||||||
|
return "flatten.mp3"
|
||||||
|
|
||||||
|
s = AsyncIOScheduler(event_loop = client.loop)
|
||||||
|
s.add_job(ticker, trigger = CronTrigger(hour='0-20,22-23'))
|
||||||
|
s.add_job(flatten, trigger = CronTrigger(hour='21'))
|
||||||
|
s.start()
|
||||||
|
|
||||||
|
with open("token") as file:
|
||||||
|
token = file.readline()
|
||||||
|
client.run(token)
|
Loading…
Reference in New Issue
Block a user