// code from goatstore // api: https://store.agi.bd const axios = require("axios"); module.exports = { config: { name: "accept", aliases: ['fn', 'requests'], version: "6.0.0", author: "๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐", countDown: 5, role: 0, shortDescription: "Accept sender's friend request with status check", longDescription: "Accepts sender's request or notifies if already friends.", category: "Utility", }, onStart: async function ({ event, api, usersData }) { const { threadID, messageID, senderID } = event; const name = await usersData.getName(senderID); try { // 1. Check Friend Status (Already friends or not) const userInfo = await api.getUserInfo(senderID); const isFriend = userInfo[senderID].isFriend; if (isFriend) { return api.sendMessage( `โ•ญโ”ใ€” ๐Ÿ’Ž ๐—ฆ๐—œ๐—ฌ๐—”๐—  ๐—•๐—ข๐—ง ใ€•โ”โ•ฎ โ”ƒ ๐ŸŒธ เฆนเงเฆฏเฆพเฆฒเง‹ ${name} ! โ”ƒ ๐Ÿค เฆคเงเฆฎเฆฟ เฆ†เฆ—เง‡เฆ‡ เฆ†เฆฎเฆพเฆฐ โ”ƒ ๐Ÿ’– Friend List เฆ เฆ†เฆ›เง‹ โ•ฐโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•ฏ`, threadID, messageID); } // 2. Fetch Pending Requests List const formList = { av: api.getCurrentUserID(), fb_api_req_friendly_name: "FriendingCometFriendRequestsRootQueryRelayPreloader", fb_api_caller_class: "Siyam", doc_id: "61568411310748", variables: JSON.stringify({ input: { scale: 3 } }) }; const response = await api.httpPost("https://www.facebook.com/api/graphql/", formList); const listRequest = JSON.parse(response).data.viewer.friending_possibilities.edges; // 3. Check if sender is in pending list const senderRequest = listRequest.find(u => u.node.id == senderID); if (!senderRequest) { return api.sendMessage( `โ•ญโ”ใ€” ๐ŸŒ™ ๐—ฆ๐—œ๐—ฌ๐—”๐—  ๐—•๐—ข๐—ง ใ€•โ”โ•ฎ โ”ƒ ๐ŸŒธ เฆนเง‡เฆ‡ ${name} ! โ”ƒ โš ๏ธ เฆคเง‹เฆฎเฆพเฆฐ เฆ•เง‹เฆจเง‹ โ”ƒ ๐Ÿ“ฅ Pending Request เฆชเฆพเฆ‡เฆจเฆฟ โ•ฐโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•ฏ`, threadID, messageID); } // 4. Accept the specific request const formAccept = { av: api.getCurrentUserID(), fb_api_req_friendly_name: "FriendingCometFriendRequestConfirmMutation", fb_api_caller_class: "Siyam", doc_id: "61584641872032", variables: JSON.stringify({ input: { source: "friends_tab", friend_requester_id: senderID, actor_id: api.getCurrentUserID(), client_mutation_id: Math.round(Math.random() * 19).toString() }, scale: 3, refresh_num: 0 }) }; const res = await api.httpPost("https://www.facebook.com/api/graphql/", formAccept); if (JSON.parse(res).errors) { return api.sendMessage( `โ•ญโ”ใ€” ๐Ÿ’” ๐—ฆ๐—œ๐—ฌ๐—”๐—  ๐—•๐—ข๐—ง ใ€•โ”โ•ฎ โ”ƒ ๐Ÿ˜” เฆธเฆฐเฆฟ ${name} โ”ƒ โš ๏ธ เฆคเง‹เฆฎเฆพเฆฐ Request เฆŸเฆฟ โ”ƒ โŒ Accept เฆ•เฆฐเฆคเง‡ เฆชเฆพเฆฐเฆฟเฆจเฆฟ โ•ฐโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•ฏ`, threadID, messageID); } else { return api.sendMessage( `โ•”ใ€” โœ… SIYAM SUCCESS ใ€•โ•— โ”ƒ ๐ŸŽ‰ เฆ…เฆญเฆฟเฆจเฆจเงเฆฆเฆจ ${name}! โ”ƒ โœ”๏ธ เฆคเง‹เฆฎเฆพเฆฐ Friend Request โ”ƒ เฆธเฆซเฆฒเฆญเฆพเฆฌเง‡ Accept เฆ•เฆฐเฆพ เฆนเฆฏเฆผเง‡เฆ›เง‡เฅค โ”ƒ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”ƒ ๐—ข๐—ช๐—ก๐—˜๐—ฅ ๐† แ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿซถ โ•šโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•`, threadID, messageID); } } catch (err) { console.error(err); return api.sendMessage("โŒ System Error! Please try again later.", threadID, messageID); } } };