Merge pull request #2632 from iptv-org/delete-tva.tv

Delete tva.tv
This commit is contained in:
PopeyeTheSai10r 2025-01-20 10:32:47 -08:00 committed by GitHub
commit 71d0a6f312
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 0 additions and 157 deletions

View file

@ -1,21 +0,0 @@
# tva.tv
https://tva.tv/
### Download the guide
```sh
npm run grab --- --site=tva.tv
```
### Update channel list
```sh
npm run channels:parse --- --config=./sites/tva.tv/tva.tv.config.js --output=./sites/tva.tv/tva.tv.channels.xml
```
### Test
```sh
npm test --- tva.tv
```

View file

@ -1,31 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<channels>
<channel site="tva.tv" lang="fa" xmltv_id="DocTV.ir" site_id="6f7726c5-b781-4957-ab95-69bc879873e5">Doc TV</channel>
<channel site="tva.tv" lang="fa" xmltv_id="HamedanTV.ir" site_id="cb013830-a496-48c9-8140-4c1fd8df5794">Hamedan TV</channel>
<channel site="tva.tv" lang="fa" xmltv_id="IRIB1.ir" site_id="0823beb2-f2fa-4a2c-ae37-d429a0f55d80">IRIB 1</channel>
<channel site="tva.tv" lang="fa" xmltv_id="IRIB2.ir" site_id="6fcc0a2e-1135-482c-b054-08a96e68b758">IRIB 2</channel>
<channel site="tva.tv" lang="fa" xmltv_id="IRIB3.ir" site_id="0149e4b4-6027-4be9-af1d-35223920d6db">IRIB 3</channel>
<channel site="tva.tv" lang="fa" xmltv_id="IRIB4.ir" site_id="10103e6b-1285-466b-bbd0-c523400003d6">IRIB 4</channel>
<channel site="tva.tv" lang="fa" xmltv_id="IRIB5.ir" site_id="d8b27a06-333e-44ee-a74b-16d51b8f6300">IRIB 5</channel>
<channel site="tva.tv" lang="fa" xmltv_id="IRIBOmid.ir" site_id="22969e9a-88a1-4c82-8f94-7564d3181331">Omid TV</channel>
<channel site="tva.tv" lang="fa" xmltv_id="IRINN.ir" site_id="ff76db87-84ff-4b94-bd6e-0656cf1b9428">IRINN</channel>
<channel site="tva.tv" lang="fa" xmltv_id="IrkalaTV.ir" site_id="fb0ccffb-08c4-4b86-bb0c-a3095a62d9de">Irkala TV</channel>
<channel site="tva.tv" lang="fa" xmltv_id="JameJamTVNetwork1.ir" site_id="ad87c942-719a-4271-9b29-43dd5c2f1c77">Jame-Jam TV Network 1</channel>
<channel site="tva.tv" lang="fa" xmltv_id="KhorasanRazaviTV.ir" site_id="1f8924b0-0491-4694-8359-0db5944913fa">Khorasan Razavi TV</channel>
<channel site="tva.tv" lang="fa" xmltv_id="NamayeshTV.ir" site_id="122f6a18-33ec-4b6a-8af1-0b91cac91329">Namayesh TV</channel>
<channel site="tva.tv" lang="fa" xmltv_id="Nasim.ir" site_id="c9734bf7-a53e-4748-a60c-20e0d1ede795">Nasim</channel>
<channel site="tva.tv" lang="fa" xmltv_id="SalaamTV.us" site_id="c7af0211-b644-49b6-8d62-b3710b2a15df">Salaam TV</channel>
<channel site="tva.tv" lang="fa" xmltv_id="Sepehr.ir" site_id="fcd16b90-28e1-448e-adc9-6f4e6ff4bf07">Sepehr</channel>
<channel site="tva.tv" lang="fa" xmltv_id="TabanTV.ir" site_id="959132fc-c82a-4b53-89ac-52acca913d8d">Taban TV</channel>
<channel site="tva.tv" lang="fa" xmltv_id="TVA1.ir" site_id="3111d9be-b289-4a8c-84e8-92a18d33eeda">TVA 1</channel>
<channel site="tva.tv" lang="fa" xmltv_id="TVA2.ir" site_id="a804bce4-1db5-4f7d-bbca-271dc0d70076">TVA 2</channel>
<channel site="tva.tv" lang="fa" xmltv_id="TVAAvand.ir" site_id="ec2d6905-6406-44c1-89a1-8a2d83113e6c">TVA Avand</channel>
<channel site="tva.tv" lang="fa" xmltv_id="TVABourse.ir" site_id="4d6cc8b9-78d4-492c-afda-63a8d004bfbb">TVA Bourse</channel>
<channel site="tva.tv" lang="fa" xmltv_id="TVAFilm.ir" site_id="374a9cb5-b3cb-438d-9977-7d5f0aba1bad">TVA Film</channel>
<channel site="tva.tv" lang="fa" xmltv_id="TVAKids.ir" site_id="d286f21f-0767-430c-a442-ab7924e5d361">TVA Kids</channel>
<channel site="tva.tv" lang="fa" xmltv_id="TVAMahfel.ir" site_id="a5d4a2b3-31a2-4b35-8a8e-59606b57a0b0">TVA Mahfel</channel>
<channel site="tva.tv" lang="fa" xmltv_id="TVANava.ir" site_id="a5a08946-886e-4e98-be74-b4a315fbf0b5">TVA Nava</channel>
<channel site="tva.tv" lang="fa" xmltv_id="TVASport.ir" site_id="45cbfa3e-c90b-4c4a-b1bb-d8d24f22851b">TVA Sport</channel>
<channel site="tva.tv" lang="fa" xmltv_id="TVASport2.ir" site_id="6a19521e-6e44-459b-a1ba-3588e33c6a9b">TVA Sport 2</channel>
<channel site="tva.tv" lang="fa" xmltv_id="VelayatTVNetwork.us" site_id="bfd49e5f-3458-4965-b620-cfa0f5a0c0cf">Velayat TV Network</channel>
</channels>

View file

@ -1,58 +0,0 @@
const axios = require('axios')
const dayjs = require('dayjs')
module.exports = {
site: 'tva.tv',
days: 2,
url: function ({ date, channel }) {
return `https://api.ott.tva.tv/v2/epg/program_events.json?channel_id=${
channel.site_id
}&pivot_date=${date.format('YYYY-MM-DD')}`
},
parser: function ({ content }) {
const programs = []
const items = parseItems(content)
items.forEach(item => {
programs.push({
title: item.name,
description: item.description,
start: dayjs(item.start_at),
stop: dayjs(item.end_at)
})
})
return programs
},
async channels() {
const data = await axios
.get(
'https://api.ott.tva.tv/v1/channels?client_id=66797942-ff54-46cb-a109-3bae7c855370&client_version=0.0.1&expand%5Bchannel%5D=images&locale=en-GB&page%5Blimit%5D=100&page%5Boffset%5D=0&timezone=10800',
{
headers: {
Origin: 'https://tva.tv'
}
}
)
.then(r => r.data)
.catch(console.log)
const channels = []
for (let item of data.data) {
channels.push({
lang: 'fa',
site_id: item.id,
name: item.name,
xmltv_id: item.slug
})
}
return channels
}
}
function parseItems(content) {
const data = JSON.parse(content)
if (!data || !Array.isArray(data.data)) return []
return data.data
}

View file

@ -1,47 +0,0 @@
const { parser, url } = require('./tva.tv.config.js')
const dayjs = require('dayjs')
const utc = require('dayjs/plugin/utc')
const customParseFormat = require('dayjs/plugin/customParseFormat')
dayjs.extend(customParseFormat)
dayjs.extend(utc)
const date = dayjs.utc('2021-11-25', 'YYYY-MM-DD').startOf('d')
const channel = {
site_id: '6fcc0a2e-1135-482c-b054-08a96e68b758',
xmltv_id: 'IRIB2.ir'
}
const content =
'{"data":[{"id":"c0667229-eaf8-472f-8ba7-ad4417348baf","start_at":"2021-11-24T00:20:39.000Z","end_at":"2021-11-24T00:32:11.000Z","description":"تلفن های شبکه 5 سیما: تلفن: 23511000 -تلفن گویا:2786500 نمابر:23511289","name":"میان برنامه","subtitle":"","season_number":null,"episode_number":null,"channel_id":"6fcc0a2e-1135-482c-b054-08a96e68b758","program_id":"e495c06e-80de-46ee-9120-619631f554d9","competition_id":null,"object":"program_event","cast_members":[],"genres":[],"images":[],"program_type":null,"certification_ratings":[]}]}'
it('can generate valid url', () => {
expect(url({ channel, date })).toBe(
'https://api.ott.tva.tv/v2/epg/program_events.json?channel_id=6fcc0a2e-1135-482c-b054-08a96e68b758&pivot_date=2021-11-25'
)
})
it('can parse response', () => {
const result = parser({ content, channel, date }).map(p => {
p.start = p.start.toJSON()
p.stop = p.stop.toJSON()
return p
})
expect(result).toMatchObject([
{
start: '2021-11-24T00:20:39.000Z',
stop: '2021-11-24T00:32:11.000Z',
title: 'میان برنامه',
description: 'تلفن های شبکه 5 سیما: تلفن: 23511000 -تلفن گویا:2786500 نمابر:23511289'
}
])
})
it('can handle empty guide', () => {
const result = parser({
date,
channel,
content:
'{"errors":[{"id":"ebbebfb7-ffb0-4e0b-bcfb-1d9cd3e6c03c","code":"not_found","links":{"about":{"href":"https://app.bugsnag.com/jeytv/API/errors?filters[event.since][]=30d&filters[user.name][]=ebbebfb7-ffb0-4e0b-bcfb-1d9cd3e6c03c"}},"title":"Requested resource was not found","fallback_message":null,"object":"error"}],"meta":{"status":404}}'
})
expect(result).toMatchObject([])
})