Die API ist nicht für den privaten Gebrauch gedacht.
Jedes Programm erhält eine eigene ID die zur Prüfsummenberechnung benötigt wird, ohne die ein Zugriff auf die API nicht möglich ist.
Eine ID darf nur für ein Programm verwendet werden! Wie dies Berechnung genau aussieht, wird Ihnen auf Anfrage per Email an otrsupport@googlemail.com mitgeteilt.
Da das Auslesen unserer Daten zusätzlichen Aufwand für die Server bedeutet, bitten wir Sie, in alle folgenden Punkte einzuwilligen, bevor Sie mit Ihrem Programm auf unsere API zugreifen:
• Sie stellen nicht mehr Requests an unsere Server als unbedingt nötig sind
• Ihr Programm enthält aktuelle Banner der Werbepartner von onlinetvrecorder.com an eine prominenten*1 Stelle Ihrer Programmoberfläche, mit dem Hinweis, dass onlinetvrecorder.com durch Werbeeinahmen finaziert wird
• Sie halten die Prüfsummenberechnung geheim und geben sie auch nicht an Andere zum testen weiter
• In Ihrer GUI (zB. im About-Dialog, falls vorhanden) ist Ihre Programm-ID für jeden sichtbar
*1 Banner sollten sofort zu sehen sein und nicht auf einem Unterformular versteckt werden
Die API-Aufrufe Ihres Programms werden geloggt. Sollte sich hierbei ein Mißverhältnis zeigen (zB. ebensoviele Dateiaufrufe wie Listenabrufe), wird Ihr Programm gesperrt.
Sollte sich herausstellen, das Ihre ID auch von anderen Programmen verwendet wird, wird Ihre ID ebenfalls gesperrt. Da dies aber nur passieren kann, wenn Sie die Prüfsummenberechnung weitergeben, ist es sicher in Ihrem eigenen Interesse, diese nicht weiterzugeben.
Der Platzhalter [otr] steht für http://www.onlinetvrecorder.com
An jede Datei müssen evtl. zusätzliche Parameter angehängt werden, die nachfolgend erklärt werden.
An jede Datei müssen evtl. zusätzliche Parameter angehängt werden, die nachfolgend erklärt werden.
[otr]/downloader/api/login.php
• | ?email= | Email-Adresse |
• | &pass= | Passwort als MD5-Hash |
• | &did= | Programm-Id |
• | &checksum= | Checksumme |
Nach erfolgreichem Login wird die SessionId zurückgegeben.
Es ist Ihnen ausdrücklich untersagt, eingegebene Logindaten auszulesen, auszuwerten, zu speichern, zu veröffentlichen oder weiterzugeben!
[otr]/downloader/api/signup.php
• | &email= | E-Mail, urlencoded |
• | &did= | Programm-Id |
• | &checksum= | Checksumme |
Zurückgegeben wird eine XML-Datei mit folgenden Werten:
<NEWACCOUNT>
<OK>bool</OK>
<MESSAGE>[ACCOUNT_CREATED, ERROR, ACCOUNT_ALREADY_EXISTS, EMAIL_NOT_VALID]</MESSAGE>
<PASSWORD>[string]</PASSWORD>
</NEWACCOUNT>
<OK>bool</OK>
<MESSAGE>[ACCOUNT_CREATED, ERROR, ACCOUNT_ALREADY_EXISTS, EMAIL_NOT_VALID]</MESSAGE>
<PASSWORD>[string]</PASSWORD>
</NEWACCOUNT>
[otr]/downloader/api/request_list2.php
• | ?showonly= | [recordings, scheduled, archive] |
• | &orderby= | [genre, genre_desc, station, station_desc, time, time_desc, title, title_desc] |
• | &did= | Programm-Id |
• | &checksum= | Checksumme |
Optionale Parameter
• | &maxitems= | [1..100] | |
• | &status_scheduled= | [false] | blendet den 'scheduled'-Status aus |
• | &status_recording= | [false] | blendet den 'recording'-Status aus |
• | &status_ready= | [false] | blendet den 'ready for download'-Status aus |
• | &status_downloaded= | [false] | ~ |
• | &status_decoded= | [false] | ~ |
• | &status_paid= | [false] | ~ |
• | &status_bad= | [false] | ~ |
• | &status_pending= | [false] | ~ |
• | &status_expected= | [false] | ~ |
• | &unsupportedstation= | [false] | ~ |
• | &status_unknownstation= | [false] | ~ |
• | &status_removed= | [false] | ~ |
Zurückgegeben wird eine XML-Datei mit folgendem Aufbau:
<FILE>
<ID>12</ID>
<EPGID>34</EPGID>
<DOWNLOADCOUNT>0</DOWNLOADCOUNT>
<DECODECOUNT>0</DECODECOUNT>
<PAID>[ja/nein]</PAID>
<STATION>w</STATION>
<TITLE>x</TITLE>
<GENRE>y</GENRE>
<BEGIN>56</BEGIN>
<END>78</END>
<STATUS>z</STATUS>
<FORMATS>x</FORMATS>
<FILENAME>fn</FILENAME>
<DURATION>12 Minuten</DURATION>
<FILEREQUEST>http://www.onlinetvrecorder.com/downloader/api/request_file2.php</FILEREQUEST>
</FILE>
<ID>12</ID>
<EPGID>34</EPGID>
<DOWNLOADCOUNT>0</DOWNLOADCOUNT>
<DECODECOUNT>0</DECODECOUNT>
<PAID>[ja/nein]</PAID>
<STATION>w</STATION>
<TITLE>x</TITLE>
<GENRE>y</GENRE>
<BEGIN>56</BEGIN>
<END>78</END>
<STATUS>z</STATUS>
<FORMATS>x</FORMATS>
<FILENAME>fn</FILENAME>
<DURATION>12 Minuten</DURATION>
<FILEREQUEST>http://www.onlinetvrecorder.com/downloader/api/request_file2.php</FILEREQUEST>
</FILE>
[otr]/downloader/api/request_file2.php
• | ?id= | ist vorgegeben |
• | &epgid= | ist vorgegeben |
• | &file= | ist vorgegeben |
• | &did= | Programm-Id |
• | &checksum= | Checksumme |
Zurückgegeben wird eine XML-Datei mit folgenden Werten:
< [AVI|HQ|MP4....] > // Format
<FILENAME></FILENAME>
<SIZE></SIZE>
<FREE>http://downloadlink...</FREE>
<PRIO>http://downloadlink...</PRIO>
<PAID>http://downloadlink...</PAID>
<IPHONE>http://downloadlink...</IPHONE>
<MOBILE>http://playerlink...</MOBILE>
<TORRENT>
<FREE>http://downloadlink...</FREE>
<DIRECT>http://downloadlink...</DIRECT>
<PRIO>http://downloadlink...</PRIO>
<PAID>http://downloadlink...</PAID>
<COMBI>http://downloadlink...</COMBI>
</TORRENT>
<GWPCOSTS>
<FREE></FREE>
<PRIO></PRIO>
<PAID></PAID>
</GWPCOSTS>
<MIRROR>http://mirrorlink...</MIRROR>
<INFOTEXT></INFOTEXT>
< /[AVI|HQ|MP4] >
<FILENAME></FILENAME>
<SIZE></SIZE>
<FREE>http://downloadlink...</FREE>
<PRIO>http://downloadlink...</PRIO>
<PAID>http://downloadlink...</PAID>
<IPHONE>http://downloadlink...</IPHONE>
<MOBILE>http://playerlink...</MOBILE>
<TORRENT>
<FREE>http://downloadlink...</FREE>
<DIRECT>http://downloadlink...</DIRECT>
<PRIO>http://downloadlink...</PRIO>
<PAID>http://downloadlink...</PAID>
<COMBI>http://downloadlink...</COMBI>
</TORRENT>
<GWPCOSTS>
<FREE></FREE>
<PRIO></PRIO>
<PAID></PAID>
</GWPCOSTS>
<MIRROR>http://mirrorlink...</MIRROR>
<INFOTEXT></INFOTEXT>
< /[AVI|HQ|MP4] >
Wenn es mehrere Formate zu einer Aufnahme gibt, wird dieser Block pro Aufnahme mehrfach aufgerufen.
Bitte rufen Sie diese Datei nur auf, wenn die entsprechende Datei auch heruntergeladen werden soll.
[otr]/downloader/api/userinfo.php
• | &did= | Programm-Id |
• | &checksum= | Checksumme |
• | &email= | E-Mail, Base64-encoded |
Zurückgegeben wird eine XML-Datei mit folgenden Werten:
<USER>
<ID></ID>
<EMAIL></EMAIL>
<STATUS></STATUS>
<UNTIL>Ablaufdatum vom Status als Unix Timestamp</UNTIL>
<UNTILNICE></UNTILNICE>
<GWP></GWP>
</USER>
<ID></ID>
<EMAIL></EMAIL>
<STATUS></STATUS>
<UNTIL>Ablaufdatum vom Status als Unix Timestamp</UNTIL>
<UNTILNICE></UNTILNICE>
<GWP></GWP>
</USER>
[otr]/index.php
• | &did= | Programm-Id |
• | &checksum= | Checksumme |
• | &aktion=search | |
• | &api=true | |
• | &future=true | |
• | &searchterm= | Suchwort |
Zurückgegeben wird eine XML-Datei mit folgenden Werten:
<SHOW>
<EPGID></EPGID>
<STATION></STATION>
<BEGIN></BEGIN>
<NICEBEGIN></NICEBEGIN>
<END></END>
<NICEEND></NICEEND>
<TITLE></TITLE>
<PROGRAMLINK></PROGRAMLINK>
</SHOW>
<EPGID></EPGID>
<STATION></STATION>
<BEGIN></BEGIN>
<NICEBEGIN></NICEBEGIN>
<END></END>
<NICEEND></NICEEND>
<TITLE></TITLE>
<PROGRAMLINK></PROGRAMLINK>
</SHOW>
[otr]/downloader/api/stations.php
Zurückgegeben wird eine XML-Datei mit folgenden Werten:
<ITEM>
<TITLE></TITLE>
<COUNTRY></COUNTRY>
<LANGUAGE></LANGUAGE>
</ITEM>
<TITLE></TITLE>
<COUNTRY></COUNTRY>
<LANGUAGE></LANGUAGE>
</ITEM>
[otr]/downloader/api/request_banner.php
• | &did= | Programm-Id |
• | &checksum= | Checksumme |
[otr]/index.php
• | &aktion=testdecoding | |
• | &email= | E-Mail-Adresse vom OTR-User |
• | &password= | Passwort vom OTR-User (Hier ist das Mirror-Passwort gemeint, was der User zusätzlich in seinem Profil hinterlegen kann und welches eine Gültigkeit von 30 Tagen hat) |
• | &filename= | Original Dateiname, inklusive der Endung .otrkey |
• | &mirror= | URL Ihrer Mirror-Homepage |
Wenn der angegebene User die angegebene Datei dekodieren darf, wird "OK" zurückgegeben, ansonsten "Error".
Es ist Ihnen ausdrücklich untersagt, eingegebene Logindaten auszulesen, auszuwerten, zu speichern, zu veröffentlichen oder weiterzugeben!
Es ist ebenfalls untersagt, den User nach seinem Haupt-Passwort von OTR zu fragen.
Bitte weisen Sie Ihre Benutzer darauf hin, das durch diese Abfrage - im Erfolgsfall - eine Dekodierung angerechnet wird!
Um eine Aufnahme zu prgrammieren gibt es 2 Möglichkeiten.
[otr]/index.php
• | &aktion=createJob | |
• | &api=true | |
• | &email= | E-Mail-Adresse vom OTR-User |
• | &pass= | Passwort vom OTR-User |
• | &tvStation= | Sendername |
• | &startDate_day= | Start-Tag der Aufnahme, Format TT |
• | &startDate_month= | Start-Monat der Aufnahme, Format MM |
• | &startDate_year= | Start-Jahr der Aufnahme, Format YYYY |
• | &startTime_hour= | Start-Stunde der Aufnahme, Format SS |
• | &startTime_minute= | Start-Minute der Aufnahme, Format MM |
• | &endTime_hour= | End-Stunde der Aufnahme, Format SS |
• | &endTime_minute= | End-Minute der Aufnahme, Format MM |
• | &titleName= | Titel der Aufnahme |
- oder -
[otr]/index.php
• | &aktion=createJob | |
• | &api=true | |
• | &email= | E-Mail-Adresse vom OTR-User |
• | &pass= | Passwort vom OTR-User |
• | &byid=true | |
• | &epgid= | EPG-Id, base64-encoded |
[otr]/index.php
• | &aktion=deleteJob | |
• | &uid= | E-Mail-Adresse oder die Id vom OTR-User, base64-encoded |
• | &epgid= | EPG-Id der Aufnahme, base64-encoded |
[otr]/index.php
• | &aktion=epg_export | |
• | &format=xml | |
• | &btn_ok=OK | |
• | &stations= | Sendertitel laut Sender-XML, mehrere mit Komma trennen |
• | &from= | Startdatum, Format: dd.mm.YYYY |
• | &to= | Enddatum, Format: dd.mm.YYYY |
Zurückgegeben wird eine XML-Datei mit folgenden Werten:
<ITEM>
<Id>[EPG-Id]</Id>
<BEGINN></BEGINN>
<ENDE></ENDE>
<DAUER></DAUER>
<SENDER></SENDER>
<TITEL></TITEL>
<TYP>[Genre]</TYP>
<TEXT>[ggf. Infotexte]</TEXT>
<HIGHLIGHT></HIGHLIGHT>
<FSK></FSK>
<WEEKDAY></WEEKDAY>
<WDH>0</WDH>
<NICEDATE></NICEDATE>
<DOWNLOADLINK></DOWNLOADLINK>
<INFOLINK></INFOLINK>
<PROGRAMLINK></PROGRAMLINK>
</ITEM>
<Id>[EPG-Id]</Id>
<BEGINN></BEGINN>
<ENDE></ENDE>
<DAUER></DAUER>
<SENDER></SENDER>
<TITEL></TITEL>
<TYP>[Genre]</TYP>
<TEXT>[ggf. Infotexte]</TEXT>
<HIGHLIGHT></HIGHLIGHT>
<FSK></FSK>
<WEEKDAY></WEEKDAY>
<WDH>0</WDH>
<NICEDATE></NICEDATE>
<DOWNLOADLINK></DOWNLOADLINK>
<INFOLINK></INFOLINK>
<PROGRAMLINK></PROGRAMLINK>
</ITEM>
[otr]/downloader/api/epg.php
• | &epg_id= | EPG-Id |
• | &did= | Programm-Id |
• | &checksum= | Checksumme |
Zurückgegeben wird eine XML-Datei mit folgenden Werten:
<ITEM>
<ID>[EPG-Id]</ID>
<BEGIN></BEGIN>
<NICEBEGIN></NICEBEGIN>
<END></END>
<NICEEND></NICEEND>
<DURATION></DURATION>
<STATION></STATION>
<TITLE></TITLE>
<TYP></TYP>
<TEXT></TEXT>
<HIGHLIGHT></HIGHLIGHT>
<FSK></FSK>
<WEEKDAY></WEEKDAY>
<WDH></WDH>
<PROGRAMINGS></PROGRAMINGS>
<DOWNLOADLINK></DOWNLOADLINK>
<PROGRAMLINK></PROGRAMLINK>
</ITEM>
<ID>[EPG-Id]</ID>
<BEGIN></BEGIN>
<NICEBEGIN></NICEBEGIN>
<END></END>
<NICEEND></NICEEND>
<DURATION></DURATION>
<STATION></STATION>
<TITLE></TITLE>
<TYP></TYP>
<TEXT></TEXT>
<HIGHLIGHT></HIGHLIGHT>
<FSK></FSK>
<WEEKDAY></WEEKDAY>
<WDH></WDH>
<PROGRAMINGS></PROGRAMINGS>
<DOWNLOADLINK></DOWNLOADLINK>
<PROGRAMLINK></PROGRAMLINK>
</ITEM>
[otr]/downloader/api/infotext_from_filename.php
• | &filename= | Dateiname bis einschl. 'TVOON_DE' |
• | &did= | Programm-Id |
• | &checksum= | Checksumme |
Zurückgegeben wird eine XML-Datei mit folgenden Werten:
<ITEM>
<TXT1></TXT1>
<TXT2></TXT2>
<TXT3></TXT3>
<EPGID></EPGID>
</ITEM>
<TXT1></TXT1>
<TXT2></TXT2>
<TXT3></TXT3>
<EPGID></EPGID>
</ITEM>
[otr]/downloader/api/ftppush.php
• | &filename= | Vollständiger Dateiname |
• | &host= | Host |
• | &port= | Port |
• | &username= | Login-Benutzername |
• | &password= | Login-Passwort |
• | &directory= | Upload-Verzeichnis, muss mit "/" beginnen |
• | &did= | Programm-Id |
• | &checksum= | Checksumme |
Zurückgegeben wird eine XML-Datei mit folgenden Werten:
<ITEM>
<FTPPUSH_ID></FTPPUSH_ID>
<RESULT>"DOUBLE", "ERROR" oder "ADDED"</RESULT>
<CHECKLINK></CHECKLINK>
<DELETELINK></DELETELINK>
</ITEM>
<FTPPUSH_ID></FTPPUSH_ID>
<RESULT>"DOUBLE", "ERROR" oder "ADDED"</RESULT>
<CHECKLINK></CHECKLINK>
<DELETELINK></DELETELINK>
</ITEM>
[otr]/downloader/api/deleteftppush.php
• | &ftppush_id= | ID vom FTP-Push-Auftrag |
• | &did= | Programm-Id |
• | &checksum= | Checksumme |
Zurückgegeben wird eine XML-Datei mit folgenden Werten:
<ITEM>
<RESULT>"OK" oder "ERROR"</RESULT>
</ITEM>
<RESULT>"OK" oder "ERROR"</RESULT>
</ITEM>
[otr]/downloader/api/ftppushs.php
• | &ftppush_id= | Optional. Ohne diesen Parameter werden alle Aufträge angezeigt |
• | &did= | Programm-Id |
• | &checksum= | Checksumme |
Zurückgegeben wird eine XML-Datei mit folgenden Werten:
<ITEM>
<FTPPUSH_ID></FTPPUSH_ID>
<FILENAME></FILENAME>
<HOST></HOST>
<MESSAGE></MESSAGE>
<ADDED></ADDED>
<ADDED_NICE></ADDED_NICE>
<LASTTRY></LASTTRY>
<LASTTRY_NICE></LASTTRY_NICE>
<RETRIES></RETRIES>
<DELETELINK></DELETELINK>
<SUCCESS>[1=OK, 0=Fehler]</SUCCESS>
</ITEM>
<FTPPUSH_ID></FTPPUSH_ID>
<FILENAME></FILENAME>
<HOST></HOST>
<MESSAGE></MESSAGE>
<ADDED></ADDED>
<ADDED_NICE></ADDED_NICE>
<LASTTRY></LASTTRY>
<LASTTRY_NICE></LASTTRY_NICE>
<RETRIES></RETRIES>
<DELETELINK></DELETELINK>
<SUCCESS>[1=OK, 0=Fehler]</SUCCESS>
</ITEM>
[otr]/rss/highlights_germany.xml
[otr]/rss/highlights_usa.xml
[otr]/rss/toprecordings_germany.xml
[otr]/rss/toprecordings_usa.xml
Zurückgegeben wird immer eine XML-Datei mit folgenden Werten:
<ITEM>
<EPGID></EPGID>
<BEGIN></BEGIN>
<NICEBEGIN></NICEBEGIN>
<END></END>
<NICEEND></NICEEND>
<STATION></STATION>
<TITLE></TITLE>
</ITEM>
<EPGID></EPGID>
<BEGIN></BEGIN>
<NICEBEGIN></NICEBEGIN>
<END></END>
<NICEEND></NICEEND>
<STATION></STATION>
<TITLE></TITLE>
</ITEM>