var express = require('express'); var router = express.Router(); const fs = require('fs'); let DNSArray = require('../lib/DNSArray.json') let streamArrays = require('../lib/streamArray.json') const otherDNS = require('../lib/otherDNS.json') const { gotRequest } = require('../lib/gotRequest') function writeFile(streamArrays) { fs.writeFileSync(__dirname + '/../lib/streamArray.json', JSON.stringify(streamArrays), function (err) { if (err) return console.log(err); }); } function splitToArray(DNS) { DNS = DNS.split(',') return DNS } function mapToStream(DNSList) { console.log('---Updated URLS---') DNSList.unshift(...otherDNS) for (let index = 0; index < streamArrays.length; index++) { let element = streamArrays[index]; element.StreamURL = DNSList[index] console.log(element.StreamName + ' ' + element.StreamURL) } writeFile(streamArrays) console.log('---Updated URLS---') return streamArrays } async function main() { let requestData let jointArray = [] for (let index = 0; index < DNSArray.length; index++) { const url = DNSArray[index]; requestData = await gotRequest(url) let DNSList = JSON.parse(requestData.body) DNSList = splitToArray(DNSList.su) DNSList.forEach(url => { jointArray.push(url) }); } await mapToStream(jointArray) return streamArrays } /* GET users listing. */ router.get('/', async function (req, res, next) { let fullStreamArray = await main() res.send(fullStreamArray) }); // main() module.exports = router;