[mythtvnz] Free to Air BBC World on TV One - best way to
'inject' bbc.co.uk guide data after Freeview EPG update?
Wade Maxfield
mythtvnz@lists.linuxnut.co.nz
Tue, 17 Jul 2007 16:52:15 +1200
>
>
>Now I guess then i need to be importing the BBC World programme data then?
>But ignoring it?
Indeed. Just set the channel to not be visible.
>Also, won't this fail when TV1 do actually have something on after
>midnight (like they did with the maericas cup). The TV1 data won't be
>deleted (because title <> "BBC World", but something from the BBC will be
>written in there, creating potentially two porgrams on the same channel at
>the same time.
>
>Or have I read your script worng?
>
Absolutely that's what will happen. Like I said on the 1 night I was
up, the data lined up perfectly. 8)
For something a little more accurate you could try:
REPLACE INTO program
(chanid,starttime,endtime,title,subtitle,description,category,category_type,airdate,stars,previouslyshown,title_pronounce,stereo,subtitled,hdtv,closecaptioned,partnumber,parttotal,seriesid,originalairdate,showtype,colorcode,syndicatedepisodenumber,programid,manualid)
SELECT
XXXX,new.starttime,new.endtime,new.title,new.subtitle,new.description,new.category,new.category_type,new.airdate,new.stars,new.previouslyshown,new.title_pronounce,new.stereo,new.subtitled,new.hdtv,new.closecaptioned,new.partnumber,new.parttotal,new.seriesid,new.originalairdate,new.showtype,new.colorcode,new.syndicatedepisodenumber,new.programid,new.manualid
FROM program as new JOIN program as old
ON (new.starttime>=old.starttime AND new.endtime<=old.endtime)
WHERE (old.chanid=1001 AND old.title="BBC World") AND new.chanid=2026;
DELETE FROM program WHERE title="BBC World" AND chanid=XXXX;
Replace XXXX with the TV One chanid, and YYYY with the BBC World
chanid, and you should be set. With this one though you may end up
with a couple of gaps where TV One switches to/from BBC World
programming halfway through a program.
- Wade