require('./lib/listmenu') const { BufferJSON, WA_DEFAULT_EPHEMERAL, generateWAMessageFromContent, proto, generateWAMessageContent, generateWAMessage, prepareWAMessageMedia, areJidsSameUser, downloadContentFromMessage, mentionedJid, getContentType } = require('@whiskeysockets/baileys') const os = require('os') const fs = require('fs') const fsx = require('fs-extra') const path = require('path') const util = require('util') const { color } = require('./lib/color') const chalk = require('chalk') const moment = require('moment-timezone') const cron = require('node-cron') const speed = require('performance-now') const ms = toMs = require('ms') const axios = require('axios') const fetch = require('node-fetch') const yts = require('yt-search') const gis = require('g-i-s') const cheerio = require('cheerio') const { randomBytes } = require('crypto') const fg = require('api-dylux') const googleTTS = require('google-tts-api') const {translate} = require('@vitalets/google-translate-api') const scp2 = require('./lib/scraper2') const absenData = {}; const { temporary, temmp } = require('./tempor') const { exec, spawn, execSync } = require("child_process") const { performance } = require('perf_hooks') const more = String.fromCharCode(8206) const readmore = more.repeat(4001) const { TelegraPh, UploadFileUgu, webp2mp4File, floNime } = require('./lib/uploader') const { toAudio, toPTT, toVideo, ffmpeg, addExifAvatar } = require('./lib/converter') const { smsg, getGroupAdmins, formatp, formatDate, getTime, isUrl, await, sleep, clockString, msToDate, sort, toNumber, enumGetKey, runtime, fetchJson, getBuffer, json, delay, toIDR, capital, format, logic, generateProfilePicture, parseMention, getRandom, pickRandom, fetchBuffer, buffergif, totalcase } = require('./lib/myfunc') //prem owner function const { addPremiumUser, getPremiumExpired, getPremiumPosition, expiredPremiumCheck, checkPremiumUser, getAllPremiumUser, } = require('./lib/premiun') //data let ntnsfw = JSON.parse(fs.readFileSync('./src/data/function/nsfw.json')) let bad = JSON.parse(fs.readFileSync('./src/data/function/badword.json')) let premium = JSON.parse(fs.readFileSync('./src/data/role/premium.json')) const owner = JSON.parse(fs.readFileSync('./src/data/role/owner.json')) //media const VoiceNoteXeon = JSON.parse(fs.readFileSync('./lib/ᴊᴜɪᴄᴇ ᴍᴏᴅs/database/bellahvn.json')) const StickerXeon = JSON.parse(fs.readFileSync('./lib/ᴊᴜɪᴄᴇ ᴍᴏᴅs/database/bellahsticker.json')) const ImageXeon = JSON.parse(fs.readFileSync('./lib/ᴊᴜɪᴄᴇ ᴍᴏᴅs/database/bellahimage.json')) const VideoXeon = JSON.parse(fs.readFileSync('./lib/ᴊᴜɪᴄᴇ ᴍᴏᴅs/database/bellahvideo.json')) const DocXeon = JSON.parse(fs.readFileSync('./lib/ᴊᴜɪᴄᴇ ᴍᴏᴅs/database/doc.json')) const ZipXeon = JSON.parse(fs.readFileSync('./lib/ᴊᴜɪᴄᴇ ᴍᴏᴅs/database/zip.json')) const ApkXeon = JSON.parse(fs.readFileSync('./lib/ᴊᴜɪᴄᴇ ᴍᴏᴅs/database/apk.json')) const xeonverifieduser = JSON.parse(fs.readFileSync('./src/data/role/user.json')) global.db.data = JSON.parse(fs.readFileSync('./src/database.json')) if (global.db.data) global.db.data = { sticker: {}, database: {}, game: {}, others: {}, users: {}, chats: {}, settings: {}, ...(global.db.data || {}) } let vote = db.data.others.vote = [] let kuismath = db.data.game.math = [] //time const xtime = moment.tz('Asia/Kolkata').format('HH:mm:ss') const xdate = moment.tz('Asia/Kolkata').format('DD/MM/YYYY') const time2 = moment().tz('Asia/Kolkata').format('HH:mm:ss') if(time2 < "23:59:00"){ var xeonytimewisher = `Good Night mofo🌌` } if(time2 < "19:00:00"){ var xeonytimewisher = `Good Evening mofo🌃` } if(time2 < "18:00:00"){ var xeonytimewisher = `Good Evening mofo🌃` } if(time2 < "15:00:00"){ var xeonytimewisher = `Good Afternoon mofo🌅` } if(time2 < "11:00:00"){ var xeonytimewisher = `Good Morning mofo 🌄` } if(time2 < "05:00:00"){ var xeonytimewisher = `Good Morning mofo🌄` } //function const reSize = async(buffer, ukur1, ukur2) => { return new Promise(async(resolve, reject) => { let jimp = require('jimp') var baper = await jimp.read(buffer); var ab = await baper.resize(ukur1, ukur2).getBufferAsync(jimp.MIME_JPEG) resolve(ab) }) } //module module.exports = Bellah = async (Bellah, m, chatUpdate, store) => { try { const { type, quotedMsg, mentioned, now, fromMe } = m var body = (m.mtype === 'conversation') ? m.message.conversation : (m.mtype == 'imageMessage') ? m.message.imageMessage.caption : (m.mtype == 'videoMessage') ? m.message.videoMessage.caption : (m.mtype == 'extendedTextMessage') ? m.message.extendedTextMessage.text : (m.mtype == 'buttonsResponseMessage') ? m.message.buttonsResponseMessage.selectedButtonId : (m.mtype == 'listResponseMessage') ? m.message.listResponseMessage.singleSelectReply.selectedRowId : (m.mtype == 'templateButtonReplyMessage') ? m.message.templateButtonReplyMessage.selectedId : (m.mtype === 'messageContextInfo') ? (m.message.buttonsResponseMessage?.selectedButtonId || m.message.listResponseMessage?.singleSelectReply.selectedRowId || m.text) : '' var budy = (typeof m.text == 'string' ? m.text : '') //prefix 1 var prefix = ['+', '/',','] ? /^[°•π÷×¶∆£¢€¥®™+✓_=|~!?@#$%^&.©^]/gi.test(body) ? body.match(/^[°•π÷×¶∆£¢€¥®™+✓_=|~!?@#$%^&.©^]/gi)[0] : "" : xprefix const isCmd = body.startsWith(prefix, '') const isCmd2 = body.startsWith(prefix) const command = body.replace(prefix, '').trim().split(/ +/).shift().toLowerCase() const command2 = body.slice(1).trim().split(/ +/).shift().toLowerCase() const args = body.trim().split(/ +/).slice(1) const full_args = body.replace(command, '').slice(1).trim() const pushname = m.pushName || "No Name" const botNumber = await Bellah.decodeJid(Bellah.user.id) const itsMe = m.sender == botNumber ? true : false const sender = m.sender const text = q = args.join(" ") const from = m.key.remoteJid const fatkuns = (m.quoted || m) const quoted = (fatkuns.mtype == 'buttonsMessage') ? fatkuns[Object.keys(fatkuns)[1]] : (fatkuns.mtype == 'templateMessage') ? fatkuns.hydratedTemplate[Object.keys(fatkuns.hydratedTemplate)[1]] : (fatkuns.mtype == 'product') ? fatkuns[Object.keys(fatkuns)[0]] : m.quoted ? m.quoted : m const mime = (quoted.msg || quoted).mimetype || '' const qmsg = (quoted.msg || quoted) //media const isMedia = /image|video|sticker|audio/.test(mime) const isImage = (type == 'imageMessage') const isVideo = (type == 'videoMessage') const isAudio = (type == 'audioMessage') const isDocument = (type == 'documentMessage') const isLocation = (type == 'locationMessage') const isContact = (type == 'contactMessage') const isSticker = (type == 'stickerMessage') const isText = (type == 'textMessage') const isQuotedText = type === 'extendexTextMessage' && content.includes('textMessage') const isQuotedImage = type === 'extendedTextMessage' && content.includes('imageMessage') const isQuotedLocation = type === 'extendedTextMessage' && content.includes('locationMessage') const isQuotedVideo = type === 'extendedTextMessage' && content.includes('videoMessage') const isQuotedSticker = type === 'extendedTextMessage' && content.includes('stickerMessage') const isQuotedAudio = type === 'extendedTextMessage' && content.includes('audioMessage') const isQuotedContact = type === 'extendedTextMessage' && content.includes('contactMessage') const isQuotedDocument = type === 'extendedTextMessage' && content.includes('documentMessage') //prefix 2 const pric = /^#.¦|\\^/.test(body) ? body.match(/^#.¦|\\^/gi) : xprefix const xeonybody = body.startsWith(pric) const isCommand = xeonybody ? body.replace(pric, '').trim().split(/ +/).shift().toLowerCase() : "" const sticker = [] //group const isGroup = m.key.remoteJid.endsWith('@g.us') const groupMetadata = m.isGroup ? await Bellah.groupMetadata(m.chat).catch(e => {}) : '' const participants = m.isGroup ? await groupMetadata.participants : '' const groupAdmins = m.isGroup ? await getGroupAdmins(participants) : '' const isGroupAdmins = m.isGroup ? groupAdmins.includes(m.sender) : false const isBotAdmins = m.isGroup ? groupAdmins.includes(botNumber) : false const isAdmins = m.isGroup ? groupAdmins.includes(m.sender) : false const groupOwner = m.isGroup ? groupMetadata.owner : '' const isGroupOwner = m.isGroup ? (groupOwner ? groupOwner : groupAdmins).includes(m.sender) : false const AntiNsfw = m.isGroup ? ntnsfw.includes(from) : false //anti media const isXeonMedia = m.mtype //user status const isUser = xeonverifieduser.includes(sender) const Owner = [botNumber, ...owner].map(v => v.replace(/[^0-9]/g, '') + '@s.whatsapp.net').includes(m.sender) const isPremium= Owner || checkPremiumUser(m.sender, premium) expiredPremiumCheck(Bellah, m, premium) //theme sticker reply //premium //script replier async function sendBellahMessage(chatId, message, options = {}){ let generate = await generateWAMessage(chatId, message, options) let type2 = getContentType(generate.message) if ('contextInfo' in options) generate.message[type2].contextInfo = options?.contextInfo if ('contextInfo' in message) generate.message[type2].contextInfo = message?.contextInfo return await Bellah.relayMessage(chatId, generate.message, { messageId: generate.key.id }) } const loli = { key: { fromMe: false, participant: "13135550002@s.whatsapp.net", remoteJid: "status@broadcast" }, message: { orderMessage: { orderId: "2009", thumbnail: Bellah, itemCount: "9741", status: "INQUIRY", surface: "CATALOG", message: `Sender : @${m.sender.split('@')[0]}\nCommand : ${command}`, token: "AR6xBKbXZn0Xwmu76Ksyd7rnxI+Rx87HfinVlW4lwXa6JA==" } }, contextInfo: { mentionedJid: ["120363403004545070@s.whatsapp.net"], forwardingScore: 999, isForwarded: true, } } //reply const reply = (teks) => { let Toxxiconrep = { contextInfo: { forwardingScore: 999, isForwarded: true, forwardedNewsletterMessageInfo: { newsletterName: "⚡ ǫᴜᴇᴇɴ ᴀɴɴᴀ ᴍᴅ ⚡", newsletterJid: "120363403004545070@newsletter", }, externalAdReply: { showAdAttribution: true, title: global.botname, body: global.ownername, thumbnailUrl: 'https://files.catbox.moe/6bhdl7.jpeg', sourceUrl: 'https://files.catbox.moe/6bhdl7.jpeg', }, }, text: teks, } return Bellah.sendMessage(from, Toxxiconrep, { quoted: loli, }) } const frpayment = { key: { remoteJid: '0@s.whatsapp.net', fromMe: false, id: `${ownername}`, participant: '0@s.whatsapp.net' }, message: { requestPaymentMessage: { currencyCodeIso4217: "USD", amount1000: 999999999, requestFrom: '0@s.whatsapp.net', noteMessage: { extendedTextMessage: { text: `${botname}` } }, expiryTimestamp: 999999999, amount: { value: 91929291929, offset: 1000, currencyCode: "INR" } } } } const pickRandom = (arr) => { return arr[Math.floor(Math.random() * arr.length)] } var v16 = m.mtype === "interactiveResponseMessage" ? JSON.parse(m.message.interactiveResponseMessage.nativeFlowResponseMessage.paramsJson).id : m.mtype === "conversation" ? m.message.conversation : m.mtype == "imageMessage" ? m.message.imageMessage.caption : m.mtype == "videoMessage" ? m.message.videoMessage.caption : m.mtype == "extendedTextMessage" ? m.message.extendedTextMessage.text : m.mtype == "buttonsResponseMessage" ? m.message.buttonsResponseMessage.selectedButtonId : m.mtype == "listResponseMessage" ? m.message.listResponseMessage.singleSelectReply.selectedRowId : m.mtype == "templateButtonReplyMessage" ? m.message.templateButtonReplyMessage.selectedId : m.mtype == "messageContextInfo" ? m.message.buttonsResponseMessage?.selectedButtonId || m.message.listResponseMessage?.singleSelectReply.selectedRowId || m.text : ""; const v18 = /^[°zZ#$@+,.?=''():√%!¢£¥€π¤ΠΦ&><`™©®Δ^βα¦|/\\©^]/.test(v16) ? v16.match(/^[°zZ#$@+,.?=''():√%¢£¥€π¤ΠΦ&> { return Bellah.sendMessage(m.chat, { react: { text: p11, key: m.key } }); }; //database try { let isNumber = x => typeof x === 'number' && !isNaN(x) let limitUser = isPremium ? 1000 : 100 let user = global.db.data.users[sender] if (typeof user !== 'object') global.db.data.users[sender] = {} if (user) { if (!isNumber(user.afkTime)) user.afkTime = -1 if (!('badword' in user)) user.badword = 0 if (!('title' in user)) user.title = '' if (!('serialNumber' in user)) user.serialNumber = randomBytes(16).toString('hex') if (!('afkReason' in user)) user.afkReason = '' if (!('nick' in user)) user.nick = Bellah.getName(sender) if (!isPremium) user.premium = false if (!('totalLimit' in user)) user.totalLimit = 0 if (!isNumber(user.limit)) user.limit = limitUser } else global.db.data.users[sender] = { serialNumber: randomBytes(16).toString('hex'), title: `${isPremium ? 'Premium' : 'User'}`, afkTime: -1, badword: 0, afkReason: '', nick: Bellah.getName(sender), premium: `${isPremium ? 'true' : 'false'}`, limit: limitUser, totalLimit: 0 } let chats = global.db.data.chats[from] if (typeof chats !== 'object') global.db.data.chats[from] = {} if (chats) { if (!('badword' in chats)) chats.badword = false if (!('antiforeignnum' in chats)) chats.antiforeignnum = false if (!('antibot' in chats)) chats.antibot = false if (!('antiviewonce' in chats)) chats.antiviewonce = false if (!('antimedia' in chats)) chats.media = false if (!('antivirtex' in chats)) chats.antivirtex = false if (!('antiimage' in chats)) chats.antiimage = false if (!('antivideo' in chats)) chats.video = false if (!('antiaudio' in chats)) chats.antiaudio = false if (!('antipoll' in chats)) chats.antipoll = false if (!('antisticker' in chats)) chats.antisticker = false if (!('anticontact' in chats)) chats.anticontact = false if (!('antilocation' in chats)) chats.antilocation = false if (!('antidocument' in chats)) chats.antidocument = false if (!('antilink' in chats)) chats.antilink = false if (!('antilinkgc' in chats)) chats.antilinkgc = false } else global.db.data.chats[from] = { badword: false, antiforeignnum: false, antibot: false, antiviewonce: false, antivirtex: false, antimedia: false, antiimage: false, antivideo: false, antiaudio: false, antipoll: false, antisticker: false, antilocation: false, antidocument: false, anticontact: false, antilink: false, antilinkgc: false } let setting = global.db.data.settings[botNumber] if (typeof setting !== 'object') global.db.data.settings[botNumber] = {} if (setting) { if (!('totalhit' in setting)) setting.totalhit = 0 if (!('totalError' in setting)) setting.totalError = 0 if (!('online' in setting)) setting.online = true if (!('autosticker' in setting)) setting.autosticker = false if (!('autobio' in setting)) setting.autobio = true if (!('autoread' in setting)) setting.autoread = false if (!('autorecordtype' in setting)) setting.autorecordtype = false if (!('autorecord' in setting)) setting.autorecord = false if (!('autotype' in setting)) setting.autotype = false if (!('autoblocknum' in setting)) setting.autoblocknum = false if (!('onlyindia' in setting)) setting.onlyindia = false if (!('onlyindo' in setting)) setting.onlyindo = false if (!('onlygrub' in setting)) setting.onlygrub = false if (!('onlypc' in setting)) setting.onlypc = false if (!('watermark' in setting)) setting.watermark = { packname , author } if (!('about' in setting)) setting.about = { bot: { nick: Bellah.getName(botNumber), alias: botname}, owner: { nick: Bellah.getName(global.ownernumber + '@s.whatsapp.net'), alias: global.ownernumber}} } else global.db.data.settings[botNumber] = { totalhit: 0, totalError: 0, online: false, autosticker: false, autobio: false, autoread: false, autoblocknum: false, onlyindia: false, onlyindo: false, onlygrub: false, onlypc: false, autorecordtype: false, autorecord: false, autotype: false, watermark: { packname: global.packname, author: global.author }, about: { bot: { nick: Bellah.getName(botNumber), alias: botname }, owner: { nick: Bellah.getName(global.ownernumber + '@s.whatsapp.net'), alias: global.ownernumber } } } } catch (err) { console.log(err) } async function ephoto(url, texk) { let form = new FormData let gT = await axios.get(url, { headers: { "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36" } }) let $ = cheerio.load(gT.data) let text = texk let token = $("input[name=token]").val() let build_server = $("input[name=build_server]").val() let build_server_id = $("input[name=build_server_id]").val() form.append("text[]", text) form.append("token", token) form.append("build_server", build_server) form.append("build_server_id", build_server_id) let res = await axios({ url: url, method: "POST", data: form, headers: { Accept: "*/*", "Accept-Language": "en-US,en;q=0.9", "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36", cookie: gT.headers["set-cookie"]?.join("; "), ...form.getHeaders() } }) let $$ = cheer