const express = require('express') const app = express() const axios = require('axios') const {startServer} = require('./lifestyle'); const {GptModelOld} = require('./models.js'); var Database = require('./database.js'); app.get('/', (req, res) => { res.redirect('https://t.me/RendyProjects'); }); app.use(async (req, res, next) => { const dbClient = new Database("AkenoXJs", "FastJsAPI"); const xForwardedFor = req.headers['x-forwarded-for']; const xRealIP = req.headers['x-real-ip']; const cfConnectingIP = req.headers['cf-connecting-ip']; let realIP = req.ip; if (xForwardedFor) { realIP = xForwardedFor.split(',')[0].trim(); } else if (xRealIP){ realIP = xRealIP; } else if (cfConnectingIP) { realIP = cfConnectingIP; } req.realIP = realIP; const isBlocked = await dbClient.CheckIsBlocked(realIP) if (isBlocked && isBlocked.blocked === true) { return res.status(403).send("Access denied: IP is blocked"); } if (req.path === '/env') { console.log("check path /env"); await dbClient.AddIpisBlocked(realIP) return res.status(403).send("Access denied: IP is blocked.."); } await dbClient.IPAddressAndUpdate(realIP); console.log(`Real IP address is: ${realIP}, header: ${xForwardedFor ? "x-forwarded-for" : xRealIP ? "x-real-ip" : cfConnectingIP ? "cf-connecting-ip" : "req.ip"} `); await next(); }); app.get('/api/test', async (req, res) => { try { // console.log("Test", req) res.send("Hello world") } catch (error) { res.status(401).json({error: error.message}) } }) const OpenaiRes = async (prompt) => { try { const EncodeUrl = "aHR0cHM6Ly9vcGVuYWktZ3B0LnJlbWl4cHJvamVjdC5vcmcv" let url; try { url = atob(EncodeUrl); } catch (e) { console.error("Could not decode the string! " + e); } const headers = { "Accept": "application/json", "Content-Type": "application/json", "Accept-Language": "en", "Connection": "keep-alive", "Origin": "https://remix.ethereum.org", "Referer": "https://remix.ethereum.org/", "Sec-Fetch-Dest": "empty", "Sec-Fetch-Mode": "cors", "Sec-Fetch-Site": "cross-site", "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/17.17134" }; const response = await axios.post(url, GptModelOld(prompt), { headers, timeout: 50000 }); if (response.status === 200) { return response.data.choices[0].message.content + "\n\nPowered By xtdevs"; } // console.log("Response:", response) } catch (error) { console.error("Error:", error.message); return null; } }; app.get('/api/gpt-old', async (req, res) => { try { const query = req.query.query; const results = await OpenaiRes(query); res.json({ results }); } catch (error) { res.status(401).json({ error: error.message }); } }); startServer(app);