// code from goatstore // api: https://store.agi.bd const axios = require("axios"); const fs = require("fs-extra"); const path = require("path"); module.exports = { config: { name: "config", version: "1.1.0", author: "๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐", countDown: 5, role: 2, shortDescription: "Bot account configuration and management", longDescription: "Bot account configuration and management (Admin Only)", category: "OPERATOR", guide: { en: "{pn}" } }, onStart: async function ({ api, event }) { const { threadID, messageID, senderID } = event; const LOCKED_AUTHOR = "๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐"; if (module.exports.config.author !== LOCKED_AUTHOR) { const lockMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป โ›” ๐—™๐—œ๐—Ÿ๐—˜ ๐—Ÿ๐—ข๐—–๐—ž๐—˜๐—— ยป โŒ เฆธเฆฟเฆฏเฆผเฆพเฆฎ เฆญเฆพเฆ‡ เฆเฆฐ เฆจเฆพเฆฎ ยป ๐Ÿคฆ เฆชเฆฐเฆฟเฆฌเฆฐเงเฆคเฆจ เฆ•เฆฐเฆพ เฆนเฆฏเฆผเง‡เฆ›เง‡! ยป โš ๏ธ เฆเฆ‡ เฆ•เฆฎเฆพเฆจเงเฆกเฆŸเฆฟ เฆจเฆทเงเฆŸ เฆ•เฆฐเฆพ เฆนเฆฒเง‹เฅค โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(lockMsg, threadID, messageID); } const { config } = global.GoatBot; const adminList = config.adminBot || []; const operatorList = config.operatorBot || []; const isAllowed = adminList.includes(senderID) || operatorList.includes(senderID); if (!isAllowed) { const noPermMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿ›‘ ๐—”๐—–๐—–๐—˜๐—ฆ๐—ฆ ๐——๐—˜๐—ก๐—œ๐—˜๐—— ยป ๐Ÿ™…โ€โ™‚๏ธ เฆเฆ‡ เฆ•เฆฎเฆพเฆจเงเฆกเฆŸเฆฟ เฆถเงเฆงเง ยป ๐Ÿ‘‘ เฆฌเฆŸ เฆเฆกเฆฎเฆฟเฆจ เฆฌเงเฆฏเฆฌเฆนเฆพเฆฐ ยป ๐Ÿ” เฆ•เฆฐเฆคเง‡ เฆชเฆพเฆฐเฆฌเง‡! โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(noPermMsg, threadID, messageID); } const menuMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป โš™๏ธ ๐—•๐—ข๐—ง ๐—–๐—ข๐—ก๐—™๐—œ๐—š ๐— ๐—˜๐—ก๐—จ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป 01. ๐Ÿ“ ๐—˜๐—ฑ๐—ถ๐˜ ๐—•๐—ถ๐—ผ ยป 02. ๐Ÿท๏ธ ๐—˜๐—ฑ๐—ถ๐˜ ๐—ก๐—ถ๐—ฐ๐—ธ๐—ป๐—ฎ๐—บ๐—ฒ ยป 03. ๐Ÿ“ฉ ๐—ฃ๐—ฒ๐—ป๐—ฑ๐—ถ๐—ป๐—ด ๐— ๐—ฒ๐˜€๐˜€๐—ฎ๐—ด๐—ฒ๐˜€ ยป 04. ๐Ÿ‘๏ธ ๐—จ๐—ป๐—ฟ๐—ฒ๐—ฎ๐—ฑ ๐— ๐—ฒ๐˜€๐˜€๐—ฎ๐—ด๐—ฒ๐˜€ ยป 05. ๐Ÿšซ ๐—ฆ๐—ฝ๐—ฎ๐—บ ๐— ๐—ฒ๐˜€๐˜€๐—ฎ๐—ด๐—ฒ๐˜€ ยป 06. ๐Ÿ–ผ๏ธ ๐—–๐—ต๐—ฎ๐—ป๐—ด๐—ฒ ๐—”๐˜ƒ๐—ฎ๐˜๐—ฎ๐—ฟ ยป 07. ๐Ÿ›ก๏ธ ๐—”๐˜ƒ๐—ฎ๐˜๐—ฎ๐—ฟ ๐—ฆ๐—ต๐—ถ๐—ฒ๐—น๐—ฑ ยป 08. ๐Ÿ”• ๐—•๐—น๐—ผ๐—ฐ๐—ธ ๐—จ๐˜€๐—ฒ๐—ฟ ยป 09. ๐Ÿ”” ๐—จ๐—ป๐—ฏ๐—น๐—ผ๐—ฐ๐—ธ ๐—จ๐˜€๐—ฒ๐—ฟ ยป 10. ๐Ÿ“Œ ๐—–๐—ฟ๐—ฒ๐—ฎ๐˜๐—ฒ ๐—ฃ๐—ผ๐˜€๐˜ ยป 11. ๐Ÿ—‘๏ธ ๐——๐—ฒ๐—น๐—ฒ๐˜๐—ฒ ๐—ฃ๐—ผ๐˜€๐˜ ยป 12. ๐Ÿ’ฌ ๐—–๐—ผ๐—บ๐—บ๐—ฒ๐—ป๐˜ ๐—ฃ๐—ผ๐˜€๐˜ (๐—จ๐˜€๐—ฒ๐—ฟ) ยป 13. ๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ ๐—–๐—ผ๐—บ๐—บ๐—ฒ๐—ป๐˜ ๐—ฃ๐—ผ๐˜€๐˜ (๐—š๐—ฟ๐—ผ๐˜‚๐—ฝ) ยป 14. ๐Ÿ’– ๐——๐—ฟ๐—ผ๐—ฝ ๐—™๐—ฒ๐—ฒ๐—น๐—ถ๐—ป๐—ด๐˜€ ยป 15. ๐Ÿ‘ฅ ๐—”๐—ฑ๐—ฑ ๐—™๐—ฟ๐—ถ๐—ฒ๐—ป๐—ฑ ยป 16. โœ… ๐—”๐—ฐ๐—ฐ๐—ฒ๐—ฝ๐˜ ๐—™๐—ฟ๐—ถ๐—ฒ๐—ป๐—ฑ ๐—ฅ๐—ฒ๐—พ๐˜‚๐—ฒ๐˜€๐˜ ยป 17. โŒ ๐——๐—ฒ๐—ฐ๐—น๐—ถ๐—ป๐—ฒ ๐—™๐—ฟ๐—ถ๐—ฒ๐—ป๐—ฑ ๐—ฅ๐—ฒ๐—พ๐˜‚๐—ฒ๐˜€๐˜ ยป 18. ๐Ÿšถ ๐—จ๐—ป๐—ณ๐—ฟ๐—ถ๐—ฒ๐—ป๐—ฑ ๐—จ๐—œ๐—— ยป 19. ๐Ÿ“ค ๐—ฆ๐—ฒ๐—ป๐—ฑ ๐— ๐—ฒ๐˜€๐˜€๐—ฎ๐—ด๐—ฒ ๐˜ƒ๐—ถ๐—ฎ ๐—จ๐—œ๐—— ยป 20. ๐Ÿ’ป ๐—ก๐—ผ๐˜๐—ฒ ๐—–๐—ผ๐—ฑ๐—ฒ ยป 21. ๐Ÿšช ๐—Ÿ๐—ผ๐—ด๐—ผ๐˜‚๐˜ ๐—”๐—ฐ๐—ฐ๐—ผ๐˜‚๐—ป๐˜ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿ’ก เฆฏเง‡ เฆ…เฆชเฆถเฆจเฆŸเฆฟ เฆšเฆพเฆจ เฆธเง‡เฆŸเฆฟเฆฐ ยป ๐Ÿ”ข เฆจเฆฎเงเฆฌเฆฐ เฆฆเฆฟเฆฏเฆผเง‡ ๐—ฅ๐—ฒ๐—ฝ๐—น๐˜† เฆ•เฆฐเงเฆจเฅค โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(menuMsg, threadID, (err, info) => { global.GoatBot.onReply.set(info.messageID, { commandName: this.config.name, messageID: info.messageID, author: senderID, type: "menu" }); }, messageID); }, onReply: async function ({ api, event, Reply }) { const { threadID, messageID, senderID, body } = event; const { type, author } = Reply; const botID = api.getCurrentUserID(); if (module.exports.config.author !== "๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐") return; if (senderID !== author) { const wrongUserMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป โš ๏ธ เฆ†เฆชเฆจเฆฟ เฆเฆ‡ เฆฎเง‡เฆจเงเฆŸเฆฟ ยป ๐Ÿšซ เฆธเฆฟเฆฒเง‡เฆ•เงเฆŸ เฆ•เฆฐเฆคเง‡ เฆชเฆพเฆฐเฆฌเง‡เฆจ เฆจเฆพ! โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(wrongUserMsg, threadID, messageID); } if (type === 'menu') { const choice = body.trim(); if (['1', '01'].includes(choice)) { const msg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿ“ ๐—•๐—œ๐—ข ๐—˜๐——๐—œ๐—ง๐—ข๐—ฅ ยป โœ๏ธ ๐—•๐—ถ๐—ผ เฆชเฆฐเฆฟเฆฌเฆฐเงเฆคเฆจ เฆ•เฆฐเฆคเง‡ เฆŸเง‡เฆ•เงเฆธเฆŸ เฆฒเฆฟเฆ–เงเฆจ ยป ๐Ÿ—‘๏ธ เฆ…เฆฅเฆฌเฆพ เฆกเฆฟเฆฒเฆฟเฆŸ เฆ•เฆฐเฆคเง‡ '๐—ฑ๐—ฒ๐—น๐—ฒ๐˜๐—ฒ' เฆฒเฆฟเฆ–เงเฆจเฅค โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(msg, threadID, (err, info) => { global.GoatBot.onReply.set(info.messageID, { commandName: this.config.name, messageID: info.messageID, author: senderID, type: "changeBio" }); }, messageID); } else if (['2', '02'].includes(choice)) { const msg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿท๏ธ ๐—ก๐—œ๐—–๐—ž๐—ก๐—”๐— ๐—˜ ๐—˜๐——๐—œ๐—ง๐—ข๐—ฅ ยป โœ๏ธ เฆจเฆคเงเฆจ ๐—ก๐—ถ๐—ฐ๐—ธ๐—ป๐—ฎ๐—บ๐—ฒ เฆชเงเฆฐเฆฆเฆพเฆจ เฆ•เฆฐเงเฆจ ยป ๐Ÿ—‘๏ธ เฆ…เฆฅเฆฌเฆพ เฆกเฆฟเฆฒเฆฟเฆŸ เฆ•เฆฐเฆคเง‡ '๐—ฑ๐—ฒ๐—น๐—ฒ๐˜๐—ฒ' เฆฒเฆฟเฆ–เงเฆจเฅค โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(msg, threadID, (err, info) => { global.GoatBot.onReply.set(info.messageID, { commandName: this.config.name, messageID: info.messageID, author: senderID, type: "changeNickname" }); }, messageID); } else if (['3', '03'].includes(choice)) { const pending = await api.getThreadList(50, null, ["PENDING"]); let txt = pending.map(t => `๐Ÿ“Œ ๐—ก๐—ฎ๐—บ๐—ฒ: ${t.name}\n๐Ÿ†” ๐—œ๐——: ${t.threadID}\n๐Ÿ’ฌ ๐— ๐˜€๐—ด: ${t.snippet}`).join("\n\n") || "เฆ•เง‹เฆจเง‹ เฆชเง‡เฆจเงเฆกเฆฟเฆ‚ เฆฎเง‡เฆธเง‡เฆœ เฆจเง‡เฆ‡เฅค"; const pendingMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿ“ฉ ๐—ฃ๐—˜๐—ก๐——๐—œ๐—ก๐—š ๐—Ÿ๐—œ๐—ฆ๐—ง: โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ${txt} โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(pendingMsg, threadID, messageID); } else if (['6', '06'].includes(choice)) { const msg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿ–ผ๏ธ ๐—”๐—ฉ๐—”๐—ง๐—”๐—ฅ ๐—–๐—›๐—”๐—ก๐—š๐—˜๐—ฅ ยป ๐Ÿ“ธ เฆ›เฆฌเฆฟเฆฐ เฆฒเฆฟเฆ‚เฆ• เฆ…เฆฅเฆฌเฆพ เฆ›เฆฌเฆฟ เฆชเฆพเฆ เฆฟเฆฏเฆผเง‡เฆจ ยป ๐Ÿ” เฆเฆ‡ เฆฎเง‡เฆธเง‡เฆœเง‡ ๐—ฅ๐—ฒ๐—ฝ๐—น๐˜† เฆ•เฆฐเงเฆจเฅค โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(msg, threadID, (err, info) => { global.GoatBot.onReply.set(info.messageID, { commandName: this.config.name, messageID: info.messageID, author: senderID, type: "changeAvatar" }); }, messageID); } else if (['10'].includes(choice)) { const msg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿ“Œ ๐—–๐—ฅ๐—˜๐—”๐—ง๐—˜ ๐—ฃ๐—ข๐—ฆ๐—ง ยป โœ๏ธ เฆชเง‹เฆธเงเฆŸเง‡เฆฐ เฆœเฆจเงเฆฏ เฆฌเฆฟเฆทเฆฏเฆผเฆฌเฆธเงเฆคเง ยป โ˜น๏ธ เฆฌเฆพ เฆŸเง‡เฆ•เงเฆธเฆŸ เฆฒเฆฟเฆ–เง‡.. ยป ๐Ÿ” เฆเฆ‡ เฆฎเง‡เฆธเง‡เฆœเง‡ ๐—ฅ๐—ฒ๐—ฝ๐—น๐˜† เฆฆเฆฟเฆจเฅค โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(msg, threadID, (err, info) => { global.GoatBot.onReply.set(info.messageID, { commandName: this.config.name, messageID: info.messageID, author: senderID, type: "createPost" }); }, messageID); } else if (['21'].includes(choice)) { const logoutMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿšช ๐—Ÿ๐—ข๐—š๐—š๐—œ๐—ก๐—š ๐—ข๐—จ๐—ง ยป โš ๏ธ เฆฌเฆŸ เฆ…เงเฆฏเฆพเฆ•เฆพเฆ‰เฆจเงเฆŸเฆŸเฆฟ เฆธเฆซเฆฒเฆญเฆพเฆฌเง‡ ยป ๐Ÿ” เฆฒเฆ—เฆ†เฆ‰เฆŸ เฆ•เฆฐเฆพ เฆนเฆšเงเฆ›เง‡... โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(logoutMsg, threadID, () => api.logout()); } } else if (type === 'changeBio') { const bio = body.toLowerCase() === 'delete' ? '' : body; api.changeBio(bio, false, (err) => { if (err) { const failMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป โŒ ๐—•๐—œ๐—ข ๐—จ๐—ฃ๐——๐—”๐—ง๐—˜ ๐—™๐—”๐—œ๐—Ÿ๐—˜๐—— ยป โ˜ ๏ธ ๐—•๐—ถ๐—ผ เฆชเฆฐเฆฟเฆฌเฆฐเงเฆคเฆจ เฆ•เฆฐเฆคเง‡ ยป ๐Ÿšฏ เฆธเฆฎเฆธเงเฆฏเฆพ เฆนเฆฏเฆผเง‡เฆ›เง‡..! โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(failMsg, threadID, messageID); } const successMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐ŸŽ‰ ๐—•๐—œ๐—ข ๐—จ๐—ฃ๐——๐—”๐—ง๐—˜๐—— ยป ๐Ÿ“ ๐—•๐—ถ๐—ผ เฆธเฆซเฆฒเฆญเฆพเฆฌเง‡ ${!bio ? "เฆฎเงเฆ›เง‡ เฆซเง‡เฆฒเฆพ เฆนเฆฏเฆผเง‡เฆ›เง‡" : "เฆ†เฆชเฆกเง‡เฆŸ เฆ•เฆฐเฆพ เฆนเฆฏเฆผเง‡เฆ›เง‡!"} โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(successMsg, threadID, messageID); }); } else if (type === 'createPost') { const session_id = typeof getGUID === "function" ? getGUID() : Math.random().toString(36).substring(2); const form = { av: botID, fb_api_req_friendly_name: "ComposerStoryCreateMutation", fb_api_caller_class: "RelayModern", doc_id: "4612917415497545", variables: JSON.stringify({ input: { composer_entry_point: "inline_composer", composer_source_surface: "timeline", idempotence_token: session_id + "_FEED", source: "WWW", attachments: [], audience: { privacy: { base_state: "EVERYONE" } }, message: { text: body }, actor_id: botID, client_mutation_id: "1" } }) }; api.httpPost('https://www.facebook.com/api/graphql/', form, (e, i) => { if (e) { const failMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป โŒ ๐—ฃ๐—ข๐—ฆ๐—ง ๐—™๐—”๐—œ๐—Ÿ๐—˜๐—— ยป โ˜ ๏ธ เฆชเง‹เฆธเงเฆŸ เฆคเงˆเฆฐเฆฟ เฆ•เฆฐเฆคเง‡ ยป ๐Ÿšณ เฆธเฆฎเฆธเงเฆฏเฆพ เฆนเฆฏเฆผเง‡เฆ›เง‡! โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(failMsg, threadID, messageID); } try { const data = JSON.parse(i); const successMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐ŸŽ‰ ๐—ฃ๐—ข๐—ฆ๐—ง ๐—–๐—ฅ๐—˜๐—”๐—ง๐—˜๐—— ยป ๐ŸŽ€ เฆชเง‹เฆธเงเฆŸ เฆธเฆซเฆฒเฆญเฆพเฆฌเง‡ ยป ๐Ÿซ  เฆคเงˆเฆฐเฆฟ เฆนเฆฏเฆผเง‡เฆ›เง‡! ยป ๐Ÿ”— ๐—Ÿ๐—ถ๐—ป๐—ธ: ${data.data.story_create.story.url} โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(successMsg, threadID, messageID); } catch (err) { const failMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป โŒ ๐—˜๐—ฅ๐—ฅ๐—ข๐—ฅ ยป โ˜ ๏ธ เฆชเง‹เฆธเงเฆŸเง‡เฆฐ เฆกเง‡เฆŸเฆพ เฆชเฆพเฆฐเงเฆธ ยป ๐Ÿคง เฆ•เฆฐเฆคเง‡ เฆธเฆฎเฆธเงเฆฏเฆพ เฆนเฆฏเฆผเง‡เฆ›เง‡! โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(failMsg, threadID, messageID); } }); } else if (type === 'changeAvatar') { let url = (event.attachments && event.attachments[0] && event.attachments[0].url) || body; if (!url) { const noImgMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป โš ๏ธ ๐—œ๐—ก๐—ฉ๐—”๐—Ÿ๐—œ๐—— ๐—œ๐—ก๐—ฃ๐—จ๐—ง ยป ๐Ÿ“ธ เฆ…เฆจเงเฆ—เงเฆฐเฆน เฆ•เฆฐเง‡ เฆเฆ•เฆŸเฆฟ ยป ๐Ÿšฏ เฆ›เฆฌเฆฟ เฆฌเฆพ เฆ›เฆฌเฆฟเฆฐ เฆฒเฆฟเฆ‚เฆ• เฆฆเฆฟเฆจ! โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(noImgMsg, threadID, messageID); } try { const stream = (await axios.get(url, { responseType: "stream" })).data; api.changeAvatar(stream, "", (err) => { if (err) { const failMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป โŒ ๐—”๐—ฉ๐—”๐—ง๐—”๐—ฅ ๐—™๐—”๐—œ๐—Ÿ๐—˜๐—— ยป โ˜ ๏ธ ๐—”๐˜ƒ๐—ฎ๐˜๐—ฎ๐—ฟ เฆชเฆฐเฆฟเฆฌเฆฐเงเฆคเฆจ ยป ๐Ÿงญ เฆ•เฆฐเฆคเง‡ เฆธเฆฎเฆธเงเฆฏเฆพ เฆนเฆฏเฆผเง‡เฆ›เง‡! โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(failMsg, threadID, messageID); } const successMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐ŸŽ‰ ๐—”๐—ฉ๐—”๐—ง๐—”๐—ฅ ๐—จ๐—ฃ๐——๐—”๐—ง๐—˜๐—— ยป ๐ŸŽ€ ๐—”๐˜ƒ๐—ฎ๐˜๐—ฎ๐—ฟ เฆธเฆซเฆฒเฆญเฆพเฆฌเง‡ ยป ๐Ÿ†™ เฆ†เฆชเฆกเง‡เฆŸ เฆ•เฆฐเฆพ เฆนเฆฏเฆผเง‡เฆ›เง‡! โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(successMsg, threadID, messageID); }); } catch (e) { const failMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป โŒ ๐——๐—ข๐—ช๐—ก๐—Ÿ๐—ข๐—”๐—— ๐—˜๐—ฅ๐—ฅ๐—ข๐—ฅ ยป โ˜ ๏ธ เฆ›เฆฌเฆฟ เฆกเฆพเฆ‰เฆจเฆฒเง‹เฆก ยป ๐Ÿฅบ เฆ•เฆฐเฆคเง‡ เฆธเฆฎเฆธเงเฆฏเฆพ เฆนเฆฏเฆผเง‡เฆ›เง‡! โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(failMsg, threadID, messageID); } } } };