@derd Du brauchst einmal eine Swiss IP auf dem API Server und auch der Client braucht ne Swiss IP (bei Ultimate bin ich mir nicht ganz sicher, aber bei Free auf jeden Fall). Dann kommt noch hinzu: Swiss IP ist nicht gleich Swiss IP. Bzw. nicht jede funktioniert. Es gibt auch Swiss IPs die von Zattoo geblockt werden. Falls du nen VPN nutzt würde ich die Swiss IP einmal per Browser testen, ob die überhaupt genommen wird.
[DISCONTINUED] Telerising API - Zattoo für tvHeadend und VLC [Perl]
-
easy4me -
24. Februar 2018 um 14:05 -
Erledigt
-
-
alle die probleme haben mit vpn einrichtung hier mal eine anleitung :
1.apt-get -y install openvpn
2.Man läd die .ovpn datei runter die man braucht vom vpn anbieter und kopiert die irgendwo hin wo man möchte
3.In der konsole setzt ihr anschließend die berechtigung der datei auf 777 chmod -R 777 pfad zur .ovpn datei.
4.Nun gebt ihr nano "pfad zu datei" und bei auth-user-pass den pfad eingeben : /etc/openvpn/xxx/code.txt sollte dann so aussehen "auth-user-pass /etc/openvpn/xxxx/code.txt" (pfad entsprechend anpassen)
5.Erstellen wir einen text datei mit den namen code (nano "pfad zur datei/code.txt" und geben den usernamen und pass ein sollte so aussehen :speichern mit STRG+O
6.Nun erstellen wir uns einen service für vpn damit es automatisch beim reboot wieder startet.Dazu in der Konsole nano /etc/systemd/system/ovpn.service ein und kopiert den inhalt im code in der datei rein, wichtig ist ihr müsst das "xxx" mit euren pfad anpassen.
Code
Alles anzeigen[Unit] Description=Starting Telerising API for Zattoo ConditionPathExists=/xxx/xxx After=network.target After=tvheadend.service [Service] WorkingDirectory=/xxx/xxx/ ExecStart=/usr/bin/perl zattoo.pl & disown Restart=on-failure RestartSec=3 [Install] WantedBy=multi-user.target
7. Jetzt kann man mit folgenden befehlen alles regeln :
Codesystemctl enable openvpn.service //aktivieren wir den service (autostart) systemctl start openvpn.service //starten wir den service systemctl status openvpn.service //überprüfen wir den status journalctl -u openvpn //[definition='1','0']log[/definition] einsehen
8.Nun sollte openvpn automatisch nach dem neustart wieder starten.
-----------------------------------------------------------------------------------------------
EDIT : Wenn ich htsp auswähle kommt bei vlc player : access error: HTTP 503 error http error: error: HTTP/1.0 503 Unknown Code kann wer helfen ?
hast du ein tutorial für einrichtung eines l2tp / pptp vpns in debian (raspbian)? openvpn unterstützt das nicht. konnte im internet nichts brauchbares dazu finden. weißt du auch wie man den vpn nur für telerising einrichtet (eine art sandbox vom rest des systems abgeschottet) und der rest des traffics soll nicht über den vpn laufen?
-
-
weißt du auch wie man den vpn nur für telerising einrichtet (eine art sandbox vom rest des systems abgeschottet) und der rest des traffics soll nicht über den vpn laufen?
Daran habe ich mir auf Ubuntu auch schon die Zähne ausgebissen. Erfolglos.
Den einzigen Erfolg hatte ich auf meinem Windows Lappi mit ner Ubuntu VirtualBox. Da hab ich dann ein zweites Netzwerk angelegt und die entsprechenden Ports darüber geleitet. Da geht das ja auch ziemlich leicht in den Settings per Maus. Aber welche Befehle auf nem richtigen Server dafür nötig sind - 0 Ahnung. -
ne bin noch anfänger in linux gebiet.Du kannst auch einfach smartdnsproxi testen/kaufen und wie es im code steht ausführen das xx entsprechend bearbeiten.Auf dem client z.b bei windows gibst den dns auch ein.Nach den schritten muss man linux neustarten.
Code//install apt update apt install resolvconf nano /etc/resolvconf/resolv.conf.d/head nameserver xx.xx.xx.xx //service systemctl status resolvconf.service //status des resolvconf systemctl start resolvconf.service //starten des resolvconf systemctl enable resolvconf.service //autostart aktivieren
danke dir es geht aber wenn ich jetzt die liste lade sind die links nicht drinne sondern nur "#EXTM3U" am anfang.Weisst du wie ich das beheben kann ?
-
-
du musst dem user die gewünschten channels frei geben, diese müssen in der kanalliste gemappt + einzigartig nummeriert sein.
-
@derd Du brauchst einmal eine Swiss IP auf dem API Server und auch der Client braucht ne Swiss IP (bei Ultimate bin ich mir nicht ganz sicher, aber bei Free auf jeden Fall). Dann kommt noch hinzu: Swiss IP ist nicht gleich Swiss IP. Bzw. nicht jede funktioniert. Es gibt auch Swiss IPs die von Zattoo geblockt werden. Falls du nen VPN nutzt würde ich die Swiss IP einmal per Browser testen, ob die überhaupt genommen wird.
Also, dass der Server bei dem die IP läuft eine Swiss IP benötigt war mir bisher klar (bis vorhin, als kurz das Thema aufkam, warum ich einen VPN dafür nutze). Scheinbar funktioniert Zattoo Ultimate aus Deutschland auch ohne all die Späße und auch aus dem Ausland. Das geht lt. Zattoo Website nicht. Der Client, der auf die API von Außen zugreift braucht allerdings keine schweizer IP Adresse. Das würde auch bisschen den Sinn des Skripts aushebeln oder nicht? Zattoo bekommt ja von dem Client nichts mit, da nur die API "schaut" und den Stream weiterleitet @easy4me bin ich da soweit auf dem richtigen Dampfer?!
Daran habe ich mir auf Ubuntu auch schon die Zähne ausgebissen. Erfolglos.Den einzigen Erfolg hatte ich auf meinem Windows Lappi mit ner Ubuntu VirtualBox. Da hab ich dann ein zweites Netzwerk angelegt und die entsprechenden Ports darüber geleitet. Da geht das ja auch ziemlich leicht in den Settings per Maus. Aber welche Befehle auf nem richtigen Server dafür nötig sind - 0 Ahnung.
Ich habe dazu ein Mini-Skript geschrieben, welches auf Ubuntu und mit OpenVPN bzw OpenPYN für NordVPN läuft. Sollte auch gehe wenn ihr ganz normal OpenVPN verwendet. Das ganze funktioniert so, dass OpenVPN sobald die Route hinzugefügt wird ein route-up Skript lädt. Damit eben das route-up Skript geladen wird sieht meine openpyn.service Daten im Ordner /etc/systemd/system wie folgt aus:Code
Alles anzeigen[Unit] Description=NordVPN connection manager Wants=network-online.target After=network-online.target After=multi-user.target [Service] Type=simple User=root WorkingDirectory=/usr/local/lib/python3.6/dist-packages/openpyn/ ExecStartPre=/bin/sleep 5 ExecStart=/usr/local/bin/openpyn ch -t 20 -o '--route-noexec --route-up /home/derd/route-up.sh --ping 10 --ping-restart 30' ExecStop=/usr/local/bin/openpyn --kill StandardOutput=syslog StandardError=syslog [Install] WantedBy=multi-user.target
Was wird gemacht bei ExecStart? openpyn will sich nach CH verbinden und testet randomisiert 20 Server und verbindete sich mit dem schnellsten, route-noexec bedeutet keine Route-Einträge vom OpenVPN Server werden akzeptiert und in die Routingtabelle geschrieben (wichtig), route-up bedeutet ein Skript wird geöffnet welches die Routen manuell anlegt.
Das Skript welches aufgerufen wird fragt als erstes die IPs die von Zattoo verwendet werden ab, damit genau diese und eben nur diese im weiteren Verlauf über den VPN geroutet werden. Das sieht dann wie folgt aus:
Bash
Alles anzeigen#!/bin/bash # WICHTIG: USE –route-noexec AND THEN THIS FILE WITH –route-up zattoo1_ranges=$(curl https://ipinfo.io/AS8302 | grep -e "^ *[0-9]\{2,3\}\.[0-9]\{2,3\}\.[0-9]\{2,3\}\.0/24" | tr -d " ") zattoo2_ranges=$(curl https://ipinfo.io/AS16509 | grep -e "^ *[0-9]\{2,3\}\.[0-9]\{2,3\}\.[0-9]\{2,3\}\.0/24" | tr -d " ") zattoo3_ranges=$(curl https://ipinfo.io/AS15517 | grep -e "^ *[0-9]\{2,3\}\.[0-9]\{2,3\}\.[0-9]\{2,3\}\.0/24" | tr -d " ") zattoo4_ranges=$(curl https://ipinfo.io/AS16509 | grep -e "^ *[0-9]\{2,3\}\.[0-9]\{2,3\}\.[0-9]\{2,3\}\.0/24" | tr -d " ") # Routes to Zattoo use VPN 1 for range in $zattoo1_ranges; do /sbin/ip route add $range via $route_vpn_gateway dev $dev done # Routes to Zattoo use VPN 2 for range in $zattoo2_ranges; do /sbin/ip route add $range via $route_vpn_gateway dev $dev done # Routes to Zattoo use VPN 3 for range in $zattoo3_ranges; do /sbin/ip route add $range via $route_vpn_gateway dev $dev done # Routes to Zattoo use VPN 4 for range in $zattoo4_ranges; do /sbin/ip route add $range via $route_vpn_gateway dev $dev done /sbin/ip route add 91.123.0.0/16 via $route_vpn_gateway dev $dev /sbin/ip route add 79.125.22.0/24 via $route_vpn_gateway dev $dev /sbin/ip route add 104.20.54.0/24 via $route_vpn_gateway dev $dev /sbin/ip route add 104.103.0.0/24 via $route_vpn_gateway dev $dev /sbin/ip route add 62.65.130.0/24 via $route_vpn_gateway dev $dev /sbin/ip route add 52.212.210.0/24 via $route_vpn_gateway dev $dev /sbin/ip route add 80.238.248.0/24 via $route_vpn_gateway dev $dev /sbin/ip route add 104.26.0.0/16 via $route_vpn_gateway dev $dev
Am Schluss des Skripts werden noch einmal von mir manuell herausgefundene IP Blöcke von Zattoo in die Routingtabelle eingetragen. Das liegt daran, dass ipinfo.io irgendwann Fehler ausgespuckt hat, weil zu viele Zugriffe auf die Free-API waren und dann die Route Einträge nicht geschrieben werden konnten. Mit den manuellen IP Blöcken am Ende hat man halt doppelte Sicherheit.
Tatsache ist aber - hin oder her - FullHD über einen NordVPN OpenVPN Tunnel so wie er hier beschrieben ist funktioniert nicht einwandfrei. Die Bandbreite scheint irgendwie das Problem zu sein. Der VPS auf dem das läuft ist mit 1Gbit angebunden, 1Core, 1GB RAM 5GB NVME SSD.
-
-
Der Client, der auf die API von Außen zugreift braucht allerdings keine schweizer IP Adresse.
Doch, braucht er. Der Server stellt meines Wissens, bitte berichtige mich @easy4me falls ich falsch liege, nur die generierte URL zur Verfügung, das eigentliche Streaming verrichtet der Client.
Edit:
Wenn du natürlich TVH auf dem API Server nutzt und die Streams per Transkoding durchgereicht werden, dann könnte das mit der Swiss IP natürlich beim Clienten wegfallen. -
Doch, braucht er. Der Server stellt meines Wissens, bitte berichtige mich @easy4me falls ich falsch liege, nur die generierte URL zur Verfügung, das eigentliche Streaming verrichtet der Client.
Edit:
Wenn du natürlich TVH auf dem API Server nutzt und die Streams per Transkoding durchgereicht werden, dann könnte das mit der Swiss IP natürlich beim Clienten wegfallen.Kann nur jetzt von Ultimate CH sprechen. Wenn der Server eine IP aus CH hat dann kann ich direkt auf das Telerising API zugreifen mit einer IP aus AT. Free kann ich nicht ausprobieren.
-
-
Ich nutze den deutschen Ultimate, ich hab keine Probleme, ich nutze die Streams auch direkt im IPTV Simple PVR, also ganz ohne TVH.
Hab aber mal nen Zattoo CH free auf ner Virtual Machine getestet, da brauchte ich auf jeden fall sowohl als auch eine schweizer IP. -
Ich nutze den deutschen Ultimate, ich hab keine Probleme, ich nutze die Streams auch direkt im IPTV Simple PVR, also ganz ohne TVH.
Hab aber mal nen Zattoo CH free auf ner Virtual Machine getestet, da brauchte ich auf jeden fall sowohl als auch eine schweizer IP.das ist sehr blöd. hatte gehofft, dass ich mit dem telerisingskript die vpnpflicht auf den abspielklienten umgehen kann.
-
-
-
@Publish3r Du hast und hattest recht! Ich hatte eine falsche Einstellung und noch einen SmartDNS Server hinterlegt. Ohne TvHeadend als Zwischenstelle muss auch der Client bei dem Skript im schweizer Netz sein!
-
-
schade, dass man nicht den datenstrom einfach 1:1 weitergeben kann und dadurch die geoipsperre umgehen kann. ich wünschte es gäbe dafür eine lösung, denn so wollte ich mein tvsetup mit tvheadend einrichten.
-
Transkodieren muss man nicht zwingend, eine einfache Weiterleitung des Streams via tvHeadend an Kodi reicht vollkommen.
-
-
Also an der VPN Verbindung liegt es schon einmal nicht, dass das Bild auf dem FireTV mit SimpleIPTV in FullHD mit Zugriff auf TvHeadend ruckelt...
Hab einen deutschen Zattoo Account erstellt und das ganze ohne VPN versucht. Ruckelt immer noch. Scheint irgendwo zwischen TvHeadend und FireTV zu hängen.. Im Moment ist die Konstellation so:Zattoo CH <----> NordVPN <---> VPS in AT <----> TvHeadend, pass profile <---> FireTV mit SmartIPTV
-
Mein schweizer Zattoo free lief auch über NordVPN, kein ruckeln, allerdings war da jetzt kein VPS und kein TVH zwischen. Und Kodi läuft bei mir auf nen NUC unter Windows 10.
Edit: Hatte glaube ich den NordVPN ch161 Server ausgewählt.
-
-
Also an der VPN Verbindung liegt es schon einmal nicht, dass das Bild auf dem FireTV mit SimpleIPTV in FullHD mit Zugriff auf TvHeadend ruckelt...
Hab einen deutschen Zattoo Account erstellt und das ganze ohne VPN versucht. Ruckelt immer noch. Scheint irgendwo zwischen TvHeadend und FireTV zu hängen.. Im Moment ist die Konstellation so:Zattoo CH <----> NordVPN <---> VPS in AT <----> TvHeadend, pass profile <---> FireTV mit SmartIPTV
mit welchem profil wird bei dir aus tvh heraus gestreamt? zufällig mit pass? Das ist einzusehen im Reiter Status und dann Subscriptions
-
Ja
Folgendes beim Starten des Skripts (Version 0.3.3):Code
Alles anzeigen==== API CONFIGURATION ==== INFO - Custom IP address or domain "xxxxxxxxxx" will be used. INFO - Custom Zattoo server "zh2-9" will be used. INFO - Custom port "64xxx" will be used. INFO - YOUR DEFAULT SETTINGS PLATFORM: undefined BANDWIDTH: undefined AUDIO2: undefined DOLBY: undefined LOGLEVEL: undefined IGN_MAX: undefined INFO - LOGIN OK! INFO - COUNTRY: SWITZERLAND INFO - YOUR ACCOUNT TYPE: ZATTOO ULTIMATE INFO - No Swiss IP address detected, using PVR mode for Live TV. ==== API STARTED! ==== Host IP address: xxxx:64xxx
Folgendes dann im Player (z.B. VLC):
Es scheint daran zu liegen, dass das mit Zattoo CH nicht geht?! Nur mit deutschen Premium oder Ultimate Accounts scheinbar?!
https://support.zattoo.com/hc/de/articles…-Ausland-nutzenWenn auf dem VPS kein Schweizer VPN läuft, darf auch auf dem Client kein Schweizer VPN laufen. Der Stream ist in dem Fall nur für die Nutzung außerhalb der Schweiz freigegeben.
-
-
du musst dem user die gewünschten channels frei geben, diese müssen in der kanalliste gemappt + einzigartig nummeriert sein.
Danke dir jetzt gehts.
-
Wenn auf dem VPS kein Schweizer VPN läuft, darf auch auf dem Client kein Schweizer VPN laufen. Der Stream ist in dem Fall nur für die Nutzung außerhalb der Schweiz freigegeben.
Tatsächlich. Dachte nicht dass das funktioniert, allerdings funktionieren dabei keine HLS5 Streams bei mir. Ist das normal? Wenn ich eine HLS5 Pipe ohne CH IP am Server erstelle und bei tvheadend hinzufüge findet er auch keine Services.
Greife ich nur auf HLS zu funktioniert es ohne Probleme :-/ Weder Server noch Client haben eine schweizer IP. Die API gibt beim Zugriff auf bw=8000 und HLS folgendes aus (hatte noch VLC laufen mit Zugriff auf ITV, deswegen stehen dort mehrere Clients):
Es kommt leider kein Bild - sobald ich auf bw=5000 und HLS zugreife geht es. bw=5000 und HLS5 geht nicht. Also scheint es am HLS5 zu liegen was scheinbar nicht außerhalb der Schweiz funktioniert?? Oder hab ich einen Config-Fehler?Code
Alles anzeigen* 2020-03-21 10:10:02 PVR-TV ard | 8000 | hls5 - Requesting EPG * 2020-03-21 10:10:02 Video segments list sent to client (2) - params: channel=HD_itv1, bandwidth=undefined, platform=hls5 * 2020-03-21 10:10:02 PVR-TV ard | 8000 | hls5 - Add recording * 2020-03-21 10:10:02 PVR-TV ard | 8000 | hls5 - Loading PVR URL * 2020-03-21 10:10:03 PVR-TV ard | 8000 | hls5 - Loading channel configuration * 2020-03-21 10:10:03 PVR-TV ard | 8000 | hls5 - Loading M3U8 * 2020-03-21 10:10:03 PVR-TV ard | 8000 | hls5 - Remove recording * 2020-03-21 10:10:03 PVR-TV ard | 8000 | hls5 - Recording removed * 2020-03-21 10:10:03 PVR-TV ard | 8000 | hls5 - Creating segments M3U8 * 2020-03-21 10:10:03 PVR-TV ard | 8000 | hls5 - Playlist sent to client * 2020-03-21 10:10:03 PVR-TV ard | 8000 | hls5 - Playlist resent to client * 2020-03-21 10:10:03 Audio segments list sent to client (1) - params: channel=HD_ard, bandwidth=undefined, platform=hls5 * 2020-03-21 10:10:03 Video segments list sent to client (1) - params: channel=HD_ard, bandwidth=undefined, platform=hls5 * 2020-03-21 10:10:05 Video segments list sent to client (3) - params: channel=HD_itv1, bandwidth=undefined, platform=hls5 * 2020-03-21 10:10:07 Video segments list sent to client (1) - params: channel=HD_itv1, bandwidth=undefined, platform=hls5 * 2020-03-21 10:10:08 Video segments list sent to client (4) - params: channel=HD_ard, bandwidth=undefined, platform=hls5 * 2020-03-21 10:10:10 Video segments list sent to client (2) - params: channel=HD_itv1, bandwidth=undefined, platform=hls5 * 2020-03-21 10:10:10 Video segments list sent to client (2) - params: channel=HD_ard, bandwidth=undefined, platform=hls5 * 2020-03-21 10:10:13 Video segments list sent to client (3) - params: channel=HD_itv1, bandwidth=undefined, platform=hls5 * 2020-03-21 10:10:13 Video segments list sent to client (3) - params: channel=HD_ard, bandwidth=undefined, platform=hls5 * 2020-03-21 10:10:15 Video segments list sent to client (1) - params: channel=HD_itv1, bandwidth=undefined, platform=hls5
-
-
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!