Compare commits
3 Commits
3eb51523bb
...
fbba13afe5
Author | SHA1 | Date | |
---|---|---|---|
fbba13afe5 | |||
df31bdd61c | |||
a864af61b3 |
@ -1,3 +1,4 @@
|
|||||||
# video_bot
|
# Matrix youtube bot
|
||||||
|
|
||||||
Matrix bot that dowloads youtube links and puts them on my website so that they can be watched without proprietary software.
|
A simple matrix bot that downloads youtube links and puts them on webserver so that they can be watched directly without proprietary software.
|
||||||
|
I have it running as [@video_bot:trygve.me](https://matrix.to/#/@video_bot:trygve.me) if you want to use it. The bot does not support encrypted rooms.
|
||||||
|
22
main.py
22
main.py
@ -15,24 +15,12 @@ class MyLogger(object):
|
|||||||
def error(self, msg):
|
def error(self, msg):
|
||||||
print(msg)
|
print(msg)
|
||||||
|
|
||||||
|
|
||||||
creds = botlib.Creds(config['url'], config['username'], config['password'])
|
|
||||||
bot = botlib.Bot(creds)
|
|
||||||
|
|
||||||
def progress_hook(d):
|
def progress_hook(d):
|
||||||
if d['status'] == 'started':
|
if d['status'] == 'started':
|
||||||
print('Started downloading')
|
print('Started downloading')
|
||||||
elif d['status'] == 'finished':
|
elif d['status'] == 'finished':
|
||||||
print('Done downloading')
|
print('Done downloading')
|
||||||
|
|
||||||
ydl_opts = {
|
|
||||||
'format': config['yt_dlp_format'],
|
|
||||||
'outtmpl': config['download_dir'] + '/%(title)s.%(ext)s',
|
|
||||||
'restrictfilenames': True,
|
|
||||||
'logger': MyLogger(),
|
|
||||||
'progress_hooks': [progress_hook],
|
|
||||||
}
|
|
||||||
|
|
||||||
def get_yt_vid_id(word):
|
def get_yt_vid_id(word):
|
||||||
if search('www.youtube.com/watch', word):
|
if search('www.youtube.com/watch', word):
|
||||||
return word
|
return word
|
||||||
@ -58,4 +46,14 @@ async def youtube(room, message):
|
|||||||
except Exception as e:
|
except Exception as e:
|
||||||
await bot.api.send_text_message(room.room_id, str(e))
|
await bot.api.send_text_message(room.room_id, str(e))
|
||||||
|
|
||||||
|
creds = botlib.Creds(config['url'], config['username'], config['password'])
|
||||||
|
bot = botlib.Bot(creds)
|
||||||
|
ydl_opts = {
|
||||||
|
'format': config['yt_dlp_format'],
|
||||||
|
'outtmpl': config['download_dir'] + '/%(title)s.%(ext)s',
|
||||||
|
'restrictfilenames': True,
|
||||||
|
'logger': MyLogger(),
|
||||||
|
'progress_hooks': [progress_hook],
|
||||||
|
}
|
||||||
|
|
||||||
bot.run()
|
bot.run()
|
||||||
|
Loading…
Reference in New Issue
Block a user