goat
command
caption2
Get random caption from selected category
0
views
0
likes
0
installs
raw source
const axios = require("axios");
module.exports = {
config: {
name: "caption2",
version: "1.0",
author: "SiFu",
countDown: 5,
role: 0,
description: "Get random caption from selected category",
category: "caption",
guide: {
en: "{pn} <category>",
bn: "{pn} <category>"
}
},
onStart: async function ({ message, args }) {
try {
const availableCats = [
"anime",
"attitude",
"alone",
"breakup",
"birthday",
"emotional",
"friendship",
"funny",
"islamic",
"love",
"motivational",
"romantic",
"sad",
"success",
"advice"
];
let cat = args[0];
if (!cat) {
return message.reply(`๐ ๐๐ท๐ข๐ช๐ญ๐ข๐ฃ๐ญ๐ฆ ๐๐ข๐ต๐ฆ๐จ๐ฐ๐ณ๐ช๐ฆ๐ด:\nโข ${availableCats.join(" โข ")}`);
}
cat = cat.toLowerCase();
if (!availableCats.includes(cat)) {
return message.reply(`โ Invalid category!\n\n๐ ๐๐ท๐ข๐ช๐ญ๐ข๐ฃ๐ญ๐ฆ ๐๐ข๐ต๐ฆ๐จ๐ฐ๐ณ๐ช๐ฆ๐ด:\nโข ${availableCats.join(" โข ")}`);
}
const apiBaseRes = await axios.get("https://raw.githubusercontent.com/Saim-x69x/sakura/main/ApiUrl.json");
const apiBase = apiBaseRes.data?.apiv1;
if (!apiBase) return message.reply("โ API base URL not found in ApiUrl.json.");
const url = `${apiBase}/api/caption?cat=${encodeURIComponent(cat)}`;
const res = await axios.get(url);
if (!res.data?.result) {
return message.reply("โ No caption found for this category.");
}
const { bn, en } = res.data.result;
const text = `
๐ฌ ๐๐ข๐ฏ๐ฅ๐ฐ๐ฎ ๐๐ข๐ฑ๐ต๐ช๐ฐ๐ฏ
๐ธ ๐ฉ๐๐๐๐๐:
${bn}
๐ ๐ฌ๐๐๐๐๐๐:
${en}
`;
await message.reply(text.trim());
} catch (e) {
console.error(e);
message.reply("โ | Something went wrong. Please try again later.");
}
}
};