fb/rc "gescript" ([miniwebif] mit html-javascript)

  • habe ein kleines html-javascript-tool für browser gebastelt, welches fernbedienungsfunktionen nicht nur direkt aufrufen kann, sondern auch hintereinander abarbeitet


    z.b. brauchbar um in webradio-plugins direkt + gezielt sender umzuschalten ohne zichmal auf die remotecontroll zu tippen, dann warten zu müssen was der scrennshot sagt um dann sender zu wählen ..


    es lässt sich aber einfach jede funktion, die mit der normalen fb aufrufbar ist scripten.


    momentan eingesetzte features:
    - sofort-aufnahme mit shoutcastplugin
    - ausschalt-timer der box ausführen (30 minuten)
    - GUI-restart
    - screenshot (600px breite als png)
    - sofort-auschalten (mit 1x exit, dann off)
    - digital-radio-stationen umschalten
    - direktlink zum webif
    - 3 favoriten-listen ansteuerbar inkl. direktaufruf beliebiger stationen (modifiziertes shoutcast, aber auch webradioFS denkbar)


    im angehängten screenshot ist links das [miniwebif]-panel


    anpassungen, damit es bei euch laufen würde:


    tastenfunktionen.js -> hier 1x eure dreamip eintragen
    panel.html ab zeile 47 -> hier die reihenfolge der tastenaufrufe ändern (bei mir wird beim aufruf des shoutcast-plugins zuerst "exit", "gruen", dann "5" aufgerufen, da ich auf der taste gruen streaming+player-plugins habe und auf der nr.5 dann den shoutcast)
    - dito für panel_fav2.html + panel_fav3.html
    - ausnahme in popupblocker des browsers


    ich hab immer wieder "sicherheits-funktionen" drin, die verhindern sollen, dass die box durch unkontrolliert wiederholte tastenaufrufe blockiert + aus dem tritt gerät (sie verzögern aber leider auch die zeit bis der sender aufgerufen wird):
    - einerseits ein time-out zwischen den aufrufen von 1.25 sekunden
    - wenn der cursor-balken in einer favoritenliste ist, dann muss immer zuerst nach oben gescrollt werden, damit er von zuoberst neu abzählen kann .. das bedeutet: warten (also z.b. 6 favo-seiten nach oben = 6x 1.25 sek. + dann wieder runter zum gewählten sender)!
    - teils hab ich als ersten befehl 'exit' oder 'umschalten auf andere senderliste', um wiederum fehler abzufangen - doch da kann jeder einfach selbst tastenfolgen dazwischen schieben
    - wer aber im dropdownmenu shoutcast schon gestartet hat und dann dieses obere dropdownmenu nochmals aufruft BRINGT die box ev. aus dem tritt .. das beste ist dann: pc und box neu starten, weil dann ev. jeder aufruf spinnt


    der aufruf des rahmen+toolbarlosen [miniwebif] erfolgt über die start.html (mit fensterfunktionen.js), was dann das eigentliche [miniwebif]-popup generiert .. dazu muss man natürlich eine exception im popup-blocker des jeweiligen browsers hinterlegen .. z.b. so:
    file:///dreamip/miniwebif/


    optimiert ist das [miniwebif] auf chrom-portable und auch k-meleon (beides schnelle + schlanke browser)


    ich ruf diese direkt in windoof auf, indem ich in den eigenschaften vom link unter ziel zusätzlich den pfad des browsers eintrage:
    C:\Portapps\ChromePortable\ChromePortable.exe "V:\freigabename\miniwebif\start.html"


    optimierung und ziel:
    statt das in favoritenlisten umständlich wieder an den anfang gesprungen werden muss, wäre es viel einfacher, schneller, stabiler pro aufruf den momenaten "aufenthaltsort" des cursor-balken in jeweiliger favo-liste mitzugeben und damit nicht absolut, sondern relativ den nächsten sender anwählen zu können.


    dieses [miniwebif] lässt sich einfach mit html oder js umprogrammieren und auf die eigenen bedürfnisse masschneidern

  • auf meiner 8k läufts prima .. hab aber gestern gesehen, dass es auf anderen boxen auch schwieriger sein kann.
    auf einer 800er bringt er beim umschalten der sender skurile fehler, dass scrollen nicht unterstützt würde (dabei passiert doch das gleiche wie auf der fb?) .. kanns leider nicht richten .. hab keine 800er länger zur hand .. notfalls muss man einzelschritte UP, DOWN eingeben ..


    auch war es schwierig den popupblocker zu überlisten (aussert ganz abstellen) .. habs aber damit geschafft:


    als ausführenden link z.b.:
    C:\Portapps\ChromePortable\ChromePortable.exe "\\boxip\Harddisk\Tools\miniwebif\start.html"


    (.. oder den pfad auch direkt ins flash, dann kann die hd ruhen)


    und dann in der exception-list des popupblocker einfach die boxip eingeben

    das eigentliche thema der piraten ist der kapitalismus .. also unser grösstes problem überhaupt .. :aufsmaul:

    Einmal editiert, zuletzt von ratzelfatz ()

  • Das Script ist simpel zu konfigurieren und macht genau dass was es soll.


    Ich versuche gerade meine Hausautomation (per FHEM) zu überreden weitere Funktionen der Dream zu steuern.
    Da ich mit der 7025+ nur OE 1.6 habe, kann ich die keinen Player mit WI verwenden.


    Beim ersten Test des WI von ratzelfatz bin ich schnell auf einen "Fehler" gestoßen -> es werden ja eine abfolge von Tastendrücken der FB simuliert => da ist das Script im Menü irgendwo "falsch abgebogen".


    Beim stöbern bin ich auf eine sehr gute Doku des WI gestolpert
    http://dream.reichholf.net/wiki/Enigma2:WebInterface


    Es wäre doch eine super Erweiterung wenn das Script vorher schaut was die Dream denn gerade macht und dann ggf. andere Kommandos sendet.


    Mittels http://192.168.22.121/web/subservices kann man den Status abfragen.


    Ich habe als Rückgabewerte folgendes bekommen:
    TV-Programm läuft:
    1:0:1:445D:453:1:FFFF017A:0:0:0: ProSieben
    1:0:1:445F:453:1:FFFF017A:0:0:0: N24
    1:0:19:4E9A:2134:9C:FFFF0000:0:0:0: National Geographic HD
    1:0:1:2EE6:441:1:FFFF0182:0:0:0: RTL FS
    Rückgabewert beginnt immer mit 1:0:


    Film von HDD wird abgespielt
    1:0:0:0:0:0:0:0:0:0:/hdd/movie/20130428 1210 - n-tv - Extreme Konstruktionen_ Die Riesenschaufel.ts Extreme Konstruktionen: Die Riesenschaufel
    Rückgabewert beginnt ebenfalls mit 1:0:


    Radio wird abgespielt
    1:0:2:6F42:445:1:FFFF0071:0:0:0: KIRAKA
    1:0:2:6EF4:445:1:FFFF0071:0:0:0: B5 aktuell
    Rückgabewert beginnt auch mit 1:0:


    Ich rate mal dass wenn der Rückgabewert mit 1:0: beginnt, wird etwas vom Tuner abgespielt.


    Nun zum Webradio (bei mir SHOUTcast Plugin:
    4097:0:0:0:0:0:0:0:0:0:http%3a//82.165.40.144%3a9112/voxnoctem.mp3 voxnoctem.mp3
    4097:0:0:0:0:0:0:0:0:0:http%3a//mp3stream4.abradio.cz%3a8000/depeche128.mp3 depeche128.mp3
    4097:0:0:0:0:0:0:0:0:0:http%3a//91.121.112.107%3a8000 91.121.112.107:8000
    Wenn ein Stream vom SHOUTcast abgespielt wird, beginnt der Rückgabewert immer mit 4097:0:0:0:0:0:0:0:0:0: danach die URL des Webradios.



    Nun meine Idee:
    vorher den Status der Dream abfragen und wenn bereits Stream gespielt werden (Rückgabewert beginnt mit 4097:0:0:0:0:0:0:0:0:0:) -> kein Exit senden sondern nur up/down und abschliesendes ok.



    Da ich leider das WI nicht am PC einsetze (und meine Java Kentnisse quasi nicht vorhanden sind) kann ich dies in dem WI von ratzelfatz nicht einbinden und zur verfügung stellen.


    Wer Interesse an der Grundlegenden Logig hat darf sich gerne melden oder einfach mal auf der FHEM Seite (wiki) suchen.



    ABER RIESEN DANK AN ratzelfatz der die Grundlagen geliefert hat!!!

    There is no Patch against human stupididity !!!