From 1d3008d1443b712f26d49e96b1c305a55b11ac3f Mon Sep 17 00:00:00 2001 From: Toha Date: Wed, 27 Nov 2024 20:42:06 +0700 Subject: [PATCH] Update osn.com guide. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Test ``` npm test -- osn.com > test > run-script-os osn.com > test:win32 > SET "TZ=Pacific/Nauru" && npx jest --runInBand osn.com PASS sites/osn.com/osn.com.test.js (5.194 s) √ can generate valid request headers (6 ms) √ can generate valid url (2 ms) √ can parse response (ar) (112 ms) √ can parse response (en) (9 ms) √ can handle empty guide (1 ms) Test Suites: 1 passed, 1 total Tests: 5 passed, 5 total Snapshots: 0 total Time: 5.499 s Ran all test suites matching /osn.com/i. ``` Grab ``` npm run grab -- --site=osn.com --lang=ar > grab > npx tsx scripts/commands/epg/grab.ts --site=osn.com --lang=ar starting... config: output: guide.xml maxConnections: 1 gzip: false site: osn.com lang: ar loading channels... found 59 channel(s) run #1: [1/118] osn.com (ar) - DWR - Nov 27, 2024 (24 programs) [2/118] osn.com (ar) - DWR - Nov 28, 2024 (24 programs) ... [117/118] osn.com (ar) - OSNYahalaBilArabi.ae - Nov 28, 2024 (29 programs) [118/118] osn.com (ar) - TheFilipinoChannelMiddleEast.us - Nov 28, 2024 (30 programs) saving to "guide.xml"... done in 00h 01m 23s ``` Signed-off-by: Toha --- sites/osn.com/__data__/content.json | 379 ++++++++++++++++++++++++++ sites/osn.com/osn.com.config.js | 87 +++--- sites/osn.com/osn.com.test.js | 54 ++-- sites/osn.com/osn.com_ar.channels.xml | 26 +- sites/osn.com/osn.com_en.channels.xml | 26 +- 5 files changed, 470 insertions(+), 102 deletions(-) create mode 100644 sites/osn.com/__data__/content.json diff --git a/sites/osn.com/__data__/content.json b/sites/osn.com/__data__/content.json new file mode 100644 index 00000000..6aaeeaf3 --- /dev/null +++ b/sites/osn.com/__data__/content.json @@ -0,0 +1,379 @@ +[ + { + "Title": "Alo Cake: Episode 12", + "Arab_Title": "ألو كيك: الحلقة 12", + "EPGUNIQID": "FTF-202426111955", + "IsPlaying": "0", + "EmptyDivWidth": 240, + "TotalDivWidth": 24, + "IsLastRow": false, + "StartTime": "23:55", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "26 Nov 2024, 23:55" + }, + { + "Title": "House Of Desserts: Episode 3", + "Arab_Title": "بيت الحلويات: الحلقة 3", + "EPGUNIQID": "FTF-202426112050", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 264, + "IsLastRow": false, + "StartTime": "00:50", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 00:50" + }, + { + "Title": "Ekhtar Sehetak (Choose Healthy): 11", + "Arab_Title": "اختار صحتك: 11", + "EPGUNIQID": "FTF-202426112145", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 240, + "IsLastRow": false, + "StartTime": "01:45", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 01:45" + }, + { + "Title": "Matbakh Manal Al Alem (Manal Alalem\u0027s Kitchen): Episode 10", + "Arab_Title": "مطبخ منال العالم: الحلقة 10", + "EPGUNIQID": "FTF-202426112235", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 240, + "IsLastRow": false, + "StartTime": "02:35", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 02:35" + }, + { + "Title": "The Mattar Kitchen: Episode 15", + "Arab_Title": "شوّاية مطر: الحلقة 15", + "EPGUNIQID": "FTF-202426112325", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 264, + "IsLastRow": false, + "StartTime": "03:25", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 03:25" + }, + { + "Title": "Fi Beit Atyab (Tastes Better At Home): Episode 3", + "Arab_Title": "فالبيت اطيب: الحلقة 3", + "EPGUNIQID": "FTF-202427110020", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 264, + "IsLastRow": false, + "StartTime": "04:20", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 04:20" + }, + { + "Title": "Alo Cake: Episode 12", + "Arab_Title": "ألو كيك: الحلقة 12", + "EPGUNIQID": "FTF-202427110115", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 264, + "IsLastRow": false, + "StartTime": "05:15", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 05:15" + }, + { + "Title": "House Of Desserts: Episode 3", + "Arab_Title": "بيت الحلويات: الحلقة 3", + "EPGUNIQID": "FTF-202427110210", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 240, + "IsLastRow": false, + "StartTime": "06:10", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 06:10" + }, + { + "Title": "Matbakh Manal Al Alem (Manal Alalem\u0027s Kitchen): Episode 10", + "Arab_Title": "مطبخ منال العالم: الحلقة 10", + "EPGUNIQID": "FTF-202427110300", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 240, + "IsLastRow": false, + "StartTime": "07:00", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 07:00" + }, + { + "Title": "Ekhtar Sehetak (Choose Healthy): 11", + "Arab_Title": "اختار صحتك: 11", + "EPGUNIQID": "FTF-202427110350", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 264, + "IsLastRow": false, + "StartTime": "07:50", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 07:50" + }, + { + "Title": "Wala Ahla Ma\u0027 Loulou: Episode 1", + "Arab_Title": "ولا أحلى مع لولو: الحلقة 1", + "EPGUNIQID": "FTF-202427110445", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 240, + "IsLastRow": false, + "StartTime": "08:45", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 08:45" + }, + { + "Title": "The Mattar Kitchen: Episode 15", + "Arab_Title": "شوّاية مطر: الحلقة 15", + "EPGUNIQID": "FTF-202427110535", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 264, + "IsLastRow": false, + "StartTime": "09:35", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 09:35" + }, + { + "Title": "Fi Beit Atyab (Tastes Better At Home): Episode 3", + "Arab_Title": "فالبيت اطيب: الحلقة 3", + "EPGUNIQID": "FTF-202427110630", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 264, + "IsLastRow": false, + "StartTime": "10:30", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 10:30" + }, + { + "Title": "Alo Cake: Episode 12", + "Arab_Title": "ألو كيك: الحلقة 12", + "EPGUNIQID": "FTF-202427110725", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 264, + "IsLastRow": false, + "StartTime": "11:25", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 11:25" + }, + { + "Title": "House Of Desserts: Episode 3", + "Arab_Title": "بيت الحلويات: الحلقة 3", + "EPGUNIQID": "FTF-202427110820", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 264, + "IsLastRow": false, + "StartTime": "12:20", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 12:20" + }, + { + "Title": "Wala Ahla Ma\u0027 Loulou: Episode 1", + "Arab_Title": "ولا أحلى مع لولو: الحلقة 1", + "EPGUNIQID": "FTF-202427110915", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 240, + "IsLastRow": false, + "StartTime": "13:15", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 13:15" + }, + { + "Title": "Ekhtar Sehetak (Choose Healthy): 11", + "Arab_Title": "اختار صحتك: 11", + "EPGUNIQID": "FTF-202427111005", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 264, + "IsLastRow": false, + "StartTime": "14:05", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 14:05" + }, + { + "Title": "Matbakh Manal Al Alem (Manal Alalem\u0027s Kitchen): Episode 11", + "Arab_Title": "مطبخ منال العالم: الحلقة 11", + "EPGUNIQID": "FTF-202427111100", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 240, + "IsLastRow": false, + "StartTime": "15:00", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 15:00" + }, + { + "Title": "Fatafeat Kitchen Tales: Episode 104", + "Arab_Title": "حكايات مطبخ من فتافيت: الحلقة 104", + "EPGUNIQID": "FTF-202427111150", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 120, + "IsLastRow": false, + "StartTime": "15:50", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 15:50" + }, + { + "Title": "Sahetak Ala Bali: Episode 4", + "Arab_Title": "صحتك على بالي: الحلقة 4", + "EPGUNIQID": "FTF-202427111215", + "IsPlaying": "1", + "EmptyDivWidth": 0, + "TotalDivWidth": 264, + "IsLastRow": false, + "StartTime": "16:15", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 16:15" + }, + { + "Title": "Shu Bihib El Orf: Episode 14", + "Arab_Title": "شو بحب الأورف: الحلقة 14", + "EPGUNIQID": "FTF-202427111310", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 264, + "IsLastRow": false, + "StartTime": "17:10", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 17:10" + }, + { + "Title": "Street Food: Episode 4", + "Arab_Title": "أكل شوارع: الحلقة 4", + "EPGUNIQID": "FTF-202427111405", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 264, + "IsLastRow": false, + "StartTime": "18:05", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 18:05" + }, + { + "Title": "Marwan\u0027s Innovations (Ibtikarat Marwan): Episode 14", + "Arab_Title": "ابتكارات مروان: الحلقة 14", + "EPGUNIQID": "FTF-202427111500", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 264, + "IsLastRow": false, + "StartTime": "19:00", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 19:00" + }, + { + "Title": "Wala Ahla Ma\u0027 Loulou: Episode 2", + "Arab_Title": "ولا أحلى مع لولو: الحلقة 2", + "EPGUNIQID": "FTF-202427111555", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 240, + "IsLastRow": false, + "StartTime": "19:55", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 19:55" + }, + { + "Title": "Ekhtar Sehetak (Choose Healthy): 12", + "Arab_Title": "اختار صحتك: 12", + "EPGUNIQID": "FTF-202427111645", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 264, + "IsLastRow": false, + "StartTime": "20:45", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 20:45" + }, + { + "Title": "Fatafeat Kitchen Tales: Episode 104", + "Arab_Title": "حكايات مطبخ من فتافيت: الحلقة 104", + "EPGUNIQID": "FTF-202427111740", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 120, + "IsLastRow": false, + "StartTime": "21:40", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 21:40" + }, + { + "Title": "Sahetak Ala Bali: Episode 4", + "Arab_Title": "صحتك على بالي: الحلقة 4", + "EPGUNIQID": "FTF-202427111805", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 264, + "IsLastRow": false, + "StartTime": "22:05", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 22:05" + }, + { + "Title": "Shu Bihib El Orf: Episode 14", + "Arab_Title": "شو بحب الأورف: الحلقة 14", + "EPGUNIQID": "FTF-202427111900", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 264, + "IsLastRow": false, + "StartTime": "23:00", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 23:00" + }, + { + "Title": "Street Food: Episode 4", + "Arab_Title": "أكل شوارع: الحلقة 4", + "EPGUNIQID": "FTF-202427111955", + "IsPlaying": "0", + "EmptyDivWidth": 0, + "TotalDivWidth": 24, + "IsLastRow": false, + "StartTime": "23:55", + "ChannelCode": "FTF", + "ChannelNumber": 25, + "StartDateTime": "27 Nov 2024, 23:55" + } +] \ No newline at end of file diff --git a/sites/osn.com/osn.com.config.js b/sites/osn.com/osn.com.config.js index 1a068d3b..d85efae5 100644 --- a/sites/osn.com/osn.com.config.js +++ b/sites/osn.com/osn.com.config.js @@ -5,75 +5,64 @@ const timezone = require('dayjs/plugin/timezone') dayjs.extend(utc) dayjs.extend(timezone) +const packages = { 'OSNTV CONNECT': 3720, 'OSNTV PRIME': 3733, 'ALFA': 1281, 'OSN PINOY PLUS EXTRA': 3519 } +const country = 'AE' +const tz = 'Asia/Dubai' + module.exports = { site: 'osn.com', days: 2, url({ channel, date }) { - return `https://www.osn.com/api/TVScheduleWebService.asmx/GetTVChannelsProgramTimeTable?newDate=${encodeURIComponent( - date.format('MM/DD/YYYY') - )}&selectedCountry=AE&channelCode=${channel.site_id}&isMobile=false&hoursForMobile=0` + return `https://www.osn.com/api/TVScheduleWebService.asmx/time?dt=${ + encodeURIComponent(date.format('MM/DD/YYYY')) + }&co=${country}&ch=${ + channel.site_id + }&mo=false&hr=0` }, request: { headers({ channel }) { return { - Referer: `https://www.osn.com/${channel.lang}-ae/watch/tv-schedule` + Referer: `https://www.osn.com/${channel.lang}-${country.toLowerCase()}/watch/tv-schedule` } } }, parser({ content, channel }) { const programs = [] - const items = parseItems(content) - items.forEach(item => { - const start = parseStart(item, channel) - const duration = parseDuration(item) - const stop = start.add(duration, 'm') - programs.push({ - title: parseTitle(item, channel), - category: parseCategory(item, channel), - start: start.toString(), - stop: stop.toString() - }) - }) + const items = JSON.parse(content) || [] + if (Array.isArray(items)) { + for (const item of items) { + const title = channel.lang === 'ar' ? item.Arab_Title : item.Title + const start = dayjs.tz(item.StartDateTime, 'DD MMM YYYY, HH:mm', tz) + const duration = parseInt(item.TotalDivWidth / 4.8) + const stop = start.add(duration, 'm') + programs.push({ title, start, stop }) + } + } return programs }, async channels({ lang = 'ar' }) { + const result = {} const axios = require('axios') - const result = await axios - .get('https://www.osn.com/api/tvchannels.ashx?culture=en-US&packageId=3519&country=AE') - .then(response => response.data) - .catch(console.error) + for (const pkg of Object.values(packages)) { + const channels = await axios + .get(`https://www.osn.com/api/tvchannels.ashx?culture=en-US&packageId=${pkg}&country=${country}`) + .then(response => response.data) + .catch(console.error) - const channels = result.map(channel => { - return { - lang: lang, - site_id: channel.channelCode, - name: channel.channeltitle + if (Array.isArray(channels)) { + for (const ch of channels) { + if (result[ch.channelCode] === undefined) { + result[ch.channelCode] = { + lang, + site_id: ch.channelCode, + name: ch.channeltitle + } + } + } } - }) + } - return channels + return Object.values(result) } } - -function parseTitle(item, channel) { - return channel.lang === 'ar' ? item.Arab_Title : item.Title -} - -function parseCategory(item, channel) { - return channel.lang === 'ar' ? item.GenreArabicName : item.GenreEnglishName -} - -function parseDuration(item) { - return parseInt(item.TotalDivWidth / 4.8) -} - -function parseStart(item) { - const time = item.StartDateTime - - return dayjs.tz(time, 'DD MMM YYYY, HH:mm', 'Asia/Dubai') -} - -function parseItems(content) { - return content ? JSON.parse(content) : [] -} diff --git a/sites/osn.com/osn.com.test.js b/sites/osn.com/osn.com.test.js index 932d0af5..144a0b5c 100644 --- a/sites/osn.com/osn.com.test.js +++ b/sites/osn.com/osn.com.test.js @@ -1,15 +1,17 @@ -const { parser, url, request } = require('./osn.com.config.js') +const { parser, url, request } = require('./osn.com.config') +const fs = require('fs') +const path = require('path') 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-10-24', 'YYYY-MM-DD').startOf('d') -const channelAR = { site_id: 'AAN', xmltv_id: 'AlAanTV.ae', lang: 'ar' } -const channelEN = { site_id: 'AAN', xmltv_id: 'AlAanTV.ae', lang: 'en' } -const content = - '[{"IsPlaying":"0","Durationtime":null,"StartMinute":0,"EndMinute":0,"EmptyDivWidth":1152,"TotalDivWidth":576,"IsTodayDate":false,"IsLastRow":false,"StartDateTime":"24 Oct 2021, 22:00","EndDateTime":"\\/Date(-62135596800000)\\/","Title":"Al Aan TV","Arab_Title":"تلفزيون الآن","GenreEnglishName":null,"GenreArabicName":null,"ChannelNumber":140,"ChannelCode":"AAN","Duration":"\\/Date(-62135596800000)\\/","Showtime":"\\/Date(-62135596800000)\\/","EpisodeId":738257,"ProgramType":null,"EPGUNIQID":"AAN202110271800738257"}]' +const date = dayjs.utc('2024-11-27', 'YYYY-MM-DD').startOf('d') +const channelAR = { site_id: 'FTF', xmltv_id: 'Fatafeat.ae', lang: 'ar' } +const channelEN = { site_id: 'FTF', xmltv_id: 'Fatafeat.ae', lang: 'en' } +const content = fs.readFileSync(path.join(__dirname, '__data__', 'content.json')) it('can generate valid request headers', () => { const result = request.headers({ channel: channelAR, date }) @@ -21,32 +23,38 @@ it('can generate valid request headers', () => { it('can generate valid url', () => { const result = url({ channel: channelAR, date }) expect(result).toBe( - 'https://www.osn.com/api/TVScheduleWebService.asmx/GetTVChannelsProgramTimeTable?newDate=10%2F24%2F2021&selectedCountry=AE&channelCode=AAN&isMobile=false&hoursForMobile=0' + 'https://www.osn.com/api/TVScheduleWebService.asmx/time?dt=11%2F27%2F2024&co=AE&ch=FTF&mo=false&hr=0' ) }) it('can parse response (ar)', () => { const result = parser({ date, channel: channelAR, content }) - expect(result).toMatchObject([ - { - start: 'Sun, 24 Oct 2021 18:00:00 GMT', - stop: 'Sun, 24 Oct 2021 20:00:00 GMT', - title: 'تلفزيون الآن', - category: null - } - ]) + .map(a => { + a.start = a.start.toJSON() + a.stop = a.stop.toJSON() + return a + }) + expect(result.length).toBe(29) + expect(result[1]).toMatchObject({ + start: '2024-11-26T20:50:00.000Z', + stop: '2024-11-26T21:45:00.000Z', + title: 'بيت الحلويات: الحلقة 3', + }) }) it('can parse response (en)', () => { const result = parser({ date, channel: channelEN, content }) - expect(result).toMatchObject([ - { - start: 'Sun, 24 Oct 2021 18:00:00 GMT', - stop: 'Sun, 24 Oct 2021 20:00:00 GMT', - title: 'Al Aan TV', - category: null - } - ]) + .map(a => { + a.start = a.start.toJSON() + a.stop = a.stop.toJSON() + return a + }) + expect(result.length).toBe(29) + expect(result[1]).toMatchObject({ + start: '2024-11-26T20:50:00.000Z', + stop: '2024-11-26T21:45:00.000Z', + title: 'House Of Desserts: Episode 3', + }) }) it('can handle empty guide', () => { diff --git a/sites/osn.com/osn.com_ar.channels.xml b/sites/osn.com/osn.com_ar.channels.xml index e60a8370..1c0f9fea 100644 --- a/sites/osn.com/osn.com_ar.channels.xml +++ b/sites/osn.com/osn.com_ar.channels.xml @@ -1,14 +1,22 @@ DWRR 101.9 + OSN TV Crime + OSNtv Movies Horror + OSN TV Movies Family + OSN TV Now + OSN TV Movies Comedy + OSN TV Showcase Classics + OSN TV One Kapatid TV5 Alfa Series +2 Alfa Series Channel Al Safwa Alfa Al Yawm ANC - BabyTV + Animal Planet Bloomberg + Cartoon Network Alfa Cinema 1 Alfa Cinema 2 Cinema One Global @@ -17,11 +25,9 @@ CNN Crime & Investigation Network Discovery HD - Discovery Science HD - Disney HD - Disney Junior E! Entertainment Alfa Fann + Fatafeat GMA Life TV GMA News TV GMA Pinoy TV @@ -33,33 +39,23 @@ MTV Live HD Music Now Myx - Nat Geo HD - Nat Geo Wild HD Nickelodeon HD - Nick Jr. + Nick Jr NickToons HD OSN TV Comedy - OSN TV Crime OSN TV Kids OSN TV Kidzone OSN TV Mezze OSN TV Movies Action - OSN TV Movies Comedy - OSN TV Movies Family OSN TV Movies Hollywood OSN TV Movies Premiere OSN TV News - OSN TV Now - OSN TV One OSN TV Showcase - OSN TV Showcase Classics OSN TV Yahala OSN TV Yahala Aflam OSN TV Yahala Bil Arabi PBA Rush Sky News HD - Star Movies HD - Star World HD DZMM Teleradyo TFC TLC HD diff --git a/sites/osn.com/osn.com_en.channels.xml b/sites/osn.com/osn.com_en.channels.xml index 7c4ba053..90048eb6 100644 --- a/sites/osn.com/osn.com_en.channels.xml +++ b/sites/osn.com/osn.com_en.channels.xml @@ -1,14 +1,22 @@ DWRR 101.9 + OSN TV Crime + OSNtv Movies Horror + OSN TV Movies Family + OSN TV Now + OSN TV Movies Comedy + OSN TV Showcase Classics + OSN TV One Kapatid TV5 Alfa Series +2 Alfa Series Channel Al Safwa Alfa Al Yawm ANC - BabyTV + Animal Planet Bloomberg + Cartoon Network Alfa Cinema 1 Alfa Cinema 2 Cinema One Global @@ -17,11 +25,9 @@ CNN Crime & Investigation Network Discovery HD - Discovery Science HD - Disney HD - Disney Junior E! Entertainment Alfa Fann + Fatafeat GMA Life TV GMA News TV GMA Pinoy TV @@ -33,33 +39,23 @@ MTV Live HD Music Now Myx - Nat Geo HD - Nat Geo Wild HD Nickelodeon HD - Nick Jr. + Nick Jr NickToons HD OSN TV Comedy - OSN TV Crime OSN TV Kids OSN TV Kidzone OSN TV Mezze OSN TV Movies Action - OSN TV Movies Comedy - OSN TV Movies Family OSN TV Movies Hollywood OSN TV Movies Premiere OSN TV News - OSN TV Now - OSN TV One OSN TV Showcase - OSN TV Showcase Classics OSN TV Yahala OSN TV Yahala Aflam OSN TV Yahala Bil Arabi PBA Rush Sky News HD - Star Movies HD - Star World HD DZMM Teleradyo TFC TLC HD