allinone-dl
#xifnt37javascript · 55 baris · 33 dilihat
const axios = require('axios');
const readline = require('readline');
async function omnifyAio(mediaUrl) {
try {
const res = await axios.post('https://api-aio.omnifylabs.sbs/api/v1/media/resolve', {
url: mediaUrl
}, {
headers: {
'Content-Type': 'application/json',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36',
'Origin': 'https://aio.omnifylabs.sbs',
'Referer': 'https://aio.omnifylabs.sbs/'
}
});
const rawData = res.data;
if (rawData?.status !== 'success' || !rawData?.data) {
throw new Error('Gagal mengambil data dari API.');
}
const data = rawData.data;
const formats = data.formats || [];
const sdVideo = formats.find(f => f.id === 'sd');
const wmVideo = formats.find(f => f.id === 'watermark');
const audio = formats.find(f => f.id === 'audio');
return {
status: 'success',
platform: rawData.platform,
type: data.type,
title: data.description || 'Tidak ada judul',
author: data.author?.nickname || data.author?.uniqueId,
video_hd_no_wm: sdVideo ? sdVideo.url : data.videoUrl,
video_wm: wmVideo ? wmVideo.url : data.wmVideoUrl,
audio: audio ? audio.url : data.audioUrl
};
} catch (err) {
return {
status: 'failed',
error: err.response?.data?.message || err.message
};
}
}
const rl = readline.createInterface({ input: process.stdin, output: process.stdout });
rl.question('Masukkan link Media (TikTok/IG/dll): ', async (link) => {
const res = await omnifyAio(link);
console.log('\n======================================');
console.log(JSON.stringify(res, null, 2));
console.log('======================================\n');
rl.close();
});