[DISCONTINUED] Telerising API - Zattoo für tvHeadend und VLC [Perl]

  • @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.

  • 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.

  • @XenTis

    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

    @DeBaschdi

    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:

    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:


    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.

    das ist sehr blöd. hatte gehofft, dass ich mit dem telerisingskript die vpnpflicht auf den abspielklienten umgehen kann.

  • @XenTis wie gesagt, wenn api und tvheadend auf der selben maschine laufen, sollte es auch ohne schweizer ip beim clienten funktionieren, allerdings nur wenn transkodiert wird und nicht direkt durchgereicht. da ich mir aber nicht zu 100% sicher bin, sollte vielleicht @easy4me nochmal was dazu sagen.

    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.

  • 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

  • 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):


    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-nutzen

    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.

  • 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?

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!