Update format.js
This commit is contained in:
parent
88fce9c93e
commit
a9265451d1
|
@ -40,40 +40,6 @@ async function main() {
|
||||||
log.finish()
|
log.finish()
|
||||||
}
|
}
|
||||||
|
|
||||||
function loadCodes() {
|
|
||||||
return epg.codes
|
|
||||||
.load()
|
|
||||||
.then(codes => {
|
|
||||||
let output = {}
|
|
||||||
codes.forEach(item => {
|
|
||||||
output[item['tvg_id']] = item
|
|
||||||
})
|
|
||||||
return output
|
|
||||||
})
|
|
||||||
.catch(console.log)
|
|
||||||
}
|
|
||||||
|
|
||||||
function loadChannelJson() {
|
|
||||||
return axios
|
|
||||||
.get('https://iptv-org.github.io/iptv/channels.json')
|
|
||||||
.then(r => r.data)
|
|
||||||
.then(channels => {
|
|
||||||
let output = {}
|
|
||||||
channels.forEach(channel => {
|
|
||||||
const item = output[channel.tvg.id]
|
|
||||||
if (!item) {
|
|
||||||
output[channel.tvg.id] = channel
|
|
||||||
} else {
|
|
||||||
item.logo = item.logo || channel.logo
|
|
||||||
item.languages = item.languages.length ? item.languages : channel.languages
|
|
||||||
item.category = item.category || channel.category
|
|
||||||
}
|
|
||||||
})
|
|
||||||
return output
|
|
||||||
})
|
|
||||||
.catch(console.log)
|
|
||||||
}
|
|
||||||
|
|
||||||
function savePlaylist(playlist) {
|
function savePlaylist(playlist) {
|
||||||
if (file.read(playlist.url) !== playlist.toString()) {
|
if (file.read(playlist.url) !== playlist.toString()) {
|
||||||
log.print(`File '${playlist.url}' has been updated\n`)
|
log.print(`File '${playlist.url}' has been updated\n`)
|
||||||
|
@ -87,10 +53,15 @@ async function updatePlaylist(playlist) {
|
||||||
const total = playlist.channels.length
|
const total = playlist.channels.length
|
||||||
log.print(`Processing '${playlist.url}'...\n`)
|
log.print(`Processing '${playlist.url}'...\n`)
|
||||||
|
|
||||||
|
let channels = {}
|
||||||
|
let codes = {}
|
||||||
|
if (!config.offline) {
|
||||||
|
channels = await loadChannelJson()
|
||||||
|
codes = await loadCodes()
|
||||||
|
}
|
||||||
|
|
||||||
buffer = {}
|
buffer = {}
|
||||||
origins = {}
|
origins = {}
|
||||||
const channels = await loadChannelJson()
|
|
||||||
const codes = await loadCodes()
|
|
||||||
for (const [i, channel] of playlist.channels.entries()) {
|
for (const [i, channel] of playlist.channels.entries()) {
|
||||||
const curr = i + 1
|
const curr = i + 1
|
||||||
updateTvgName(channel)
|
updateTvgName(channel)
|
||||||
|
@ -287,4 +258,38 @@ function parseNumber(str) {
|
||||||
return parseInt(str)
|
return parseInt(str)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function loadCodes() {
|
||||||
|
return epg.codes
|
||||||
|
.load()
|
||||||
|
.then(codes => {
|
||||||
|
let output = {}
|
||||||
|
codes.forEach(item => {
|
||||||
|
output[item['tvg_id']] = item
|
||||||
|
})
|
||||||
|
return output
|
||||||
|
})
|
||||||
|
.catch(console.log)
|
||||||
|
}
|
||||||
|
|
||||||
|
function loadChannelJson() {
|
||||||
|
return axios
|
||||||
|
.get('https://iptv-org.github.io/iptv/channels.json')
|
||||||
|
.then(r => r.data)
|
||||||
|
.then(channels => {
|
||||||
|
let output = {}
|
||||||
|
channels.forEach(channel => {
|
||||||
|
const item = output[channel.tvg.id]
|
||||||
|
if (!item) {
|
||||||
|
output[channel.tvg.id] = channel
|
||||||
|
} else {
|
||||||
|
item.logo = item.logo || channel.logo
|
||||||
|
item.languages = item.languages.length ? item.languages : channel.languages
|
||||||
|
item.category = item.category || channel.category
|
||||||
|
}
|
||||||
|
})
|
||||||
|
return output
|
||||||
|
})
|
||||||
|
.catch(console.log)
|
||||||
|
}
|
||||||
|
|
||||||
main()
|
main()
|
||||||
|
|
Loading…
Reference in New Issue