const axios = require('axios');
const qs = require('qs');
const tor_axios = require('tor-axios');
const tor = tor_axios.torSetup({
    ip: process.env.TORSSRV,
    port: 9050,
    controlPort: 9051,
    controlPassword: process.env.TORSPWD,
});

axios.defaults.timeout = 3000;
tor.defaults.timeout = 3000;

const inst = axios.create({
    httpAgent: tor.httpAgent(),
    httpsagent: tor.httpsAgent(),
});

async function geturlfromRR() {
    const data = qs.stringify({
        'm': 'gu',
        'k': 'Ka11484fbeedb2561981887ea65a38ac4',
        'sc': '4de2d76e955780af333cd97551ed16c6',
        'u': 'no_user',
        'pw': 'no_password',
        'r': '2096169',
        'av': '3.1.5',
        'dt': 'unknown'
    });

    const config = {
        method: 'post',
        maxBodyLength: Infinity,
        url: 'https://apkukrebrands-smarters.xyz/vpn/roadrunnertv/api/?action=315',
        headers: {
            'user-agent': 'IPTV Smarters Pro',
            'content-type': 'application/x-www-form-urlencoded'
        },
        data: data
    };

    try {
        const response = await inst.request(config);
        const url_list = response.data.multi.split(',');
        return url_list;
    } catch (error) {
        console.error('Error fetching URLs from geturlfromRR:', error);
        return []; // Return an empty array on error
    }
}

module.exports = {
    geturlfromRR
};