// code from goatstore // api: https://store.agi.bd const axios = require("axios"); const path = require("path"); const fs = require("fs"); const baseApiUrl = async () => { const base = await axios.get( `https://raw.githubusercontent.com/Mostakim0978/D1PT0/refs/heads/main/baseApiUrl.json`, ); return base.data.api; }; module.exports = { config: { name: "album", version: "1.0.0", role: 0, author: "Dipto", //Don't Change Author name. description: "Displays album options for selection.", category: "Media", countDown: 5, guide: { en: "{p}{n} or add [cartoon/photo/lofi/sad/islamic/funny/horny/anime]", }, }, onStart: async function ({ api, event, args }) { if (!args[0]) { { api.setMessageReaction("😘", event.messageID, (err) => {}, true); } const albumOptions = [ "š—™š˜‚š—»š—»š˜† š˜ƒš—¶š—±š—²š—¼", "š—œš˜€š—¹š—®š—ŗš—¶š—° š˜ƒš—¶š—±š—²š—¼", "š—¦š—®š—± š˜ƒš—¶š—±š—²š—¼", "š—”š—»š—¶š—ŗš—² š˜ƒš—¶š—±š—²š—¼", "š—–š—®š—æš˜š—¼š—¼š—» š˜ƒš—¶š—±š—²š—¼", "š—Ÿš—¼š—™š—¶ š—©š—¶š—±š—²š—¼", "š—›š—¼š—æš—»š˜† š˜ƒš—¶š—±š—²š—¼", "š—–š—¼š˜‚š—½š—¹š—² š—©š—¶š—±š—²š—¼", "š—™š—¹š—¼š˜„š—²š—æ š—©š—¶š—±š—²š—¼", "š—„š—®š—»š—±š—¼š—ŗ š—£š—µš—¼š˜š—¼", ]; const message = "ā¤ļøā€šŸ©¹ š—–š—µš—¼š—¼š˜€š—² š—®š—» š—¼š—½š˜š—¶š—¼š—»š˜€ š—•š—®š—Æš˜† <šŸ’\n" + "āœæā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”āœæ\n" + albumOptions .map((option, index) => `${index + 1}. ${option} 🐤`) .join("\n") + "\nāœæā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”āœæ"; await api.sendMessage( message, event.threadID, (error, info) => { global.GoatBot.onReply.set(info.messageID, { commandName: this.config.name, type: "reply", messageID: info.messageID, author: event.senderID, link: albumOptions, }); }, event.messageID, ); } else if (args[0] === "2") { { api.setMessageReaction("😘", event.messageID, (err) => {}, true); } const albumOptions = [ "š—”š—²š˜€š˜š—µš—²š˜š—¶š—° š—©š—¶š—±š—²š—¼", "š—¦š—¶š—“š—ŗš—® š—„š˜‚š—¹š—²", "š—Ÿš˜†š—æš—¶š—°š˜€ š—©š—¶š—±š—²š—¼", "š—–š—®š˜ š—©š—¶š—±š—²š—¼", "18+ š˜ƒš—¶š—±š—²š—¼", "š—™š—æš—²š—² š—™š—¶š—æš—² š˜ƒš—¶š—±š—²š—¼", "š—™š—¼š—¼š˜š—•š—®š—¹š—¹ š˜ƒš—¶š—±š—²š—¼", "š—šš—¶š—æš—¹ š˜ƒš—¶š—±š—²š—¼", "š—™š—æš—¶š—²š—»š—±š˜€ š—©š—¶š—±š—²š—¼", ]; const message = "ā¤ļøā€šŸ©¹ š—–š—µš—¼š—¼š˜€š—² š—®š—» š—¼š—½š˜š—¶š—¼š—»š˜€ š—•š—®š—Æš˜† <šŸ’\n" + "āœæā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”āœæ\n" + albumOptions .map((option, index) => `${index + 11}. ${option} 🐤`) .join("\n") + "\nāœæā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”ā”āœæ"; await api.sendMessage( message, event.threadID, (error, info) => { global.GoatBot.onReply.set(info.messageID, { commandName: this.config.name, type: "reply", messageID: info.messageID, author: event.senderID, link: albumOptions, }); }, event.messageID, ); } //------------Video Add--------------// const validCommands = [ "cartoon", "photo", "lofi", "sad", "islamic", "funny", "horny", "anime", "love", "baby", "lyrics", "sigma", "photo", "aesthetic", "cat", "flower", "ff", "sex", "girl", "football", "friend", ]; { api.setMessageReaction("šŸ‘€", event.messageID, (err) => {}, true); } if (args[0] === "list") { try { const res = await axios.get(`${await baseApiUrl()}/album?list=dipto`); const data = res.data.data; const videoCount = data.match(/\d+/g).reduce((acc, num) => acc + parseInt(num), 0); api.sendMessage( `š˜š—¼š˜š—®š—¹ š˜ƒš—¶š—±š—²š—¼ š—°š—¼š˜‚š—»š˜: ${videoCount}`, event.threadID, event.messageID, ); } catch (error) { api.sendMessage(`${error}`, event.threadID, event.messageID); } } if (args[0] === "listAll" || args[0] === "listall") { try { const lRes = await axios.get(`${await baseApiUrl()}/album?list=dipto`); const data = lRes.data.data; const videoCount = data.match(/\d+/g).reduce((acc, num) => acc + parseInt(num), 0); api.sendMessage( `šŸ–¤ š—§š—¼š˜š—®š—¹ š˜ƒš—¶š—±š—²š—¼ š—®š˜ƒš—®š—¶š—¹š—®š—Æš—¹š—² š—¶š—» š—®š—¹š—Æš˜‚š—ŗ 🩵\n\n${data}\n\nš˜š—¼š˜š—®š—¹ š˜ƒš—¶š—±š—²š—¼ š—°š—¼š˜‚š—»š˜: ${videoCount}`, event.threadID, event.messageID, ); } catch (error) { api.sendMessage(`${error}`, event.threadID, event.messageID); } } const d1 = args[1] ? args[1].toLowerCase() : ""; if (!d1 || !validCommands.includes(d1)) return; if (!event.messageReply || !event.messageReply.attachments) return; const attachment = event.messageReply.attachments[0].url; const URL = attachment; let query; switch (d1) { case "cartoon": query = "addVideo"; break; case "photo": query = "addPhoto"; break; case "lofi": query = "addLofi"; break; case "sad": query = "addSad"; break; case "funny": query = "addFunny"; break; case "islamic": query = "addIslamic"; break; case "horny": query = "addHorny"; break; case "anime": query = "addAnime"; break; case "love": query = "addLove"; break; case "lyrics": query = "addLyrics"; break; case "flower": query = "addBaby"; break; case "photo": query = "addPhoto"; break; case "sigma": query = "addSigma"; break; case "aesthetic": query = "addAesthetic"; break; case "cat": query = "addCat"; break; case "ff": query = "addFf"; break; case "sex": query = "addSex"; break; case "football": query = "addFootball"; break; case "girl": query = "addGirl"; break; case "friend": query = "addFriend"; break; default: break; } try { const response = await axios.get( `${await baseApiUrl()}/drive?url=${encodeURIComponent(URL)}`, ); let imgurLink = response.data.fileUrl; //imgurLink = args.join(" "); const fileExtension = `.mp4` //path.extname(imgurLink); let query2; if ( fileExtension === ".jpg" || fileExtension === ".jpeg" || fileExtension === ".png" ) { query2 = "addPhoto"; } else if (fileExtension === ".mp4") { query2 = query; } else { api.sendMessage( "Invalid file format.", event.threadID, event.messageID, ); return; } const svRes = await axios.get( `${await baseApiUrl()}/album?add=${query2}&url=${imgurLink}`, ); const data = svRes.data; // console.log(data); api.sendMessage( `āœ… | ${data.data}\n\nšŸ”° | ${data.data2}\nšŸ”„ | URL: ${imgurLink}`, event.threadID, event.messageID, ); } catch (error) { console.error("Error:", error); api.sendMessage( `Failed to convert image.\n${error}`, event.threadID, event.messageID, ); } }, onReply: async function ({ api, event, Reply }) { const admin = "100044327656712"; api.unsendMessage(Reply.messageID); if (event.type == "message_reply") { const reply = parseInt(event.body); if (isNaN(reply)) { return api.sendMessage( "šŸ”° | Please reply with either 1 - 14", event.threadID, event.messageID, ); } let query; let cp; if (reply === 1) { query = "funny"; cp = "š—”š—®š˜„ š—•š—®š—Æš˜† š—™š˜‚š—»š—»š˜† š˜ƒš—¶š—±š—²š—¼ <🤣"; } else if (reply === 2) { query = "islamic"; cp = "š—”š—®š˜„ š—•š—®š—Æš˜† š—œš˜€š—¹š—®š—ŗš—¶š—° š˜ƒš—¶š—±š—²š—¼ <šŸ˜‡"; } else if (reply === 3) { query = "sad"; cp = "š—”š—®š˜„ š—•š—®š—Æš˜† š—¦š—®š—± š˜ƒš—¶š—±š—²š—¼ <🄺"; } else if (reply === 4) { query = "anime"; cp = "š—”š—®š˜„ š—•š—®š—Æš˜† š—®š—»š—¶š—ŗ š˜ƒš—¶š—±š—²š—¼ <😘"; } else if (reply === 5) { query = "video"; cp = "š—”š—®š˜„ š—•š—®š—Æš˜† š—–š—®š—æš˜š—¼š—¼š—» š˜ƒš—¶š—±š—²š—¼ <šŸ˜‡"; } else if (reply === 6) { query = "lofi"; cp = "š—”š—®š˜„ š—•š—®š—Æš˜† š—Ÿš—¼š—³š—¶ š˜ƒš—¶š—±š—²š—¼ <šŸ˜‡"; } else if (reply === 7 && event.senderID === admin) { query = "horny"; cp = "š—”š—®š˜„ š—•š—®š—Æš˜† š—›š—¼š—æš—»š˜† š˜ƒš—¶š—±š—²š—¼ <🄵"; } else if (reply === 8) { query = "love"; cp = "š—”š—®š˜„ š—•š—®š—Æš˜† š—Ÿš—¼š˜ƒš—² š˜ƒš—¶š—±š—²š—¼ <šŸ˜"; } else if (reply === 9) { query = "baby"; cp = "š—”š—®š˜„ š—•š—®š—Æš˜† š—–š˜‚š˜š—² š—•š—®š—Æš˜† š˜ƒš—¶š—±š—²š—¼ <šŸ§‘ā€šŸ¼"; } else if (reply === 10) { query = "photo"; cp = "š—”š—®š˜„ š—•š—®š—Æš˜† š—„š—®š—»š—±š—¼š—ŗ š—£š—µš—¼š˜š—¼ <šŸ˜™"; } else if (reply === 11) { query = "aesthetic"; cp = "š—”š—®š˜„ š—•š—®š—Æš˜† š—”š—²š˜€š˜š—µš—²š˜š—¶š—° š—©š—¶š—±š—²š—¼ <šŸ˜™"; } else if (reply === 12) { query = "sigma"; cp = "š—”š—®š˜„ š—•š—®š—Æš˜† š—¦š—¶š—“š—ŗš—® š˜ƒš—¶š—±š—²š—¼ <🐤"; } else if (reply === 13) { query = "lyrics"; cp = "š—”š—®š˜„ š—•š—®š—Æš˜† š—Ÿš˜†š—æš—¶š—°š˜€ š˜ƒš—¶š—±š—²š—¼ <🄰"; } else if (reply === 14) { query = "cat"; cp = "š—”š—®š˜„ š—•š—®š—Æš˜† š—–š—®š˜ š—©š—¶š—±š—²š—¼ <šŸ˜™"; } else if (reply === 15 && event.senderID === admin) { query = "sex"; cp = "š—”š—®š˜„ š—•š—®š—Æš˜† š—¦š—²š˜… š˜ƒš—¶š—±š—²š—¼ <šŸ˜™"; } else if (reply === 16) { query = "ff"; cp = "š—”š—®š˜„ š—•š—®š—Æš˜† š—™š—æš—²š—² š—™š—¶š—æš—² š—©š—¶š—±š—²š—¼ <šŸ˜™"; } else if (reply === 17) { query = "football"; cp = "š—”š—®š˜„ š—•š—®š—Æš˜† š—™š—¼š—¼š˜š—Æš—®š—¹š—¹ š˜ƒš—¶š—±š—²š—¼<šŸ˜™"; } else if (reply === 18) { query = "girl"; cp = "š—”š—®š˜„ š—•š—®š—Æš˜† š—šš—¶š—æš—¹ š˜ƒš—¶š—±š—²š—¼<šŸ˜™"; } else if (reply === 19) { query = "friend"; cp = "š—”š—®š˜„ š—•š—®š—Æš˜† š—™š—æš—¶š—²š—»š—±š˜€ š˜ƒš—¶š—±š—²š—¼<šŸ˜™"; } try { const res = await axios.get( `${await baseApiUrl()}/album?type=${query}`, ); const imgUrl = res.data.data; const ex = path.extname(imgUrl); const imgRes = await axios.get(imgUrl, { responseType: "arraybuffer" , headers: { 'User-Agent': 'Mozilla/5.0' } }); const filename = __dirname + `/assets/dipto_${Date.now()}.mp4`; fs.writeFileSync(filename, Buffer.from(imgRes.data, "binary")); api.sendMessage( { body: `${cp}\n\nš——š—¼š˜„š—»š—¹š—¼š—®š—± š—Øš—æš—¹: ${imgUrl}`, attachment: fs.createReadStream(filename), }, event.threadID, () => fs.unlinkSync(filename), event.messageID, ); } catch (error) { api.sendMessage( "An error occurred while fetching the media.", event.threadID, event.messageID, ); } } }, };