From 889137712adc76e16f9d70fd3e0eb242213e1e50 Mon Sep 17 00:00:00 2001 From: dylan-fournier <124598538+dylan-fournier@users.noreply.github.com> Date: Mon, 27 May 2024 12:26:47 -0400 Subject: [PATCH] Added all app files --- Client/favicon.ico | Bin 0 -> 41662 bytes Client/images/placeholder.png | Bin 0 -> 3681 bytes Client/images/play-pause.png | Bin 0 -> 30330 bytes Client/images/playlist.png | Bin 0 -> 44131 bytes Client/images/search.png | Bin 0 -> 59066 bytes Client/images/settings.png | Bin 0 -> 4612 bytes Client/images/skip.png | Bin 0 -> 55093 bytes Client/index.html | 90 ++++++++++ Client/manifest.json | 15 ++ Client/scripts.js | 329 ++++++++++++++++++++++++++++++++++ Client/styles.css | 170 ++++++++++++++++++ Server/databaseGenerator.py | 78 ++++++++ Server/webbyBits.py | 128 +++++++++++++ 13 files changed, 810 insertions(+) create mode 100644 Client/favicon.ico create mode 100644 Client/images/placeholder.png create mode 100644 Client/images/play-pause.png create mode 100644 Client/images/playlist.png create mode 100644 Client/images/search.png create mode 100644 Client/images/settings.png create mode 100644 Client/images/skip.png create mode 100644 Client/index.html create mode 100644 Client/manifest.json create mode 100644 Client/scripts.js create mode 100644 Client/styles.css create mode 100644 Server/databaseGenerator.py create mode 100644 Server/webbyBits.py diff --git a/Client/favicon.ico b/Client/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..bbe20ae4bd01314d37460bc806e3de63524ef029 GIT binary patch literal 41662 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 literal 0 HcmV?d00001 diff --git a/Client/images/placeholder.png b/Client/images/placeholder.png new file mode 100644 index 0000000000000000000000000000000000000000..a68449382b492a3b3fbf8e51375f90e90a33ab25 GIT binary patch literal 3681 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

{C<(D;YPEN&GE%-6u-CWNO1@_a3amhY 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

Z<0?lSd?1nQ^V-0UwpQRaWB?0KO%R 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 literal 0 HcmV?d00001 diff --git a/Client/images/playlist.png b/Client/images/playlist.png new file mode 100644 index 0000000000000000000000000000000000000000..e9ff72a52d203ed35e2e53559a08ca0d054a4966 GIT binary patch literal 44131 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 literal 0 HcmV?d00001 diff --git a/Client/images/search.png b/Client/images/search.png new file mode 100644 index 0000000000000000000000000000000000000000..b3f699ac2d015904b00d5e6db8c91e4e214132d7 GIT binary patch literal 59066 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 literal 0 HcmV?d00001 diff --git a/Client/index.html b/Client/index.html new file mode 100644 index 0000000..e9aee2f --- /dev/null +++ b/Client/index.html @@ -0,0 +1,90 @@ + + + + Jukebox Controller + + + + + + + + +

+

+ +
+
+ +
+
+

Search to find songs!

+ + +
+
+ +
+
+

+ +
+
+ +
+
+

Client Settings (Saved to device)

+
+

Server IP:

+

IP of the device running the song server

+ +
+
+

Alert Time:

+

How long alerts stay on screen for (seconds)

+ +
+

Server Settings (Saved to server)

+
+

Party mode:

+

Add random songs to the queue when it is about to be empty

+ +
+
+

Volume:

+

Volume of the music

+ +
+
+
+ + settings +
+ playlist + play pause + skip + search + +
+ + + \ No newline at end of file diff --git a/Client/manifest.json b/Client/manifest.json new file mode 100644 index 0000000..7ab15d3 --- /dev/null +++ b/Client/manifest.json @@ -0,0 +1,15 @@ +{ + "name": "Jukebox Remote", + "short_name": "Jukebox Remote", + "start_url": "index.html", + "display": "standalone", + "background_color": "#eeeeee", + "theme_color": "#eeeeee", + "orientation": "portrait-primary", + "icons": [ + { + "src": "/favicon.ico", + "type": "image/ico", "sizes": "100x100" + } + ] + } \ No newline at end of file diff --git a/Client/scripts.js b/Client/scripts.js new file mode 100644 index 0000000..3aafbff --- /dev/null +++ b/Client/scripts.js @@ -0,0 +1,329 @@ +let ip +let alertTime = 2 +async function alertText(text="Song Added!") { + alertbox = document.getElementById("alert"); + alertbox.innerHTML = text; + await new Promise(r => setTimeout(r, alertTime*1000)); + alertbox.innerHTML = "" +} +// a lot of this is kinda waffly because i was trying to get +// it to return the right stuff and javascript is asyrcronouse (boo) +async function getFromServer(bodyInfo, source="") { + try{ + const response = await fetch("http://" + ip+"/"+source, { + method: "POST", + body: JSON.stringify(bodyInfo), + headers: { + "Content-type": "application/json; charset=UTF-8" + } + }); + const data = await response.json(); + return await data; + } catch(e) { + if (e == "TypeError: Failed to fetch"){ + alertText("error: NoConnect to Server (is the ip set?)") + } else { + alertText("error: " + e) + } + const response=null; + return response; + } +} + + +//cookie reader is taken from internet because cookies ae too complicated for me +//i still understand how it works though promise just i see no reason to write this from scratch +function getCookie(cname) { + let name = cname + "="; + let decodedCookie = decodeURIComponent(document.cookie); + let ca = decodedCookie.split(';'); + for(let i = 0; i

"; + document.getElementById("playlist-mode").style.display = "block"; + document.getElementById("songlist-mode").style.display = "none"; + document.getElementById("settings-mode").style.display = "none"; + generateVisualPlaylist(); + } else if (buttonType == "se") { + document.getElementById("songlist").innerHTML = "

Search to find songs!

"; + document.getElementById("playlist").innerHTML = ""; + document.getElementById("playlist-mode").style.display = "none"; + document.getElementById("songlist-mode").style.display = "block"; + document.getElementById("settings-mode").style.display = "none"; + } else if (buttonType == "st") { + document.getElementById("songlist").innerHTML = ""; + document.getElementById("playlist").innerHTML = ""; + document.getElementById("playlist-mode").style.display = "none"; + document.getElementById("songlist-mode").style.display = "none"; + document.getElementById("settings-mode").style.display = "block"; + checkSettings() + } else if (buttonType = "pm") { + await getFromServer({setting: "partymode-toggle"}, "settings") + checkSettings(true) + } + + +} + +function searchSongsEnter(e) { + if (e.keyCode == 13) { + searchSongs(document.getElementById("songsearch").value) + } +} + +async function searchSongs(searchTerm){ + let optionslist = [] + + document.getElementById("songlist").innerHTML = "" + searchResults = await getFromServer({search:searchTerm},"search").then() + for (let index in searchResults) { + optionslist.push([index,searchResults[index][0],searchResults[index][1],searchResults[index][2]]); + } + //generate the visual song list + for(let i = 0; i < optionslist.length; i++) { + let newItem = document.createElement("div"); + newItem.className = "item"; + newItem.id = optionslist[i][3]; + let image = document.createElement("img"); + try { + if (optionslist[i][2] == null) { + throw "no image lolz" + } + image.src = optionslist[i][2]; + } catch(err){ + image.src = "./images/placeholder.png"; + } + image.id = String(optionslist[i][3])+" image"; + let head3 = document.createElement("h3"); + head3.innerText = optionslist[i][0]; + let head4 = document.createElement("h4"); + head4.innerText=optionslist[i][1]; + newItem.appendChild(image); + newItem.appendChild(head3); + newItem.appendChild(head4); + document.getElementById("songlist").appendChild(newItem); + //display error if no results + + } + if (optionslist.length == 0) { + document.getElementById("songlist").innerHTML = "

We might not have that one...

"; + } +} +function alertTimeEnter(e){ + if (e.key == "Enter") { + e.preventDefault(); + alertTimeSet(document.getElementById("alerttimetextbox").value); + } +} + +function alertTimeSet(time) { + alertTime = time; + document.cookie = "alertTime="+alertTime+"; path=/;" + alertText("Alerts stay on screen for " + alertTime.toString() + " seconds") +} + +function ipSetEnter(e){ + if (e.key == "Enter") { + e.preventDefault(); + ipSetter(document.getElementById("iptextbox").value) + } +} + +function ipSetter(){ + ipBox = document.getElementById("iptextbox").value + if (ipBox == "") { + alertText("Your IP is set to "+ip) + } else { + if (ipBox.includes(":")) { + port = ipBox.slice(ipBox.indexOf(":")+1) + ip = ipBox; + document.cookie = "ip="+ip+"; path=/;" + alertText("Your IP is now set to "+ip.slice(0, ipBox.indexOf(":"))+" at port "+port) + } else { + ip = ipBox + ":19054" + document.cookie = "ip="+ip+"; path=/;" + alertText("Your IP is now set to "+ipBox+" at port 19054 (Default)") + } + } + +} + +async function checkSettings(skipServer=false) { + //check client stuff first so if the server doesn't exist it can still be changed and seen + if (ip.slice(-5)=="19054") { + document.getElementById("iptextbox").value = ip.slice(0,-6) + } else { + document.getElementById("iptextbox").value = ip; + } + document.getElementById("alerttimetextbox").value = alertTime + partyButtonState = document.getElementById("partymode-button").innerHTML; + x = await getFromServer({setting: "getsettings"}, "settings"); + if (!(skipServer) || partyButtonState=="N/A") { + if (x["partymode"] == false) { + document.getElementById("partymode-button").innerHTML = "Off"; + } else { + document.getElementById("partymode-button").innerHTML = "On"; + } + } else if (document.getElementById("partymode-button").innerHTML == "Off") { + document.getElementById("partymode-button").innerHTML = "On"; + } else { + document.getElementById("partymode-button").innerHTML = "Off"; + } + document.getElementById("volumerange").value = parseInt(x["volume"]) +} + +async function generateVisualPlaylist(conditions="") { + document.getElementById("playlist").innerHTML = "

"; + playlist = await getFromServer(null, "playlist"); + if (playlist.length==0){ + document.getElementById("playlist-alert").innerHTML = "Nothing's Queued..." + } else { + if (conditions=="skip-button") { + playlist.shift() + if (playlist.length==0){ + document.getElementById("playlist-alert").innerHTML = "Nothing's Queued..." + } + } + for (i in playlist) { + let newItem = document.createElement("div"); + newItem.className = "item"; + newItem.id = playlist[i]["file"]; + let image = document.createElement("img"); + try { + if (playlist[i]["art"] == null) { + throw "no image lolz" + } + image.src = playlist[i]["art"]; + } catch(err){ + image.src = "./images/placeholder.png"; + } + image.id = String(playlist[i]["file"])+" image"; + let head3 = document.createElement("h3"); + head3.innerText = playlist[i]["title"]; + let head4 = document.createElement("h4"); + head4.innerText=playlist[i]["artist"]; + let head5 = document.createElement("h5"); + let timeLeft =document.createElement("h5"); + timeLeft.style.fontWeight = 100; + try { + if (i == 0) { + head5.innerHTML="Playing"; + if ((conditions != "skip-button")) { + let mins = Math.floor(playlist[i]["time"]/60); + let secs = Math.floor(playlist[i]["time"]%60); + let durMins = Math.floor(playlist[i]["length"]/60); + let durSecs = Math.floor(playlist[i]["length"]%60); + timeLeft.innerHTML = mins.toString() +":"+ secs.toLocaleString('en-US', {minimumIntegerDigits: 2,useGrouping: false}) + "/"+ durMins.toString()+":"+durSecs.toLocaleString('en-US', {minimumIntegerDigits: 2,useGrouping: false}); + } + } + }catch(err){ + console.log(err) + } + let textdiv = document.createElement("div") + textdiv.className="text" + newItem.appendChild(image); + textdiv.appendChild(head3); + textdiv.appendChild(head4); + textdiv.appendChild(timeLeft); + textdiv.appendChild(head5); + newItem.appendChild(textdiv); + document.getElementById("playlist").appendChild(newItem); + } + } +} + +async function submitSong(songid) { + getFromServer({song: songid}, "songadd") + alertText("Added to Queue") +} +function checkWhatSongWasClicked(e) { + itemId = e.srcElement.id; + if ((itemId.length-itemId.lastIndexOf("image") == 5) && itemId.lastIndexOf("image")!=-1) { + itemId = itemId.slice(0,-6) + } + //i feel like later dylan won't apreciate this + //one of my files was "file.MP3" so it didn't work + if (itemId.slice(-4).toLowerCase() == ".mp3") { + submitSong(itemId); + } +} + +let optionslist = [] + +//sets all de stuff for buttons +document.addEventListener('keydown', function(e){ + if (e.key == "/"){ + document.getElementById("title").scrollIntoView(); + document.getElementById("songsearch").select(); + e.preventDefault() +}}) +document.getElementById("playlist-mode").style.display = "none"; +document.getElementById("settings-mode").style.display = "none"; +//.ontouch for mobile?? +document.getElementById("volumerange").onchange = function() { + getFromServer({setting:"volume",level:this.value}, "settings") + if (this.value == 0) { + alertText("The volume is now set to 0 (Pause?)") + } else { + alertText("The volume is now set to " + this.value.toString()) + } + +} +document.getElementById("settings-button").addEventListener('click',function(){controlButton("st")}); +document.getElementById("play-pause-button").addEventListener('click', function(){controlButton("pp")}); +document.getElementById("playlist-button").addEventListener('click', function(){controlButton("pl")}); +document.getElementById("search-button").addEventListener('click', function(){controlButton("se")}); +document.getElementById("skip-button").addEventListener('click',function(){controlButton("sk")}); +document.getElementById("go-search").addEventListener('click', function(){searchSongs(document.getElementById("songsearch").value)}) +document.getElementById("songsearch").addEventListener('keydown', function(e){searchSongsEnter(e)}); +document.getElementById("iptextbox").addEventListener('keydown', function(e){ipSetEnter(e)}); +document.getElementById("alerttimetextbox").addEventListener('keydown', function(e){alertTimeEnter(e)}); +document.getElementById("partymode-button").addEventListener('click',function(){controlButton("pm")}) +//sets the fact that clicking a song needs to return its id to the function to find it +document.getElementById("songlist").addEventListener('click', function(e){checkWhatSongWasClicked(e)}); +//makes the controls look mostly normal on all screens, best solution i could find, idk man +let tempWidth = document.getElementById('controls').clientWidth; +document.getElementById("controls").style.marginLeft = "-"+String(parseInt(tempWidth/2))+"px"; +//for my use case (my immediate family), they dont know how to set an ip +//using this allows the creator of the link for, a qr code for example, to set the ip before distributing the code, and it would all work smoothly +//example (http://192.168.1.100:8000/?ip=192.168.1.100:19054 sets the ip to the same host at the default port) +//the port must be set manually using this method, but only has to be done once for the url that ends up being shared +let params = new URLSearchParams(location.search); +//tries the url first, then the cookie, then the default +ip = params.get("ip") +if (ip == null || ip=="") { + ip=getCookie("ip") +} +console.log(ip) +if (ip==null || ip==""){ + ip = "" +} +document.cookie = "ip="+ip+"; path=/;" + + +alertTime = getCookie("alertTime") +document.getElementById("alerttimetextbox").value = alertTime +if (alertTime == "") { + alertTime = 2; + document.cookie = "alertTime="+alertTime+"; path=/;" +} \ No newline at end of file diff --git a/Client/styles.css b/Client/styles.css new file mode 100644 index 0000000..71db5a7 --- /dev/null +++ b/Client/styles.css @@ -0,0 +1,170 @@ +/* testing */ + +/* Things that are always visible */ + +body { + background-color: #EEEEEE; +} +* { + font-family: 'arial'; +} +.italic { + font-style: italic; +} +h4 { + font-weight: 100; +} +.clear{ + clear: both; + display: block; + content: ""; + width: 100%; + } +.controls { + max-width: 550px; + min-width: 300px; + position: fixed; + width:100%; + left: 50%; + bottom: 0; + margin: 0 auto; + background-color:inherit; +} + +.alert { + position: fixed; + bottom: 10%; + width: 100%; + text-align: center; + z-index: 1000; + background-color: #EEEEEEd6; +} + +.settings-button { + width: 15%; + max-width: 90px; + position:fixed; + top:0; + right:0; + margin: 3px; + background:inherit; + /* This is a circle background for the circle settings button + So it can display over other text and such */ + border-radius: 50%; +} + +.control-button{ + width:20%; + max-width: 110px; + margin: auto 2%; +} + +.intro { + width: 300px; + margin: auto; + text-align: center; +} + +/* Songlist stuff */ +.songlist { + width: 60%; + min-width: 300px; + margin:auto auto 150px; + display: flex; + flex-wrap: wrap; +} + +.songlist > .item{ + border: 1px solid #333333; + width:30%; + max-width: 200px; + margin: 5px auto; + min-width: 100px; + background-color: inherit; +} + +.songlist > .item > img{ + max-width:200px; + width:100% +} + +.songlist > .item > h3, .songlist > .item > h4{ + margin-left: 2px; + margin-right: 2px; +} + +.searchbox-holder { + width: 20%; + margin: 20px auto 0; + min-width: 250px; + +} +.searchbox { + width: 65%; + margin: 1px; +} +.go-search { + width: 20%; + min-width: 50px; +} +/* playlist mode stuff */ + +.playlist { + width: 60%; + min-width: 300px; + margin:auto auto 150px; +} + +.playlist > .item{ + border: 1px solid #333333; + display: flex; + max-width: 50em; + min-width: 200px; + margin: 5px auto; + height: auto; +} + +.playlist > .item > .text { + display: inline-block; + margin: 0px 3px; +} + +.playlist > .item > img { + display: inline-flex; + max-width: 100px; + width:30%; + margin: 0; + aspect-ratio: 1/1; +} + +.playlist > .item > .text > * { + margin:5% 2px; +} + +/* settings stuff */ + +.settings { + width: 95%; + margin: auto auto 150px; + max-width: 600px; +} + +.settings > .item { + margin-left: 10%; + width:fit-content; + +} + +.settings > .item:not(:last-child) { + padding-bottom: 10px; + border-bottom: 1px solid #333333; +} + +.settings > .lastSet1 { + border-bottom: 0; +} + +#volumerange { + background-color: #4477AA; + color: #4477ff; +} \ No newline at end of file diff --git a/Server/databaseGenerator.py b/Server/databaseGenerator.py new file mode 100644 index 0000000..fac4221 --- /dev/null +++ b/Server/databaseGenerator.py @@ -0,0 +1,78 @@ +import os +from mutagen.easyid3 import EasyID3 +from mutagen.mp3 import MP3 +import requests, ast, time, math, argparse, json + +loading = ["-","\\","|","/"] + +apikeylastfm="YourLastfmKeyHere" + +songFiles = os.listdir(r'./sound') +parser=argparse.ArgumentParser(description="Options for the generation of the song database") +parser.add_argument('-m', '--mode', help='new/update: Remake database or update current', default= "update") +parser.add_argument('-a', '--art', help="True/False: Add art to the database using LastFm (takes minimum 0.25s per song)", default="True") +args = parser.parse_args() +if args.mode == "update": + try: + with open('songDatabase.json', 'r') as handle: + songDatabaseList = json.load(handle) + except: + songDatabaseList=[] + + for i in songDatabaseList: + try: + songFiles.index(i["file"]) != -1 + except: + print("deleted: " + i["file"] + " from database") + songDatabaseList.pop(songDatabaseList.index(i)) + + for i in songDatabaseList: + songFiles.pop(songFiles.index(i["file"])) + print("new songs: " + str(songFiles)) +elif args.mode=="new": + songDatabaseList = [] + +if args.art.lower() == "true": + x = len(songFiles)*0.25 + if x > 60: + print("ETA "+ str(x/60) + " minutes") + else: + print("ETA "+ str(x) + " seconds") + +for i in songFiles: + try: + song = EasyID3("sound/"+i) + title = song['title'][0] + artist = song['artist'][0] + except: + try: + song = i.split("_") + title = song[0] + artist = song[1].split(".")[0] + except: + title = i + artist = None + if args.art.lower() == "true": + try: + image = ast.literal_eval(requests.post(url="http://ws.audioscrobbler.com/2.0/?method=track.getInfo&api_key="+apikeylastfm+"&artist="+artist+"&track="+title+"&format=json").text)["track"]["album"]["image"][1]["#text"] + if image == "": + image = ast.literal_eval(requests.post(url="http://ws.audioscrobbler.com/2.0/?method=track.getInfo&api_key="+apikeylastfm+"&artist="+artist+"&track="+title+"&format=json").text)["track"]["album"]["image"][2]["#text"] + if image == "": + image = None + time.sleep(0.25) + except: + image=None + else: + image=None + try: + length = math.ceil(MP3("sound/"+i).info.length) + except: + length = 0 + if len(songFiles) != 1: + index = (songFiles.index(i))%4 + print("\r" + str(loading[index] + str(math.floor((songFiles.index(i)/(len(songFiles)-1))*100))+ "%"), end='', flush=True) + # each "song" is stored as a dictionary containing the below stuff, and each dictionary is put into a list + songDatabaseList.append({"file":i,"title":title,"artist":artist,"art":image,"length":length}) + +with open('songDatabase.json', 'w') as handle: + json.dump(songDatabaseList, handle) diff --git a/Server/webbyBits.py b/Server/webbyBits.py new file mode 100644 index 0000000..c14db2b --- /dev/null +++ b/Server/webbyBits.py @@ -0,0 +1,128 @@ +from flask import Flask +from flask import request +from flask_cors import CORS +import json,vlc,csv,threading,time,random +random.seed() +global partyMode +global skipNow +global songNext +partyMode = False +songNext = None +skipNow = False +playlist = [] +playlistLock = threading.Lock() +fakeplayer = vlc.Instance() +player = fakeplayer.media_player_new() +# for client side volume to work as well as possible, set system volume to 100 and control in app +player.audio_set_volume(100) +app = Flask(__name__) +CORS(app) +with open('songDatabase.json', 'r') as handle: + songDatabaseList = json.load(handle) + +def queueSong(song): + with playlistLock: + playlist.append(song) +# this is a loop that plays the songs and checks for playlist changes, skips, ect. +def playQueuedSongs(): + global skipNow + global songNext + global partyMode + while True: + with playlistLock: + z = str(player.get_state()) + + if playlist and (z == "State.Ended" or z== "State.Stopped" or z == "State.NothingSpecial" or skipNow == True): + player.stop() + skipNow = False + songNext = playlist.pop(0) + media = fakeplayer.media_new("sound/"+songNext) + player.set_media(media) + player.play() + elif (len(playlist) == 0) and skipNow==True: + skipNow=False + songNext = None + player.stop() + elif (len(playlist) == 0) and (z == "State.Ended" or z == "State.NothingSpecial" or z=="State.Stopped"): + songNext = None + elif (len(playlist)<1) and (partyMode == True): + playlist.append(random.choice(songDatabaseList)["file"]) + time.sleep(1) + +queueThread = threading.Thread(target=playQueuedSongs) +queueThread.daemon = True +queueThread.start() + +@app.route("/controls", methods=['POST']) +def playerControls(): + global skipNow + global media + global partyMode + recieveData=request.get_json(force=True) + if recieveData["control"] != None: + if recieveData["control"] == "play-pause": + player.pause() + return "200" + elif recieveData["control"] == "skip": + skipNow = True + # print(str(player.get_state())) + return "200" + else: + return "400" + +@app.route("/settings", methods=['POST']) +def settingsControl(): + global partyMode + recieveData = request.get_json(force=True) + if recieveData["setting"] == "volume": + player.audio_set_volume(int(recieveData["level"])) + return "200" + elif recieveData["setting"] == "getsettings": + x = {"partymode":partyMode,"volume":player.audio_get_volume()} + return x + elif recieveData["setting"] == "partymode-toggle": + partyMode = not(partyMode) + return "200" + else: + return "400" +@app.route("/search", methods=['POST']) +def searchSongDB(): + recieveData=request.get_json(force=True) + # the way i put the data in a list was really dumb looking back, i could and should have used a list of dictioaries like i was before + # i might try to change it but this layout is embedded deep in the client + tempData = {} + for i in songDatabaseList: + if ((i["title"].lower().find(recieveData['search'].lower())) > -1) or (recieveData['search'] == ""): + tempData[i["title"]] = [i["artist"],i["art"],i["file"]] + try: + if (i["artist"].lower().find(recieveData['search'].lower()) > -1): + tempData[i["title"]] = [i["artist"],i["art"],i["file"]] + except: + pass + + return tempData + +@app.route("/songadd", methods=["POST"]) +def songadd(): + recieveData=request.get_json(force=True) + queueSong(recieveData['song']) + return "200" +@app.route("/playlist", methods=["POST"]) +def getPlaylist(): + global songNext + tempPlaylist = [] + for k in songDatabaseList: + if k["file"] == songNext: + temp = k.copy() + temp["playing"] = True + temp["time"] = player.get_time()/1000 + tempPlaylist.append(temp) + for i in playlist: + for j in songDatabaseList: + if j["file"] == i: + tempPlaylist.append(j) + return tempPlaylist + +if __name__ == "__main__": + app.run(host='0.0.0.0', port='25565') + \ No newline at end of file