From 534b2df0bf398507b319d2b18c4a8635e399ec05 Mon Sep 17 00:00:00 2001 From: G2-Games Date: Sun, 19 Jan 2025 15:43:57 -0600 Subject: [PATCH] Reorganized to package structure --- .gitignore | 14 +++++++- README.md | 2 -- assets/unknown.png | Bin 99980 -> 0 bytes pyproject.toml | 12 ++++++- src/oden/__init__.py | 1 + src/{ => oden}/main.py | 72 +++++++++++++++++++++------------------- src/{ => oden}/utils.py | 8 ++--- uv.lock | 4 +-- 8 files changed, 69 insertions(+), 44 deletions(-) delete mode 100644 assets/unknown.png create mode 100644 src/oden/__init__.py rename src/{ => oden}/main.py (93%) rename src/{ => oden}/utils.py (95%) diff --git a/.gitignore b/.gitignore index d50a09f..e3234c0 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,14 @@ -.env +# Python-generated files __pycache__/ +*.py[oc] +build/ +dist/ +wheels/ +*.egg-info + +# Virtual environments +.venv + +# Other stuff +.env +.python-version diff --git a/README.md b/README.md index 1ef5ab2..e69de29 100644 --- a/README.md +++ b/README.md @@ -1,2 +0,0 @@ -# simple-discord-music-bot -A simple discord music bot. Run it yourself! diff --git a/assets/unknown.png b/assets/unknown.png deleted file mode 100644 index 69a25838ff88b93741079c4a99269b0cc40a5490..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 99980 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%0ACbLnJexKhyN7G-z`~$tMUOC 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 Lp=0.2.1", @@ -13,3 +16,10 @@ dependencies = [ "stringprogressbar>=1.1.1", "yt-dlp>=2025.1.15", ] + +[project.scripts] +oden = "oden:main" + +[build-system] +requires = ["hatchling"] +build-backend = "hatchling.build" diff --git a/src/oden/__init__.py b/src/oden/__init__.py new file mode 100644 index 0000000..f21634f --- /dev/null +++ b/src/oden/__init__.py @@ -0,0 +1 @@ +import oden.main diff --git a/src/main.py b/src/oden/main.py similarity index 93% rename from src/main.py rename to src/oden/main.py index 5cb024d..f5d7443 100644 --- a/src/main.py +++ b/src/oden/main.py @@ -1,9 +1,14 @@ import io -import discord, subprocess, glob, os, os.path, ffmpeg -import re, time, datetime, yt_dlp, typing, functools -import logging, json +import discord +import subprocess +import glob +import os +import os.path +import time +import datetime +import yt_dlp +import logging from time import strftime, gmtime -from yt_dlp import YoutubeDL from asyncio import sleep from discord.ext import commands from StringProgressBar import progressBar @@ -15,12 +20,12 @@ from typing import Optional, TypedDict ## LOCAL IMPORTS ## ##### -import utils -from utils import QueueItem +import oden.utils as utils +from oden.utils import QueueItem logging.basicConfig() -ServerInfo = TypedDict('ServerInfo', { +ServerInfo = TypedDict("ServerInfo", { "loop": bool, "paused": bool, "elapsed": int, @@ -108,7 +113,7 @@ async def play(ctx, *, query: Optional[str] = None): # Make sure the file is either audio or video filetype = song.content_type - if filetype is None or (filetype.split('/')[0] != "audio" and filetype.split('/')[0] != "video"): + if filetype is None or (filetype.split("/")[0] != "audio" and filetype.split("/")[0] != "video"): success_string += ":no_entry_sign: — `" + song.filename + "`, invalid file!\n" continue @@ -138,7 +143,7 @@ async def play(ctx, *, query: Optional[str] = None): notice = await ctx.send(f":mag_right: Searching for \"{query}\" ...", suppress_embeds=True) # Search metadata for youtube video - with yt_dlp.YoutubeDL({'quiet': True}) as ydl: + with yt_dlp.YoutubeDL({"quiet": True}) as ydl: search_list = ydl.extract_info(f"ytsearch:{query}", download = False) if search_list is None or len(search_list["entries"]) == 0: await notice.edit(content=":question: No songs found for query, try something else!", delete_after=3) @@ -177,7 +182,7 @@ async def play(ctx, *, query: Optional[str] = None): return # Search metadata for youtube video - with yt_dlp.YoutubeDL({'quiet': True}) as ydl: + with yt_dlp.YoutubeDL({"quiet": True}) as ydl: info = ydl.extract_info(query, download = False) pprint(info) @@ -226,19 +231,19 @@ async def play(ctx, *, query: Optional[str] = None): current_item = queue[queue_position] # Set song variables - song_id = current_item['id'] - song_url = current_item['url'] - song_name = current_item['name'] - song_thumb = current_item['thumbnail'] - song_duration = current_item['duration'] - song_thumb_url = current_item['thumbnail_url'] + song_id = current_item["id"] + song_url = current_item["url"] + song_name = current_item["name"] + song_thumb = current_item["thumbnail"] + song_duration = current_item["duration"] + song_thumb_url = current_item["thumbnail_url"] song_thumbname = str(int(time.time())) + ".png" color = 0x42f5a7 # Create the embed if current_item["artist"] and current_item["album"]: - song_desc = "Artist: " + current_item['artist'] + "\nAlbum: " + current_item['album'] + song_desc = "Artist: " + current_item["artist"] + "\nAlbum: " + current_item["album"] else: song_desc = "" @@ -255,7 +260,7 @@ async def play(ctx, *, query: Optional[str] = None): pipe = False if song_url is not None and song_url != "": song_source = subprocess.Popen( - ['yt-dlp', '-q', '-o', '-', '-x', song_url], + ["yt-dlp", "-q", "-o", "-", "-x", song_url], stdout=subprocess.PIPE, ).stdout @@ -263,7 +268,7 @@ async def play(ctx, *, query: Optional[str] = None): await notice.edit(content=":no_entry_sign: Could not get metadata.", delete_after=3) return - song_source = io.BufferedReader(song_source) + song_source = io.BufferedReader(song_source) # type: ignore pipe = True print(str(server_id) + " | " + "Playing song through yt-dlp") else: @@ -282,7 +287,7 @@ async def play(ctx, *, query: Optional[str] = None): time2 = int(time.time()) current = time2 - time1 server_info[server_id]["elapsed"] = current - bardata = progressBar.filledBar(total, current, size=20) + bardata = progressBar.filledBar(total, current, size=20) # type: ignore # Create embed embed=discord.Embed(title="▶️ Playing: " + song_name, url=song_url, description=song_desc, color=color) @@ -329,7 +334,7 @@ async def play(ctx, *, query: Optional[str] = None): # Remove all queued files and folders... This is a bit dangerous, maybe it # should be made failsafe somehow? TODO - fileList = glob.glob(os.path.join(str(server_id),'*')) + fileList = glob.glob(os.path.join(str(server_id), "*")) for filePath in fileList: try: os.remove(filePath) @@ -399,7 +404,7 @@ async def skip(ctx, command: Optional[str] = None, number: Optional[int] = None) voice_channel.stop() elif command == "to" and number is not None: if number <= 0: - await ctx.send(f":no_entry_sign: Cannot skip to negative number or 0!") + await ctx.send(":no_entry_sign: Cannot skip to negative number or 0!") return elif number >= queue_length: await ctx.send(f":no_entry_sign: Invalid skip-to number! Max is {queue_length}.") @@ -487,21 +492,21 @@ async def q(ctx, action = None, selection = None): position_string += "⠀\n" - if len(entry['name']) >= 30: - entry_cut = entry['name'][0:30] + if len(entry["name"]) >= 30: + entry_cut = entry["name"][0:30] else: - entry_cut = entry['name'] + entry_cut = entry["name"] queue_string += "**" + str(index + 1) + ":** " + entry_cut + "\n" - if entry['duration'] < 3600: - duration_string += str(strftime("%M:%S", gmtime(entry['duration']))) + "\n" + if entry["duration"] < 3600: + duration_string += str(strftime("%M:%S", gmtime(entry["duration"]))) + "\n" else: - duration_string += str(strftime("%H:%M:%S", gmtime(entry['duration']))) + "\n" + duration_string += str(strftime("%H:%M:%S", gmtime(entry["duration"]))) + "\n" if index == server_info[server_id]["queue_position"]: - total_duration += entry['duration'] - server_info[server_id]["elapsed"] + total_duration += entry["duration"] - server_info[server_id]["elapsed"] if index > server_info[server_id]["queue_position"]: - total_duration += entry['duration'] + total_duration += entry["duration"] index += 1 # Calculate the time remaining in the queue @@ -527,7 +532,7 @@ async def q(ctx, action = None, selection = None): if server_info[server_id]["queue"][selection]["thumbnail"] != "/assets/unknown.png": thumbnail = None else: - thumbnail = server_info[server_id]["queue"][selection]['thumbnail'] + thumbnail = server_info[server_id]["queue"][selection]["thumbnail"] if selection is current_position: await ctx.send(":no_entry_sign: Error, cannot remove currently playing item", delete_after=3) @@ -593,6 +598,5 @@ async def on_command_error(ctx, error): else: print(error) -if __name__ == "__main__": - # Run the bot using the Discord bot token - bot.run(os.environ['DISCORD_SECRET']) +# Run the bot using the Discord bot token +bot.run(os.environ["ODEN_DISCORD_SECRET"]) diff --git a/src/utils.py b/src/oden/utils.py similarity index 95% rename from src/utils.py rename to src/oden/utils.py index 59c1fe8..418eb90 100644 --- a/src/utils.py +++ b/src/oden/utils.py @@ -1,11 +1,11 @@ # pyright: reportUnusedExpression=true -from pprint import pprint -import uuid, os, ffmpeg -from colorthief import ColorThief +import uuid +import os +import ffmpeg ## LINTING / TYPING ## ##### -from typing import Any, Optional, TypedDict +from typing import Optional, TypedDict async def getIds(ctx): """Get server id, voice channel id, and user voice channel id""" diff --git a/uv.lock b/uv.lock index d6907c0..50684bb 100644 --- a/uv.lock +++ b/uv.lock @@ -240,9 +240,9 @@ wheels = [ ] [[package]] -name = "oden-music-bot" +name = "oden" version = "0.1.0" -source = { virtual = "." } +source = { editable = "." } dependencies = [ { name = "audioop-lts" }, { name = "colorthief" },