was ist die "beste" TM Vorgehensweise wenn ich einen Node Prozess laufen lassen möchte, der eine API zur Verfügung stellen soll?
Warum generell?
Ich möchte gerne https://github.com/jishi/node-sonos-http-api über den Loxberry laufen lassen. Mehr oder weniger als Ersatz für das bestehende Sonos Plugin.
Ebenso möchte ich mir das Thema Loxberry Plugins damit mal ein bisschen näher anschauen.
Warum nicht das bestehende Sonos Plugin?
Nach dem Update auf v3.9.0 habe ich Probleme dass die Klingel (Doorbird -> Miniserver -> Loxberry -> Sonos) nicht mehr per sendmesage getriggert wird. Da ich keine Lust habe mir den PHP Kram anzuschauen, und wie oben erwähnt mir das Thema generell anschauen möchte, kam die Idee ein eigenes Plugin zu erstellen.
Problem aktuell ist, dass nichts mehr getriggert wird, und die Antwort ist ein 200 mit <PRE> als Body. Werde dazu aber noch separat nachfragen.
Gedachte Vorgehensweise
Aktuell könnte ich mir vorstellen das Plugin so umzusetzen
- Installation von Node.js per preinstall.sh (evtl. nvm verwenden?)
- Node.js Ausführung per daemon überwachen
- Gewünschtes Frontend wie im Wiki zu finden, erstellen
- Node.js API zur Verfügung stellen
z.B. http://loxberry/plugins/new_and_shin...p/tuergong.mp3
Da würde ich dazu tendieren mod_proxy zu verwenden, bin mir aber aktuell nicht sicher ob der mit an Bord ist, oder ob das zu tiefgreifende Änderungen bedeuten würde.
Zur Not würde die API per Port anzusprechen sein, wobei ich aber aktuell nicht genau weiss ob hier irgendwelche Einschränkungen bestehen, die evtl. angepasst werden müssten.
z.B. http://loxberry:5005/kueche/clip/tuergong.mp3
Lange Rede, kurzer Sinn. Der Test Raspi ist unterwegs, und ich wäre froh für jeden Hinweis wie eine Node API am besten einzubinden ist.
Gruss und Danke,
Daniel
Kommentar