]> git.lizzy.rs Git - furrybot-discord.git/blobdiff - music.js
Add search feature
[furrybot-discord.git] / music.js
index c182a5e996032a00982cf5f033b4740488b7fdd7..50bba47eb30c53f75e28e27e8786fb5b218edab4 100644 (file)
--- a/music.js
+++ b/music.js
@@ -1,9 +1,18 @@
 const ytdl = require("ytdl-core")
 const voice = require("@discordjs/voice")
+const youtubeSearchApi = require("youtube-search-api")
 
 module.exports = {
        play: {
-               func: (msg, url) => {
+               func: async (msg, urlArr) => {
+                       let url = urlArr.join(" ")
+
+                       try {
+                               new URL(url)
+                       } catch {
+                               url = "https://youtube.com/watch?v=" + (await youtubeSearchApi.GetListByKeyword(url, false, 1)).items[0].id
+                       }
+
                        const channel = msg.member.voice.channel
 
                        if (! channel)
@@ -16,7 +25,7 @@ module.exports = {
                        })
                        const player = voice.createAudioPlayer()
 
-                       player.play(voice.createAudioResource(ytdl(url.join(" "), {filter: "audioonly"}), {inputType: voice.StreamType.Arbitrary}))
+                       player.play(voice.createAudioResource(ytdl(url, {filter: "audioonly"}), {inputType: voice.StreamType.Arbitrary}))
                        conn.subscribe(player)
                }
        }