projek3 / plugins /server.js
devstok's picture
Upload folder using huggingface_hub
47ab1ce verified
const axios = require('axios');
const os = require('os');
let handler = async (m, { conn }) => {
try {
const response = await axios.get('http://ip-api.com/json/');
const serverInfo = response.data;
conn.chatRead(m.chat);
conn.sendMessage(m.chat, {
react: {
text: '⏳',
key: m.key,
}
});
let serverMessage = `β€’ *S E R V E R*\n\n`;
const osInfo = os.platform();
const totalRAM = Math.floor(os.totalmem() / (1024 * 1024));
const freeRAM = Math.floor(os.freemem() / (1024 * 1024));
const uptime = os.uptime();
const uptimeFormatted = formatUptime(uptime);
const processor = os.cpus()[0].model;
serverMessage += `β”Œ β—¦ OS : ${osInfo}\n`;
serverMessage += `β”‚ β—¦ RAM : ${freeRAM} MB / ${totalRAM} MB\n`;
serverMessage += `β”‚ β—¦ Country : ${serverInfo.country}\n`;
serverMessage += `β”‚ β—¦ CountryCode : ${serverInfo.countryCode}\n`;
serverMessage += `β”‚ β—¦ Region : ${serverInfo.region}\n`;
serverMessage += `β”‚ β—¦ RegionName : ${serverInfo.regionName}\n`;
serverMessage += `β”‚ β—¦ City : ${serverInfo.city}\n`;
serverMessage += `β”‚ β—¦ Zip : ${serverInfo.zip}\n`;
serverMessage += `β”‚ β—¦ Lat : ${serverInfo.lat}\n`;
serverMessage += `β”‚ β—¦ Lon : ${serverInfo.lon}\n`;
serverMessage += `β”‚ β—¦ Timezone : ${serverInfo.timezone}\n`;
serverMessage += `β”‚ β—¦ ISP : ${serverInfo.isp}\n`;
serverMessage += `β”‚ β—¦ Org : ${serverInfo.org}\n`;
serverMessage += `β”‚ β—¦ AS : ${serverInfo.as}\n`;
serverMessage += `β”‚ β—¦ Query : HIDDEN\n`;
serverMessage += `β”‚ β—¦ Uptime : ${uptimeFormatted}\n`;
serverMessage += `β”” β—¦ Processor : ${processor}`;
// Create the fake reply with contextInfo
await conn.sendMessage(m.chat, {
text: serverMessage,
contextInfo: {
externalAdReply: {
mediaType: 1,
title: 'IKYBOT OFFICIAL',
thumbnailUrl: 'https://telegra.ph/file/e64a2612fe7dda57be962.jpg',
renderLargerThumbnail: true,
sourceUrl: ''
},
forwardedNewsletterMessageInfo: {
newsletterJid: '120363185802524978@newsletter',
newsletterName: 'Powered By RIZKI IRFAN'
}
}
}, { quoted: {
key: { fromMe: false, participant: '0@s.whatsapp.net', remoteJid: 'status@broadcast' },
message: {
conversation: getWIBTime()
}
}});
} catch (e) {
console.log(e);
}
};
function formatUptime(uptime) {
let seconds = Math.floor(uptime % 60);
let minutes = Math.floor((uptime / 60) % 60);
let hours = Math.floor((uptime / (60 * 60)) % 24);
let days = Math.floor(uptime / (60 * 60 * 24));
let formattedUptime = '';
if (days > 0) formattedUptime += `${days} days `;
if (hours > 0) formattedUptime += `${hours} hours `;
if (minutes > 0) formattedUptime += `${minutes} minutes `;
if (seconds > 0) formattedUptime += `${seconds} seconds`;
return formattedUptime.trim();
}
function getWIBTime() {
const offset = 7; // WIB is UTC+7
let date = new Date();
let utc = date.getTime() + (date.getTimezoneOffset() * 60000);
let wibDate = new Date(utc + (3600000 * offset));
let hours = wibDate.getHours();
let minutes = wibDate.getMinutes();
let seconds = wibDate.getSeconds();
let ampm = hours >= 12 ? 'PM' : 'AM';
hours = hours % 12;
hours = hours ? hours : 12; // the hour '0' should be '12'
let strTime = hours.toString().padStart(2, '0') + ':' + minutes.toString().padStart(2, '0') + ':' + seconds.toString().padStart(2, '0') + ampm;
return strTime;
}
handler.command = ['server'];
handler.tags = ['info'];
handler.help = ['server'];
module.exports = handler;