notmebotz-tools
Version:
Sebuah Tools yang berfungsi untuk mendownload Video atau Foto dari media sosial, serta sebagai tools yang berguna untuk aplikasi kamu seperti untuk BOT
91 lines (88 loc) • 2.87 kB
JavaScript
const FormData = require("form-data"), Jimp = require("jimp");
const https = require("https");
const fs = require('fs')
async function hdimage(kyoko, tysa, level) {
return new Promise(async (resolve, reject) => {
let milahn = ["enhance", "recolor", "dehaze"];
if (!milahn.includes(tysa)) {
return resolve({
author: "Herza",
status: 500,
msg: "Input valid: enhance, recolor, dehaze"
});
}
try {
let image = await fs.readFileSync(kyoko);
if (tysa === "enhance" && level) {
let iterations = level === 1 ? 5 : level === 2 ? 10 : level === 3 ? 20 : level === 4 ? 30 : 1;
for (let i = 0; i < iterations; i++) {
let form = new FormData();
let url = `https://inferenceengine.vyro.ai/${tysa}`;
form.append("model_version", 1);
form.append("image", Buffer.from(image), {
filename: "enhance_image_body.jpg",
contentType: "image/jpeg",
});
let options = {
method: "POST",
headers: {
...form.getHeaders(),
"User-Agent": "okhttp/4.9.3",
Connection: "Keep-Alive",
"Accept-Encoding": "gzip",
},
};
let chunks = [];
await new Promise((resolveReq) => {
let req = https.request(url, options, (res) => {
res.on("data", (chunk) => chunks.push(chunk));
res.on("end", () => resolveReq());
});
req.on("error", (err) => reject(err));
form.pipe(req);
});
image = Buffer.concat(chunks);
}
resolve({
author: "Herza",
status: 200,
results: { buffer: image }
});
} else {
let form = new FormData();
let url = `https://inferenceengine.vyro.ai/${tysa}`;
form.append("model_version", 1);
form.append("image", Buffer.from(image), {
filename: "enhance_image_body.jpg",
contentType: "image/jpeg",
});
let options = {
method: "POST",
headers: {
...form.getHeaders(),
"User-Agent": "okhttp/4.9.3",
Connection: "Keep-Alive",
"Accept-Encoding": "gzip",
},
};
let req = https.request(url, options, (res) => {
let chunks = [];
res.on("data", (chunk) => chunks.push(chunk));
res.on("end", () => {
let buffer = Buffer.concat(chunks);
resolve({
author: "Herza",
status: 200,
results: { buffer }
});
});
});
req.on("error", (err) => reject(err));
form.pipe(req);
}
} catch (error) {
reject(error);
}
});
}
module.exports.hdimage = hdimage;