*******************************************************************************************************************
* Uitleg voor het gebruik van het script tvgids.vbs onder windows                                                 *
* De snelste weg om informatie van www.tvgids.nl op te nemen in de tvguide van MediaPortal!                       *
* Het gebruik dit programma is geheel voor eigen rekening en risico van de gebruiker                              *
* De auteur aanvaardt geen enkele aansprakelijkheid voor mogelijke schade aan uw systeem                          *
* Robert Prins 17 oktober 2005                                                                                    *
******************************************************************************************************************* 

Bij MediaPortal is een XMLTV.EXE programma beschikbaar waarmee informatie van de site www.tvgids.nl kan worden
opgehaald. Het ophalen van uitgebreide programma informatie voor meerdere dagen kost uren. Dit is onplezierig voor
de gebruiker maar ook voor de tvgids site zelf. Daarnaast komt nog dat alle gebruikers van MediaPortal en andere 
MediaCentre-achtige toepassingen diezelfde behoefte hebben en samen dus al gauw voor overlast op de tvgids site 
kunnen zorgen. Als die informatie eenmaal per dag op een gunstig tijdstip bij elkaar wordt gezocht en in xmltv vorm
voor iedereen wordt klaargezet dan kan het downloaden van die informatie voor de overige gebruikers opeens in 
seconden en raakt de tvgids site zelf niet overbelast.

Op de site xmltv.assies.info wordt dagelijks een .xmltv bestand bijgeplaatst met daarin de programma informatie van
over een week in gecomprimeerde vorm afkomstig van www.tvgids.nl. Het dagelijks downloaden van het nieuwe bestand 
gaat flitsend snel. MediaPortal verwacht echter één totale tvgids en niet een programmagids per dag. Het script 
tvgids.vbs haalt de actuele dagelijkse gidsen (dwz alles vanaf heden) op en schuift ze in elkaar tot die ene door 
MediaPortal verwachte tvguide.xml. 

Het tvgids.vbs script genereert de volgende resultaten
- het stelt de gebruiker in staat de zenders te filteren die hij/zij kan ontvangen vanuit de kanalenlijst van de 
  .xmltv bestanden, de zenderselectie wordt opgeslagen in het bestand zenders.xml
- het haalt nieuwe gids(en) van de site http://xmltv.assies.info op, als die er zijn, en slaat die lokaal op, 
  eventueel nog geldige en reeds aanwezige gidsen worden niet opnieuw opgehaald
- het verwijdert eerder opgehaalde gidsen uit de lokale map als ze intussen betrekking hebben op het verleden
- als er een nieuwe gids is opgehaald of als de zenderselectie door de gebruiker is gewijzigd, dan wordt het oude 
  bestand tvguide.xml verwijderd
- het combineert de actuele gidsen van xmltv.assies.info tot één nieuw bestand: tvguide.xml

In deze map zit reeds een bestand zenders.xml als voorbeeld. Hierin staan mijn eigen instellingen, zoals ik die
gebruik voor ontvangst via de kabeltv van Essent @Home. Door simpelweg dit bestand weg te gooien bereik je dat je, 
de eerstvolgende keer dat het tvgids.vbs script wordt uitgevoerd, bij elke in de .xmltv bestanden aanwezige zender 
de vraag krijgt of deze in de tabel moet worden opgenomen. Mocht hier een verkeerde keuze worden gemaakt of mocht 
later een andere keuze nodig zijn dan is er niets aan de hand: gewoon zenders.xml weer weggooien en het script 
tvgids.vbs nog eens laten lopen door er op te dubbelklikken met de muis. Mocht je in de war raken van al dat ja of
nee aanklikken bij de vele zenderprompts, dan is er nog een alternatieve manier om de zenders.xml file aan te 
maken. Kijk hiervoor bij punt 5, het uitbreiden met buitenlandse tvgids informatie.

1. Het instellen van MediaPortal op de plaats van tvguide.xml.
Op het moment dat je deze tekst leest heb je de gecomprimeerde map al ergens uitgepakt. Stel het door jou gekozen
pad is c:\tvgids. Dan bevindt het voor MediaPortal benodigde bestand zich straks ook in de map: "c:\tvgids". Om
dat in te stellen start je MediaPortal-Setup, selecteer je Television en daaronder Program Guide, selecteer het
tabblad General en vul dan in het vakje "Path to tvguide.xml" in: "c:\tvgids" (aanhalingstekens wel weglaten),
selecteer het tabblad Scheduler en klik op de pijl omlaag rechts in het invulvakje van Grabber, selecteer de optie
"TVguide.xml File", sluit MediaPortal-Setup door op de OK button rechts onderin te klikken.

2. Het handmatig starten van het script tvgids.nl
Maak een verwijzing naar tvgids.vbs op je bureaublad. Open daartoe de map van tvgids.xml zoals benoemd in de
vorige stap. Klik met de rechter muisknop op tvgids.vbs. Selecteer 'Kopiëren naar' en selecteer daar weer binnen 
'Bureaublad (snelkoppeling maken)'. Klik nu met de rechtermuisknop op deze snelkoppeling op het bureaublad, kies
'Eigenschappen', klik op de knop 'Ander pictogram', klik op de knop bladeren en zorg dat de map c:\tvgids wordt
gekozen, selecteer 'tvgids.ico'. Voordat je op het MediaPortal icoon dubbelklikt teneinde MediaPortal te starten
dubbelklik je voortaan eerst op de tvgids snelkoppeling op het bureaublad en veroorzaakt daarmee het bijwerken van
de tvguide.xml. De informatie staat nu klaar voor gebruik in MediaPortal.

3. Het automatisch laten starten van het script tvgids.vbs als windows opstart. Dit is de meest comfortabele
optie en maakt dat het ophalen van je tvgids naadloos geïntegreerd is in MediaPortal. Je hoeft zelf niets meer
te doen, alleen nog MediaPortal opstarten.
- Voor WindowsXP(NL): open de map 'C:\Documents and Settings\All Users\Menu Start\Programma's\Opstarten'
  Versleep de onder punt 2 op het bureaublad gemaakte snelkoppeling nu naar deze map.
- Voor andere Windows versies moet je de snelkoppeling verslepen naar een iets anders genaamde map:
  All Users Startup Folder - For Windows XP, 2000, and NT, this folder is used for programs that 
  should be auto started for all users who will login to this computer. It is generally found at:
  Windows XP(US) C:\Documents and Settings\All Users\Start Menu\Programs\Startup
  Windows NT 	C:\wont\Profiles\All Users\Start Menu\Programs\Startup
  Windows 2000 	C:\Documents and Settings\All Users\Start Menu\Programs\Startup

4. Staan je zenders in MediaPortal niet in de door jou gewenste zap volgorde pas die volgorde dan aan:
- start MediaPortal-Setup
- Selecteer Television
- Selecteer TV Channels
- Selecteer de eerste zender die niet goed staat door op de zendernaam te klikken met de muis, 
  bijvoorbeeld één (Belgie Vlaams 1) staat op positie 5 en dat wil je niet
- klik met de muis op de edit knop
- enter een hoog nog niet gebruikt nummer in het kanaal nummer, bijvoorbeeld 200, klik op OK
- Selecteer de zender die je eigenlijk op die positie 5 wilt hebben door op de zendernaam te klikken,
  bijvoorbeeld RTL5
- klik met de muis op de edit knop en enter nu het gewenste kanaalnummer, in dit voorbeeld 5, klik op OK
Je loopt zo je hele zenderlijst door. Aan het eind zijn dus de tussentijds toegekende hoge kanaal nummers, 
zoals in het voorbeeld 200 bij Éen, door jou weer vervangen door de gewenste kanaalnummers,
bijvoorbeeld 11 voor één. Aan het eind zet je ook in dit zenderoverzicht van MediaPortal alles in de gewenste 
volgorde door boven de Channel rubriek met alle door jou ingestelde kanaalnummers op het woord "Channel"
te klikken met de muis.

5a. Het uitbreiden van de Nederlandse tvgids.nl informatie met buitenlandse tvgids informatie. Stel je ontvangt
via de satelliet of via het digitale boeket van de kabel nog veel meer (buitenlandse) zenders waarvoor er op
tvgids.nl geen informatie beschikbaar is. Dan zijn er mogelijk soortgelijke aanbieders van een al klaarstaand
tvguide.xml bestand. Neem bijvoorbeeld de Franse tegenhanger van tvgids.nl: http://telecable.lesagencestv.com/.
Daarvoor is een programma onder windows beschikbaar dat het reeds klaar staande actuele tvguide.xml bestand 
ophaalt. Het grabben van de vele honderden zenders van die site voor meerdere dagen met xmltv zou veel te lang 
gaan duren om nog van praktische waarde te zijn. Om die tvguide.xml file van al gauw zo'n 20 megabyte groot op een
hanteerbaar formaat te krijgen, moet je in dezelfde map als van dat bestand een zenders.xml file aanmaken. Je doet
dat door met een kladblok achtige editor de file zenders.xml aan te maken op basis van informatie uit die
tvguide.xml. Ik adviseer hiervoor niet de windows kladblok(notepad) toepassing te gebruiken (dat zal waarschijnlijk
zijn nek breken over de bestandsgrootte), maar het veel betere Metapad. Deze texteditor is gratis te downloaden
vanaf: http://www.liquidninja.com/metapad/

5b. Het zelf maken van de zenders.xml file. Maak eerst een tvguide.xml bestand met het desbetreffende download 
programma. Start je editor(bijvoorbeeld Metapad) en open daarmee de file tvguide.xml. Waar die file staat hangt af
van het download programma dat hem voor je van het internet plukte. Stel je gebruikt de GrabTvFr.exe waarmee 
de bovengenoemde Franse gids wordt opgehaald, dan staat het resultaat in:
C:\Program Files\Team MediaPortal\MediaPortal\xmltv\tvguide.xml. 
Het bestand zenders.xml moet dan komen op:
C:\Program Files\Team MediaPortal\MediaPortal\xmltv\zenders.xml.
Voorin tvguide.xml wordt elk kanaal gedefinieerd met een groep regels die begint met bijvoorbeeld de regel:
<channel id="C3.lesagencestv.com"> en eindigt met de regel </channel>. Dat zijn in totaal meestal 3 of 4 regels 
per zender. Ga naar het eind van de sectie met kanaal definities, dat wil zeggen tot net op de laatste regel met 
</channel>, boven de eerste regel die begint met <programme start=. Selecteer de hele bovenkant van de file, dus
vanaf de laatste </channel> regel tot aan de eerste file regel <?xml version="1.0" encoding="ISO-8859-1"?> en
kopieer dit (Crl+C). Open een nieuw bestand en plak de zojuist gekopieerde informatie daar in. Voeg nog een 
laatste regel toe met daarin </tv> en het is weer een prima xml bestand. Sla dit bestand op als zenders.xml. Dit
is nog niet je uiteindelijke zenders.xml bestand, maar wel een prima startpunt daarvoor.

5c. Bekijk nu één voor één de kanalen definities in zenders.xml, dat wil zeggen  steeds een groep records die
begint met de regel <channel id= en eindigt met de regel </channel>. In die groep staat een regel met bijvoorbeeld
<display-name>France 2</display-name>. De naam tussen <display-name> en </display-name> is de zendernaam zoals wij
die herkennen en zoals die in MediaPortal getoond kan worden. Kan je die zender ontvangen, laat dan de complete
groep regels van die zender staan (dus vanaf de direct voorgaande <channel id= tot en met de eerstvolgende 
</channel>). Kan je die zender niet ontvangen verwijder dan die groep regels. 

5d. Zorg er voor dat de informatie uit deze speciale tvguide.xml wordt samengevoegd met de Nederlandse tvguide.xml.
Dat doe je door in de map van het script tvgids.vbs, tevens de map van de Nederlandse tvguide.xml, het bestand
tvgids.ctl te openen met een kladblok achtige editor. Stel het betreffende grabber programma is te vinden als:
C:\tvgids\TvFrance\GrabTvFr.exe
dan voeg je een regel toe voor de END tvgids regel met daarin: 
RUN C:\tvgids\TvFrance\GrabTvFr.exe
Aan het eind van het ophalen van de Nederlandse tvgids informatie zal het tvgids.vbs script nu ook dat grabber
programma laten draaien.
Stel het betreffende programma zet het resultaat neer op de plaats:
C:\Program Files\Team MediaPortal\MediaPortal\xmltv\tvguide.xml
dan voeg je achter de RUN regel toe
MERGE C:\Program Files\Team MediaPortal\MediaPortal\xmltv\tvguide.xml
Het script zal deze extra tvguide samenvoegen met de Nederlandse tvguide.xml en op de plaats zetten van de 
Nederlandse file. De END tvgids regel moet de laatste regel blijven. Alles na de END wordt genegeerd.

5e. Kan je nog meer buitenlandse zenders ontvangen (ik begin nu jaloers te worden), dan herhaal je gewoon de 
stappen 5b tot en met 5d, net zo lang tot je alles bij elkaar hebt.

6.Het uitbreiden van de Nederlandse zenderinformatie met Talpa programma's. In de xmltv bestanden van de site
xmltv.assies.info staat nog geen Talpa informatie. Die informatie gaat in de nabije toekomst wel in die
bestanden opgenomen worden. In de tussentijd kan je de Talpa informatie toevoegen net zoals je buitenlandse gids
informatie toevoegt. Als je bijvoorbeeld de tvgids grabber van Amontillado van zijn website ophaalt
http://www.cask-of-amontillado.com/files/TVGids_to_xml.zip en die uitpakt in c:\tvgids\Amontillado dan is het
voldoende om de overeenkomstige RUN en MERGE opdrachten in de tvgids.ctl file te activeren door het verwijderen
van het sterretje in de eerste kolom van die opdrachten. Voordeel: je gidsinformatie is compleet. Nadeel: het
kost al gauw een minuut of meer om alleen de Talpa informatie er bij te halen, terwijl alle overige zenders 
tesamen slechts enkele seconden kosten. Je moet bij het uitpakken van die zip file niet het door mij geleverde
TVGids_to_xml.ini overschrijven. Die staat nu zo ingesteld dat alleen de Talpa informatie wordt opgehaald!
Overschrijf je dit bestand met dat van Amontillado dan haal je van alle zenders de gegevens op en ben je zo 
een uur of langer zoet.

Veel kijkplezier met je MediaPortal tvgids. 
robertprins@home.nl

