[Announce] osd2web Plugin

  • auf einem anderen VDR läuft es hier mit 2.4.1 auch klaglos:


    Code
    1. Aug  7 11:02:46 vdr vdr: [1131] loading plugin: /usr/lib/vdr/plugins/libvdr-osd2web.so.2.4.1
    2. Aug  7 11:02:46 vdr vdr: [1131] initializing plugin: osd2web (0.2.51-GIT): osd2web plugin
    3. Aug  7 11:02:46 vdr vdr: [1131] starting plugin: osd2web
    4. Aug  7 11:02:46 vdr vdr: osd2web: osd2web plugin thread started (pid=1131)
    5. Aug  7 11:02:46 vdr vdr: osd2web: Listener at port (4444) established
    6. Aug  7 11:02:46 vdr vdr: osd2web: using libwebsocket version '2.4.1 unknown-build-hash'
    7. Aug  7 11:02:46 vdr vdr: osd2web: Starting '/var/lib/vdr/plugins/osd2web/startBrowser.sh'
    8. Aug  7 11:02:46 vdr vdr: osd2web: Started browser on display ':1.1', PID is (1181)
    9. Aug  7 11:02:46 vdr vdr: osd2web: Starting '/var/lib/vdr/plugins/osd2web/startBrowser.sh' with 'http://localhost:4444/skins'
  • Ich habe jetzt alte libwebsocket compiliert und vdr-osd2web, leider leuscht auch nichts auf dem port 4444 und seite kann auch nicht gefunden werden. Bin ich mir nicht sicher ob es an libwebsocket oder was anderes liegt.



    was hast Du in setup.conf von VDR?

  • Code
    1. root@vdr~> grep osd2web /etc/vdr/setup.conf  
    2. osd2web.DiaCycle = 6
    3. osd2web.DiaPathCurrent = /var/lib/vdr/plugins/osd2web/http/dia//2019/November Namibia
    4. osd2web.DiaRandom = 0
    5. osd2web.LogLevel = 1
  • mit osd2web.LogLevel = 3 habe ich folgende Meldungen, wie schon erwähnt das versuche ich auf einem headless VDR (VM) server

  • ich sehe da leider keinen Grund warum der listener nicht auf dem Port lauscht. Ich schaue später nochmal in den code

  • Ich habe da wieder neue libwebsocket genommen, vdr-osd2web neue kompiliert und loglevel auf 4 gestellt, viel mehr info kommt da nicht. gibt es noch welche Möglichkeit mehr log zu bekommen? Bin leider kein developer und weiß nicht was in code zu ändern ist, um zu schauen was beim erstellen von websocket alles passiert und eventuell in log ausgeben.


    VDR full log mit nur vdr-osd2web plugin und loglevel 4

    Code
    1. https://cryptobin.co/v11167k4
    2. pass: vdr

    The post was edited 1 time, last by crow ().

  • Problem habe ich gefunden, kaum zu glauben aber IPv6.

    Ich verwende Archlinux als distro und da (mein installation routine) disable ich immer ipv6 als kernel parameter (ipv6.disable=1)

    Libwebsocket ist aber mit "-D LWS_IPV6=On" als packages unter Archlinux gebaut (offizielle repo). Hinweiß dass etwas mit IPv6 zu tun haben konnte, habe ich auf der suche nach "libwebsocket ERROR opening socket$" gefunden und zwar beim folgende Ergebnis [1].


    Nehme an vdr-osd2web schickt an libwebsocket befehl um einen websocket zu erstellen und da libwebsocket mit ipv6 compiliert worden ist wird versucht damit einen websocket zu erstellen und da das nicht geht schlug der fail. Einen echten Hinweiß dafür sieht man nicht/habe ich nicht, weil eben kaum davon geloggt ist, einzige ist vdr-osd2web Meldung "WS: ERROR opening socket$".



    Nach dem compilieren von libwebsocket mit "-D LWS_IPV6=OFF", kann vdr-osd2web einen web socket aufmachen, lauscht auf dem port 4444 und per browser ist erreichbar.


    Code
    1. [1] https://libwebsockets.org/pipermail/libwebsockets/2014-July/001139.html
  • sehr schön das du es gefunden hast, ich hatte auch keine Idee mehr.
    Immerhin die Meldung WS: ERROR opening socket ist ja schon mal ein Wink mit dem, Zaunpfahl. Aber interessant das die Lib dann dennoch ein 'context' Handle zurück gibt.


    Die Meldung in deinem Log oben hatte ich irgendwie auch geflissentlich übersehen ;)

  • das Plugin funktioniert jetzt auch mit libwebsocket 4.1

  • Ich habe einen neuen VDR aufgestellt und eben bemerkt, dass ich vergaß, den PIN-Patch anzuwenden :huh:. Scheinbar funktioniert dennoch alles bei mir :]. Wobei ich die OSD-Funktion von OSD2Web auch nicht benötige.


    Wozu ist der PIN-Patch? Kann ich den wirklich weglassen?


    Danke und Gruß

    Stefan

  • uff ist alles lange her ... den solltest du nur in Zusammenhang mit dem Pin Plugin benötigen