[dss-developer] Simuliertes Gerät

Sergey 'Jin' Bostandzhyan jin at mediatomb.cc
Sun Sep 4 17:49:00 CEST 2011


Hallo Daniel,

werde versuchen deine Frage zur Simulation im dSS zu beantworten.

On Fri, Sep 02, 2011 at 01:47:23PM +0200, Daniel Weber wrote:
> Hallo ich habe noch eine Frage zum allgemeinen Verständnis:
> 
> Ich habe mir nie richtig Gedanken drüber gemacht da ich mit realen Geräten arbeite, aber wie genau definiert ihr ein simuliertes Gerät?

mittels XML und JS. Einige Infos dazu gibt es hier:
http://redmine.digitalstrom.org/projects/dss/wiki/Simulation

Allerdings müssen wir die Wiki Seite etwas aktualisieren, standard.switch
gibt es meines Wissens nach nicht.

Du kannst beliebe Geräte selbst simulieren. Schau dir bitte das File
"simulated_device.js" an, es befindet sich im dSS "data" Directory. Ich sehe,
in dem Beispiel fehlen 3 wichtige Callbacks:

  getFunctionID: function() {
    print('getFunctionID');
    return functionID;
  },

  getProductID: function() {
    print('getProductID');
    return productID;
  },

  getProductRevision: function() {
    print('getProductRevision');
    return productRev;
  },

Damit der dSS weiss, welches Gerät du simulierst (also welche Gruppe, welchen
Klemmentyp), musst du hier entsprechende Werte zurückgeben. Du kannst diese
z.B. bei deinen "echten" Klemmen im Response zu getStructure abschauen.

Nachdem du also dein simuliertes JS Gerät programmiert hast, musst du es wie
im Wiki beschrieben ins sim.xml eintragen und ein dazugehöriges File im
confid.d Verzeichniss anlegen, und den dSS neu starten.
 
> Ist es richtig, das für jedes reale Gerät (Lampe) ein simuliertes Gerät im DSS programmiert ist?

Nein, das ist nicht richtig. Es gibt zwar ein "standard.simple" Gerät, aber
ich wüsste ehrlich gesagt nicht, was man damit anfangen kann. Es würde zwar im
UI auftauchen, aber da es kein bekanntes Gerät darstellt, könnte man damit
kaum etwas sinnvolles machen. Maximum umbennenen und zwischen Räumen
herumschieben. Ich denke es stammt aus einer Zeit, wo man im UI noch kaum etwas
machen konnte, jedoch etwas zum testen gebraucht hat.

Grüsse,
Sergey




More information about the dss-developer mailing list