Skip to content

Commit

Permalink
Update functions.js
Browse files Browse the repository at this point in the history
  • Loading branch information
DaniDoBotBB authored Jan 25, 2021
1 parent a3d365b commit f160267
Showing 1 changed file with 146 additions and 146 deletions.
292 changes: 146 additions & 146 deletions lib/functions.js
Original file line number Diff line number Diff line change
@@ -1,147 +1,147 @@
const fetch = require('node-fetch')
const imgbb = require('imgbb-uploader')
const axios = require('axios')
const cfonts = require('cfonts')
const spin = require('spinnies')
const Crypto = require('crypto')

const wait = async (media) => new Promise(async (resolve, reject) => {
const attachmentData = `data:image/jpeg;base64,${media.toString('base64')}`
const response = await fetch("https://trace.moe/api/search",{method: "POST",body: JSON.stringify({ image: attachmentData }),headers: { "Content-Type": "application/json" }});
if (!response.ok) reject(`Gambar tidak ditemukan!`);
const result = await response.json()
try {
const { is_adult, title, title_chinese, title_romaji, title_english, episode, season, similarity, filename, at, tokenthumb, anilist_id } = result.docs[0]
let belief = () => similarity < 0.89 ? "Saya memiliki keyakinan rendah dalam hal ini : " : ""
let ecch = () => is_adult ? "Iya" : "Tidak"
resolve({video: await getBuffer(`https://media.trace.moe/video/${anilist_id}/${encodeURIComponent(filename)}?t=${at}&token=${tokenthumb}`), teks: `${belief()}
~> Ecchi : *${ecch()}*
~> Judul Jepang : *${title}*
~> Ejaan Judul : *${title_romaji}*
~> Judul Inggris : *${title_english}*
~> Episode : *${episode}*
~> Season : *${season}*`});
} catch (e) {
console.log(e)
reject(`Saya tidak tau ini anime apa`)
}
})

const simih = async (text) => {
try {
const sami = await fetch(`https://secureapp.simsimi.com/v1/simsimi/talkset?uid=297971048&av=6.9.3.4&lc=id&cc=ID&tz=Asia%2FJakarta&os=a&ak=quS%2FxiW%2Bb8ys5agzpljUdoPdLH8%3D&message_sentence=${text}&normalProb=8&isFilter=1&talkCnt=1&talkCntTotal=1&reqFilter=1&session=nSt8PSSmKRbcR7quUkfhXYpmDYgErtBefVbkkri9CrGSVjm4Cj2e2zBFjvdxSijp56WjyK6g2EWTj3KxKz65DL22&triggerKeywords=%5B%5D`, {method: 'GET'})
const res = await sami.json()
return res.simsimi_talk_set.answers[0].sentence
} catch {
return 'Simi ga tau kak'
}
}

const h2k = (number) => {
var SI_POSTFIXES = ["", " K", " M", " G", " T", " P", " E"]
var tier = Math.log10(Math.abs(number)) / 3 | 0
if(tier == 0) return number
var postfix = SI_POSTFIXES[tier]
var scale = Math.pow(10, tier * 3)
var scaled = number / scale
var formatted = scaled.toFixed(1) + ''
if (/\.0$/.test(formatted))
formatted = formatted.substr(0, formatted.length - 2)
return formatted + postfix
}

const getBuffer = async (url, options) => {
try {
options ? options : {}
const res = await axios({
method: "get",
url,
headers: {
'DNT': 1,
'Upgrade-Insecure-Request': 1
},
...options,
responseType: 'arraybuffer'
})
return res.data
} catch (e) {
console.log(`Error : ${e}`)
}
}

const randomBytes = (length) => {
return Crypto.randomBytes(length)
}

const generateMessageID = () => {
return randomBytes(10).toString('hex').toUpperCase()
}

const getGroupAdmins = (participants) => {
admins = []
for (let i of participants) {
i.isAdmin ? admins.push(i.jid) : ''
}
return admins
}

const getRandom = (ext) => {
return `${Math.floor(Math.random() * 10000)}${ext}`
}

const spinner = {
"interval": 120,
"frames": [
"πŸ•",
"πŸ•‘",
"πŸ•’",
"πŸ•“",
"πŸ•”",
"πŸ••",
"πŸ•–",
"πŸ•—",
"πŸ•˜",
"πŸ•™",
"πŸ•š",
"πŸ•›"
]}

let globalSpinner;


const getGlobalSpinner = (disableSpins = false) => {
if(!globalSpinner) globalSpinner = new spin({ color: 'blue', succeedColor: 'green', spinner, disableSpins});
return globalSpinner;
}

spins = getGlobalSpinner(false)

const start = (id, text) => {
spins.add(id, {text: text})
/*setTimeout(() => {
spins.succeed('load-spin', {text: 'Suksess'})
}, Number(wait) * 1000)*/
}
const info = (id, text) => {
spins.update(id, {text: text})
}
const success = (id, text) => {
spins.succeed(id, {text: text})

}

const close = (id, text) => {
spins.fail(id, {text: text})
}

const banner = cfonts.render(('WHATSAPP|BOT'), {
font: 'chrome',
color: 'candy',
align: 'center',
gradient: ["red","yellow"],
lineHeight: 3
});


module.exports = { wait, simih, getBuffer, h2k, generateMessageID, getGroupAdmins, getRandom, start, info, success, banner, close }
const fetch = require('node-fetch')
const imgbb = require('imgbb-uploader')
const axios = require('axios')
const cfonts = require('cfonts')
const spin = require('spinnies')
const Crypto = require('crypto')

const wait = async (media) => new Promise(async (resolve, reject) => {
const attachmentData = `data:image/jpeg;base64,${media.toString('base64')}`
const response = await fetch("https://trace.moe/api/search",{method: "POST",body: JSON.stringify({ image: attachmentData }),headers: { "Content-Type": "application/json" }});
if (!response.ok) reject(`Gambar tidak ditemukan!`);
const result = await response.json()
try {
const { is_adult, title, title_chinese, title_romaji, title_english, episode, season, similarity, filename, at, tokenthumb, anilist_id } = result.docs[0]
let belief = () => similarity < 0.89 ? "Saya memiliki keyakinan rendah dalam hal ini : " : ""
let ecch = () => is_adult ? "Iya" : "Tidak"
resolve({video: await getBuffer(`https://media.trace.moe/video/${anilist_id}/${encodeURIComponent(filename)}?t=${at}&token=${tokenthumb}`), teks: `${belief()}
~> Ecchi : *${ecch()}*
~> Judul Jepang : *${title}*
~> Ejaan Judul : *${title_romaji}*
~> Judul Inggris : *${title_english}*
~> Episode : *${episode}*
~> Season : *${season}*`});
} catch (e) {
console.log(e)
reject(`Saya tidak tau ini anime apa`)
}
})

const simih = async (text) => {
try {
const sami = await fetch(`https://secureapp.simsimi.com/v1/simsimi/talkset?uid=297971048&av=6.9.3.4&lc=id&cc=ID&tz=Asia%2FJakarta&os=a&ak=quS%2FxiW%2Bb8ys5agzpljUdoPdLH8%3D&message_sentence=${text}&normalProb=8&isFilter=1&talkCnt=1&talkCntTotal=1&reqFilter=1&session=nSt8PSSmKRbcR7quUkfhXYpmDYgErtBefVbkkri9CrGSVjm4Cj2e2zBFjvdxSijp56WjyK6g2EWTj3KxKz65DL22&triggerKeywords=%5B%5D`, {method: 'GET'})
const res = await sami.json()
return res.simsimi_talk_set.answers[0].sentence
} catch {
return 'Simi ga tau kak'
}
}

const h2k = (number) => {
var SI_POSTFIXES = ["", " K", " M", " G", " T", " P", " E"]
var tier = Math.log10(Math.abs(number)) / 3 | 0
if(tier == 0) return number
var postfix = SI_POSTFIXES[tier]
var scale = Math.pow(10, tier * 3)
var scaled = number / scale
var formatted = scaled.toFixed(1) + ''
if (/\.0$/.test(formatted))
formatted = formatted.substr(0, formatted.length - 2)
return formatted + postfix
}

const getBuffer = async (url, options) => {
try {
options ? options : {}
const res = await axios({
method: "get",
url,
headers: {
'DNT': 1,
'Upgrade-Insecure-Request': 1
},
...options,
responseType: 'arraybuffer'
})
return res.data
} catch (e) {
console.log(`Error : ${e}`)
}
}

const randomBytes = (length) => {
return Crypto.randomBytes(length)
}

const generateMessageID = () => {
return randomBytes(10).toString('hex').toUpperCase()
}

const getGroupAdmins = (participants) => {
admins = []
for (let i of participants) {
i.isAdmin ? admins.push(i.jid) : ''
}
return admins
}

const getRandom = (ext) => {
return `${Math.floor(Math.random() * 10000)}${ext}`
}

const spinner = {
"interval": 120,
"frames": [
"πŸ•",
"πŸ•‘",
"πŸ•’",
"πŸ•“",
"πŸ•”",
"πŸ••",
"πŸ•–",
"πŸ•—",
"πŸ•˜",
"πŸ•™",
"πŸ•š",
"πŸ•›"
]}

let globalSpinner;


const getGlobalSpinner = (disableSpins = false) => {
if(!globalSpinner) globalSpinner = new spin({ color: 'blue', succeedColor: 'green', spinner, disableSpins});
return globalSpinner;
}

spins = getGlobalSpinner(false)

const start = (id, text) => {
spins.add(id, {text: text})
/*setTimeout(() => {
spins.succeed('load-spin', {text: 'Suksess'})
}, Number(wait) * 1000)*/
}
const info = (id, text) => {
spins.update(id, {text: text})
}
const success = (id, text) => {
spins.succeed(id, {text: text})

}

const close = (id, text) => {
spins.fail(id, {text: text})
}

const banner = cfonts.render(('Sandisx/Dani|BOT'), {
font: 'chrome',
color: 'candy',
align: 'center',
gradient: ["red","yellow"],
lineHeight: 3
});


module.exports = { wait, simih, getBuffer, h2k, generateMessageID, getGroupAdmins, getRandom, start, info, success, banner, close }

0 comments on commit f160267

Please sign in to comment.