Ja , ich weis aber ein Versuch ist es Wert. Manche benutzen das ja auch um static Bilder zu laden die im Docker abgelegt sind.....
Trotzdem Danke
Ja , ich weis aber ein Versuch ist es Wert. Manche benutzen das ja auch um static Bilder zu laden die im Docker abgelegt sind.....
Trotzdem Danke
Hallo zusammen,
ich habe ein Problem mit dem Node-red Docker setup und externen java scripts für ein Dashboard. Ich würde gerne die steel gauges https://laptrinhx.com/steelseries-and-node-red-3482335268/ in meinem Dashboard einbinden/benutzen. Diese werden über das script template geladen und brauchen ein httpstatic Verzeichnis im Docker wo man die 2 files ablegt. Andere beutzen das auch um Bilder zu laden.
Ich habe im settings.js die Zeile so gesetzt : httpStatic: '/data/myjs', und die zwei .js Files ins mein data Verzeichnis kopiert.
Allerdings ladet das Dashboard den Gauge nicht. Ich bekomme nur ein leered Dashbaord mir einem weissen frame und dem Namen des FlowObjects.
Interessanterweise habe ich mir mal einen neuen file flow angelegt der mir einfach nur im current dashboard Verzeichnis ein file anlegen sollte. Dann habe ich in der Console nachgeschaut und das file wurde im /usr/src/node-red Verzeichniss erstellt. Hätte ich so mit den Settings nicht erwarted.
Habe dann die 2 steel-gauge files mal da rein kopiert, aber das dashboard bzw. der Gauge wird immer noch nicht geladen . Nun bin ich mit meinem Latein am ende.
Hat noch jemand eine Idee ?
Gruss
bkumio
NodeRed Startup log:
8 Apr 20:03:15 - [info] Node-RED version: v1.2.9
8 Apr 20:03:15 - [info] Node.js version: v10.23.2
8 Apr 20:03:15 - [info] Linux 4.14.24-qnap x64 LE
8 Apr 20:03:16 - [info] Loading palette nodes
8 Apr 20:03:19 - [info] Dashboard version 2.28.2 started at /ui
8 Apr 20:03:19 - [info] Settings file : /data/settings.js
8 Apr 20:03:19 - [info] HTTP Static : /data/myjs
8 Apr 20:03:19 - [info] Context store : 'default' [module=memory]
8 Apr 20:03:19 - [info] User directory : /data
8 Apr 20:03:19 - [warn] Projects disabled : editorTheme.projects.enabled=false
8 Apr 20:03:19 - [info] Flows file : /data/flows.json
Alles anzeigen
Das dashboard template hat folgenden Code hinterlegt :
<script src="tween-min.js"></script>
<script src="steelseries-min.js"></script>
<script>
var radial4;
(function(scope){
scope.$watch('msg', function(msg) {
if (typeof(msg.value) != "undefined") radial4.setValueAnimated(msg.value);
if (typeof(msg.threshold) != "undefined") radial4.setThreshold(msg.threshold);
if (typeof(msg.odo) != "undefined")radial4.setOdoValue(msg.odo);
if (typeof(msg.userLed) != "undefined") radial4.setUserLedOnOff(msg.userLed);
if (typeof(msg.trend) != "undefined")
{
if (msg.trend==1) radial4.setTrend(steelseries.TrendState.UP);
if (msg.trend==0) radial4.setTrend(steelseries.TrendState.STEADY);
if (msg.trend==-1) radial4.setTrend(steelseries.TrendState.DOWN);
if (msg.trend==-2) radial4.setTrend(steelseries.TrendState.OFF);
}
});
})(scope);
var sections = [steelseries.Section(0, 25, 'rgba(0, 0, 220, 0.3)'),
steelseries.Section(25, 50, 'rgba(0, 220, 0, 0.3)'),
steelseries.Section(50, 75, 'rgba(220, 220, 0, 0.3)') ],
// Define one area
areas = [steelseries.Section(75, 100, 'rgba(220, 0, 0, 0.3)')],
radial4 = new steelseries.Radial('canvasRadial4', {
gaugeType: steelseries.GaugeType.TYPE4,
size: 292,
section: sections,
area: areas,
titleString: "Heating",
unitString: "Degrees C",
threshold: 50,
thresholdRising: false,
userLedVisible: true,
useOdometer: true,
lcdVisible: true,
trendVisible: true
});
radial4.setFrameDesign(steelseries.FrameDesign.BLACK_METAL);
radial4.setValueAnimated(0);
radial4.setThreshold(50);
radial4.blinkUserLed(0);
radial4.setOdoValue(0);
</script>
<canvas id="canvasRadial4" width="401" height="401"></canvas>
Alles anzeigen