SmartDNS Updater

  • Ich habe aus gegeben Anlass mal ein kleines Service Addon gebaut.
    Alle die einen smartdns Service verwenden haben das leidliche Problem mit der update URL.

    In den Settings vom Addon die Browser-Update Url eintragen fertig

    bei kodi start wird dann die URL automatisch aufgerufen und die Ausgabe der Webseite erscheint als popup Window.

    Diese sollte jetzt Plattform übergreifend funktionieren und unabhängig von meine zattooHIQ Addon laufen.

    Viel Spaß damit.

    service.smartdns

  • Vielversprechend, aber in der jetztigen Form scheint es nur einmalig beim Systemstart die Update-URL aufzurufen. Für Dauerläufersysteme bleibt der SmartDNS damit nur bis zur Zwangstrennung durch den ISP aktuell.

    Könntest du das als einfaches Cronjob-Erstellungstool implementieren?

  • 15 Minuten? Bitte nicht :)

    Ich für meinen Teil unterbreche meine Internetverbindung nämlich durchaus auch häufiger selbst, und wenn dann die Familie mehrere Minuten warten muss, bis sie wieder "Zattoo" schauen kann, ist das Theater sehr groß!

    Könnte man das Intervall nicht variabel gestalten, also dem User die Wahl zur Eingabe eines Wertes in Sekunden geben?

  • muss nur die API Url von Smartproxy rein?

    und in meinem Router die anderen Daten?

    habe es getestet, leider läuft es mal 1 Std oder so und dann wird Zattoo geblockt?

    falsche Einstellungen?

    dns4me teste ich auch,

    Daten im Router und das läuft bis jetzt ohne Probleme!

    Gruß

  • Hilfe! :(

    Ich habe mein CEMC neu aufgesetzt, hatte bis dato version 1.0.1 des updaters installiert, was immer tadellos lief.
    Nun nach der neuinstallation geht nur noch 1.0.2 aus dem repo oder direkt die zip von github - bei beiden kommt nur installation failed.
    Hat jemand für mich vielleicht die 1.0.1 zur hand, oder weiss gar weshalb sich 1.0.2 nicht mehr installieren lässt?

    Vielen dank :)

    Edit: Hat sich erledigt, konnte es selbst beheben. Es fehlt eine description in der addon.xml, habe einfach eine hinzugefügt und es lies sich wieder installieren.

  • @'rolapp:

    Der Link im ersten Beitrag bringt einen 404-Fehler hervor, richtig müsste er wohl lauten: https://github.com/rolapp/kodi-ad…rtdns-1.0.2.zip
    - allerdings klappt die Installation aus der verlinkten Zip-Datei nicht, da diese wohl im Gegensatz zu den anderen unter https://github.com/rolapp/kodi-ad…ervice.smartdns verlinkten
    Archiv-Dateien eben noch den Stand von Version 1.0.2 hat!

    Ich war dann mal so frei und habe die Version 1.0.3 selbst als Zip-Datei erstellt und als Anlage beigefügt - allerdings habe ich folgende Änderung in Zeile 39 vorgenommen, da sich mir der Sinn der Anzeige des Seitenquell-Texts der Aktualisierungs-URL nicht erschlossen hat (mir genügt es eigentlich, die aktuelle IP nach deren Änderung eingeblendet zu bekommen):

    alt: xbmcgui.Dialog().notification('SmartDNS', str(html) + " " + str(newip), __addon__.getAddonInfo('path') + '/icon.jpg', 3000, False)
    neu: xbmcgui.Dialog().notification('SmartDNS', str(newip), __addon__.getAddonInfo('path') + '/icon.jpg', 3000, False)

  • Okay, dann mag das mit dem Umfang der Ausgabe der Website von SmartDNS-Anbieter zu SmartDNS-Anbieter unterschiedlich sein, ich bin Kunde von "Getflix", und wenn ich da die Aktualsierungs-URL aufrufe, erscheint im Browser nicht nur eine simple Bestätigung, sondern darüber hinaus wird u. a. auch noch angezeigt, welche der zahlreichen Server an welchen Standorten zurzeit verfügbar sind. str(html) fördert den Seitenquelltext davon zu Tage, der so umfangreich ist, dass er gar nicht auf eine KODI-Bildschirmseite passen würde :)


    Deshalb habe ich die Anweisung bei mir herausgenommen.

    Aber mal etwas anderes: Dein AddOn bricht manchmal ab mit dem Hinweis auf einen TimeOut wegen SSL oder so ähnlich; bei "Getflix" ist es grundsätzlich so, dass die Aktualsierungs-URL mit "https://" beginnt, es funktoniert aber glücklicherweise auch die lediglich mit "http://" beginnende Variante, so dass ich auf diesem Wege den Fehler vermeiden kann. Hast Du eine Idee, wie man das AddOn anpassen muss, damit es auch mit SSL zurechtkommt?

  • rolapp:

    Ich habe jetzt mit der "http://%22-variante der Aktualisierungs-URL (siehe mein letztes Posting) einen Skript-Abbruch gehabt wegen Timeout. KODI-log zeigt folgendes:

    02:08:43.420 T:1725952928 ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
    - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
    Error Type: <class 'socket.timeout'>
    Error Contents: timed out
    Traceback (most recent call last):
    File "/storage/.kodi/addons/service.smartdns/service.py", line 50, in <module>
    timer(OLDIP)
    File "/storage/.kodi/addons/service.smartdns/service.py", line 46, in timer
    OLDIP = testip(OLDIP)
    File "/storage/.kodi/addons/service.smartdns/service.py", line 36, in testip
    handle = urllib2.urlopen(URL)
    File "/usr/lib/python2.7/urllib2.py", line 154, in urlopen
    File "/usr/lib/python2.7/urllib2.py", line 429, in open
    File "/usr/lib/python2.7/urllib2.py", line 447, in _open
    File "/usr/lib/python2.7/urllib2.py", line 407, in _call_chain
    File "/usr/lib/python2.7/urllib2.py", line 1228, in http_open
    File "/usr/lib/python2.7/urllib2.py", line 1201, in do_open
    File "/usr/lib/python2.7/httplib.py", line 1121, in getresponse
    File "/usr/lib/python2.7/httplib.py", line 438, in begin
    File "/usr/lib/python2.7/httplib.py", line 394, in _read_status
    File "/usr/lib/python2.7/socket.py", line 480, in readline
    timeout: timed out
    -->End of Python script error report<--

    Auf die Schnelle habe ich im Zusammenhang mit "class 'socket.timeout' " folgendes gefunden: https://github.com/asciidisco/plu…flix/issues/254
    Dort hat sich der User beholfen, indem er einen TimeOut-Wert von 30 angefügt hat, dementsprechend müsste das in Deinem AddOn vermutlich so aussehen:

    Zeile 28:
    alt: handle = urllib2.urlopen(TESTIP)
    neu: handle = urllib2.urlopen(TESTIP, timeout=30)

    Zeile 36:
    alt: ´handle = urllib2.urlopen(URL)
    neu: handle = urllib2.urlopen(URL, timeout=30)


    1. Ich habe es jetzt mal bei mir so geändert und werde beobachten, ob das was bringt - wobei mir 30 sehr hoch erscheint...?

    2. Vielleicht müsste man da besser auch noch folgendes in Betracht ziehen: https://stackoverflow.com/questions/2712…-timeout-python
    Keine Ahnung, wie man den Abfang der dort genannten Exception - falls erforderlich - mit in Dein AddOn einbauen müsste.


    Wie ist Deine Meinung zu den beiden genannten Punkten?

Jetzt mitmachen!

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