Read the statement by Michael Teeuw here.
multiple module instances overwrites itself values
-
Hello,
i am working on a module for FHEM. The module can show data like temperature from FHEM devices. It is working, but if i add two instances of the module to theconfig.js
it overwrites the dom values.{ module: 'MMM-FHEM', position: 'bottom_bar', config: { host: '192.168.178.28', port: '8083', deviceNames: [ 'LaCr.Thermo01', 'LaCr.Thermo02', 'LaCr.Thermo03', ], deviceReadings: [ { name: 'temperature', icon: 'wi wi-thermometer', suffix: '°' }, { name: 'humidity', icon: 'wi wi-humidity', suffix: '%' }, ], }, }, { module: 'MMM-FHEM', position: 'top_right', header: 'top_right', config: { host: '192.168.178.28', port: '8083', deviceNames: [ 'LaCr.Thermo03', 'LaCr.Thermo04', 'LaCr.Thermo05', ], deviceReadings: [ { name: 'temperature', icon: 'wi wi-thermometer', suffix: '°' }, { name: 'humidity', icon: 'wi wi-humidity', suffix: '%' }, ], }, },
Right values should different from the bottom one.
Any idea why? You can find the code here https://github.com/BenRoe/MMM-FHEM
-
Ok other question.
If i setup a module twice in the config, do they share the variables from the code? -
Any news here?
-
@DazDavid nope
-
Would it work if u give them names like MMM-FHEM1 and MMM-FHEM2?
Cause if u add two instances with the same name in the config i can imagine, that he will read the first value and overwrites them in the second instance. Like
var variable = 1;
var variable = 2;Output would be 2.
-
This post is deleted! -
@bobbob601 thx for the answer. Do you have a example how to write a module with multi-instace support?
-
Having the same problem with my module… A theoretical solution could be to make node_helper multi instance aware by appending some identifier to the notification unique to the instance: ie GET_WEATHER_001… The helper triggers on GET_WEATHER and builds an array with the different notifications and payloads. It then periodically runs through the array getting the appropriate requests and sending out notifications like WEATHER_001 with the specific payload.
Haven’t built it yet though…
-
This post is deleted! -
@bobbob601 I got it working by passing a unique ID to the node helper and passing it back from the node helper.
https://github.com/trgraglia/MMM-MVG-LocalTransport
Hope this helps.