NEWS
Alias-Manager Adapter
-
@io-hardy Manchmal muss man nach dem Anlegen von Aliasen auch den ioBroker neu starten (auch den Javascript-Adapter muss man z.B. neu starten, sonst kennt der die neu angelegten Aliase noch nicht - vielleicht ist das bei History ähnlich? Ist nur eine Vermutung).
-
@s-bormann Oh das kann sein... Ist mir aber seit dem ich deinen Adapter nehme nicht mehr aufgefallen
-
@fredf
hier ist das Listing
{
"common": {
"alias": {
"id": "zigbee.0.000d6ffffe6538f8.temperature"
},
"name": "temperature",
"role": "value.temperature",
"type": "number",
"unit": "°C",
"read": true,
"write": false,
"custom": {
"history.0": {
"enabled": true,
"aliasId": "",
"changesOnly": true,
"debounce": 1000,
"changesRelogInterval": "0",
"changesMinDelta": "0",
"maxLength": 960,
"retention": "259200"
}
}
},
"native": {},
"type": "state",
"_id": "alias.0.Zigbee.Temp / Bad.temperature",
"acl": {
"object": 1636,
"state": 1636,
"owner": "system.user.admin",
"ownerGroup": "system.group.administrator"
},
"from": "system.adapter.admin.0",
"user": "system.user.admin",
"ts": 1629738877550
} -
@io-hardy sieht soweit ok aus...
Edit:
"_id": "alias.0.Zigbee.Temp / Bad.temperature",
Das könnte ein Problem sein... Leerzeichen und Slash
Beispiel von mir:"_id": "alias.0.EG_Bad.Sensoren.Bewegung"
-
@io-hardy sagte in Alias-Manager Adapter:
Kann es sein, dass dies (noch) nicht möglich ist?
In der nächsten Version werden gelöschte Aliase aus dem internen Speicher korrekt gelöscht.
ohne panik bitte...
und bitte das nächste listing und co in code-tags setzen... -
@fredf
Hallo fredf,
danke für den Tipp!"_id": "alias.0.Zigbee.Temp / Bad.temperature",
Es lag wohl an den Leerzeichen (die sich der Alias-Import selbst ausgedacht hatte!).
Ohne diese und ohne "/" läuft die Übertragung an History.
Gruß
Hardy -
@s-bormann Hallo,
ich bekomme deinen Adapter nicht installiert.
Log:
2021-09-25 19:37:10.655 - info: host.nas iobroker add alias-manager --host nas
2021-09-25 19:37:11.744 - info: host.nas iobroker NPM version: 6.14.15
2021-09-25 19:37:11.745 - info: host.nas iobroker npm install iobroker.alias-manager@1.2.3 --loglevel error --prefix "/opt/iobroker" (System call)
2021-09-25 19:37:17.259 - info: host.nas iobroker ../src/linux/BluetoothSerialPort.cc:18:14: error: variable or field ‘InitAll’ declared void
2021-09-25 19:37:17.260 - info: host.nas iobroker void InitAll(Handle exports) { ^~~ rand_r../src/linux/BluetoothSerialPort.cc:18:27: error: expected primary-expression before ‘>’ token void InitAll(Handle exports) { ^../src/linux/BluetoothSerialPort.cc:18:29: error: ‘exports’ was not declared in this scope void InitAll(Handle exports) { ^~~~~~~../src/linux/BluetoothSerialPort.cc:18:14: error: ‘Handle’ was not declared in this scope
2021-09-25 19:37:17.261 - info: host.nas iobroker ../src/linux/BluetoothSerialPort.cc:18:14: note: suggested alternative: ‘rand_r’ void InitAll(Handle exports) { ^
2021-09-25 19:37:17.263 - info: host.nas iobroker In file included from ../src/linux/BluetoothSerialPort.cc:12:../src/linux/BluetoothSerialPort.cc:23:34: error: ‘InitAll’ was not declared in this scope NODE_MODULE(BluetoothSerialPort, InitAll) ^../src/linux/BluetoothSerialPort.cc:23:1: note: in expansion of macro ‘NODE_MODULE’ NODE_MODULE(BluetoothSerialPort, InitAll) ^~~~~~~~~~~/home/iobroker/.cache/node-gyp/12.22.6/include/node/node.h:736:36: note: in definition of macro ‘NODE_MODULE_X’ (node::addon_register_func) (regfunc), \ ^
2021-09-25 19:37:17.321 - info: host.nas iobroker make: *** [BluetoothSerialPort.target.mk:117: Release/obj.target/BluetoothSerialPort/src/linux/BluetoothSerialPort.o] Fehler 1
2021-09-25 19:37:17.322 - info: host.nas iobroker gyp ERR! build error
2021-09-25 19:37:17.323 - info: host.nas iobroker gyp ERR! stack Error:make
failed with exit code: 2gyp ERR! stack at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)gyp ERR! stack at ChildProcess.emit (events.js:314:20)gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:276:12)
2021-09-25 19:37:17.324 - info: host.nas iobroker gyp ERR! System Linux 5.10.0-0.bpo.8-amd64gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "configure" "build"gyp ERR! cwd /opt/iobroker/node_modules/node-bluetoothgyp ERR! node -v v12.22.6gyp ERR! node-gyp -v v5.1.0gyp ERR! not ok
2021-09-25 19:37:18.360 - info: host.nas iobroker host.nas install adapter alias-manager
2021-09-25 19:37:18.440 - info: host.nas iobroker upload [20] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/type-detector.js type-detector.js application/javascript
2021-09-25 19:37:18.494 - info: host.nas iobroker upload [19] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/style.css style.css text/css
2021-09-25 19:37:18.546 - info: host.nas iobroker upload [18] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/index_m.js index_m.js application/javascript
2021-09-25 19:37:18.599 - info: host.nas iobroker upload [17] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/index_m.html index_m.html text/html
2021-09-25 19:37:18.654 - info: host.nas iobroker upload [16] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/img/info-big.png img/info-big.png image/png
2021-09-25 19:37:18.710 - info: host.nas iobroker upload [15] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/fancytree/react/ui.fancytree.min.css fancytree/react/ui.fancytree.min.css text/css
2021-09-25 19:37:18.766 - info: host.nas iobroker upload [14] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/fancytree/react/ui.fancytree.min-win7.css fancytree/react/ui.fancytree.min-win7.css text/css
2021-09-25 19:37:18.823 - info: host.nas iobroker upload [13] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/fancytree/react/ui.fancytree.jquery.min.css fancytree/react/ui.fancytree.jquery.min.css text/css
2021-09-25 19:37:18.878 - info: host.nas iobroker upload [12] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/fancytree/react/state.png fancytree/react/state.png image/png
2021-09-25 19:37:18.934 - info: host.nas iobroker upload [11] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/fancytree/react/state.pdn fancytree/react/state.pdn null
2021-09-25 19:37:18.990 - info: host.nas iobroker upload [10] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/fancytree/react/loading.gif fancytree/react/loading.gif image/gif
2021-09-25 19:37:19.046 - info: host.nas iobroker upload [9] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/fancytree/react/icons_original.gif fancytree/react/icons_original.gif image/gif
2021-09-25 19:37:19.103 - info: host.nas iobroker upload [8] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/fancytree/react/icons.gif fancytree/react/icons.gif image/gif
2021-09-25 19:37:19.162 - info: host.nas iobroker upload [7] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/fancytree/react/device.png fancytree/react/device.png image/png
2021-09-25 19:37:19.218 - info: host.nas iobroker upload [6] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/fancytree/react/device.pdn fancytree/react/device.pdn null
2021-09-25 19:37:19.275 - info: host.nas iobroker upload [5] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/fancytree/react/channel.png fancytree/react/channel.png image/png
2021-09-25 19:37:19.330 - info: host.nas iobroker upload [4] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/fancytree/react/channel.pdn fancytree/react/channel.pdn null
2021-09-25 19:37:19.386 - info: host.nas iobroker upload [3] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/alias-manager_big.png alias-manager_big.png image/png
2021-09-25 19:37:19.444 - info: host.nas iobroker upload [2] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/alias-manager.png alias-manager.png image/png
2021-09-25 19:37:19.501 - info: host.nas iobroker upload [1] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/admin.d.ts admin.d.ts video/mp2t
2021-09-25 19:37:19.557 - info: host.nas iobroker upload [0] alias-manager.admin /opt/iobroker/node_modules/iobroker.alias-manager/admin/adapter-settings.js adapter-settings.js application/javascript
2021-09-25 19:37:19.614 - info: host.nas iobroker INFO: Directory "/opt/iobroker/node_modules/iobroker.alias-manager/www" was not found! Nothing was uploaded or deleted.
2021-09-25 19:37:19.691 - info: host.nas iobroker host.nas object system.adapter.alias-manager created/updated
2021-09-25 19:37:19.733 - info: host.nas iobroker INFO: Directory "/opt/iobroker/node_modules/iobroker.alias-manager/www" was not found! Nothing was uploaded or deleted.
2021-09-25 19:37:19.741 - info: host.nas iobroker host.nas create instance alias-manager
2021-09-25 19:37:19.752 - info: host.nas iobroker host.nas object system.adapter.alias-manager.0 created
2021-09-25 19:37:20.766 - info: host.nas iobroker exit 0beim nochmaligen installieren bekomme ich dann diese meldung
iobroker läuft auf meinem nas unter omv (debian system), kein docker, multihost. die objetke alias und alias-manager hat er angelegt, aber das wars dann schon.
Uwe -
@nr5lebt Hi,
ich bin jetzt leider auch kein npm Experte, aber ich vermute mal, dass der GYP-Fehler auch bei der Installation von anderen Adaptern auftritt und nichts mit dem alias-manager zu tun hat (kann mich aber auch irren, wie gesagt, bin da kein Experte). Der Fehler scheint ja irgendein BluetoothSerialPort-modul zu betreffen, das nicht vom alias-manager selbst kommt.Ich hatte das auch mal, da war irgendeines der node-module nicht mit meiner node-version kompatibel - funktioniert hat aber alles und die Experten haben mir geraten, den Fehler zu ignorieren.
Die Installation wird ja am Ende auch ohne Fehler ("exit 0") abgeschlossen.
Der Screenshot mit exit-code 19 kommt, wenn man eine zweite Instanz erstellen möchte, hat also mit der Installation nichts zu tun (der Alias-Manager darf nur eine Instanz erstellen).
VG!
-
npm versucht immer, den gesamten node_modules Baum in den korrekten Zustand zu bringen. Das schließt auch andere Module ein, die vorher nicht richtig installiert wurden.
-
@s-bormann hallo
hab den adapter gerade eben gelöscht und einfach neu installiert, jetzt ist alles da. merkwürdig. aber damit hat sich das problem gelöst, danke noch an alle -
Hallo
Super Sache die Verwaltung der Objekte mit dem Alias-Adapter (wenn man es einmal gewöhnt ist).
Hab jetzt alle Homematic-Komponenten sowie alle Arduinos (MQTT) und Shellys per Alias ein gebunden. Dadurch lässt sich mit Node-Red stabiler arbeiten.Meine Frage:
Gibt es im ioBroker-System eine Möglichkeit den letzten Zeitpunkt wann eine Komponente den letzten Update geschickt hat zu ermitteln ???
Wenn JA … WO bzw. WIE ???Wenn NEIN eine BITTE:
Könnte man vom Alias-Adapter einen befüllten Timestamp bekommen wann das letzte Mal ein Objekt/Komponente aktualisiert wurde ???
So eine LastUpdate- oder Alive-Timestamp pro Objekt/Komponente.Damit könnte man eine nicht reagierende Komponente per Node-Red ermitteln und sich z.B. Per Telegram informieren lassen.
MonDieuX
-
@mondieux Man kann das ohne Zeitstempel machen - Ich mach das mit einer Trigger-Node und überprüfe, ob sich jemand in einer vordefinierten Zeit gemeldet hat. Das ist viel besser als mit Zeitstempeln zu rechnen.
https://forum.iobroker.net/topic/44051/statusüberwachung/45?_=1635109815011
Du kannst sogar Wildcard nutzen als Input und bei der Behandlung jede Nachricht verwenden, dann macht die Node das auf per topic Basis. Einfacher gehts eigentlich nimmer.
-
@s-bormann ich wollte grade einen Alias für meine Alexa Dot über die automatische Funktion anlegen. Jetzt haben die Dots sehr viele States, die auch teilweise in Unterordnen liegen.
Die Unterordner werden dann aber nicht mit angelegt. Dadurch wird es zum einen sehr unübersichtlich, teilweise heißen einige States auch gleich, was in den Unterordnern nichts macht, wenn sie auf einer Ebene angelegt werden aber blöd ist weil man zB new_2 hat.
Kann man den Adapter erweitern, das er auch automatisch Unterordner anlegt?
-
@s-bormann Ich benutze seit ewiger Zeit begeistert LinkedDevice. Seit der Einführung der React UI ab Admin 5.03 kann man leider keine neuen States anlegen und muss immer wieder auf die alte UI wechseln. Da scheinbar im Moment keine Möglichkeit besteht dies zu ändern und ich das ständige hin- und her schalten satt habe beschäftige ich mich seit einiger Zeit mit Alias.
Mir dem Device-Adapter und diversen Scripten bin ich nicht klar gekommen.
Mit deinem Adapter scheint alles zu klappen. Bevor ich von Linkeddevice komplett auf Alias umswitche (jede Menge Blocklys usw) wollte ich noch einige Fragen loswerden:- Nach dem Anlegen ist ein Ordner vom Typ "Folder" (Büro), einige "channel" und bei den meisten nichts. Was hat dies für eine Auswirkung und wo kommt dies her bzw wenn etwas falsch ist, wo ist sind die falschen umzustellen?
- Wenn ich unter "Geräte schaue ist eben Das Büro nicht unter alias.0 aufgeführt
3.Wenn ich bei Geräte auf den Schraubenschlüssel gehe steht bei diesem Büro "Ordner "alias.0.Buero" bearbeiten"
Bei allen anderen unter"0" steht hier "Ordner "undefined" bearbeiten"
Kann das jemand erklären?
Ich will nur nicht tagelang in die Falsche Richtung "basteln"
Danke schonmal im voraus....
- Nach dem Anlegen ist ein Ordner vom Typ "Folder" (Büro), einige "channel" und bei den meisten nichts. Was hat dies für eine Auswirkung und wo kommt dies her bzw wenn etwas falsch ist, wo ist sind die falschen umzustellen?
-
@martinschm sagte in Alias-Manager Adapter:
@s-bormann ich wollte grade einen Alias für meine Alexa Dot über die automatische Funktion anlegen. Jetzt haben die Dots sehr viele States, die auch teilweise in Unterordnen liegen.
Die Unterordner werden dann aber nicht mit angelegt. Dadurch wird es zum einen sehr unübersichtlich, teilweise heißen einige States auch gleich, was in den Unterordnern nichts macht, wenn sie auf einer Ebene angelegt werden aber blöd ist weil man zB new_2 hat.
Kann man den Adapter erweitern, das er auch automatisch Unterordner anlegt?
Hi,
das wird schnell seeehr komplex und ich fürchte, da habe ich im Moment nicht die notwendige Zeit, deshalb glaube ich wird das in naher Zukunft erst mal leider nicht möglich sein, sorry. Aber ggf. kann ja jemand aus der Community hier was beitragen? -
@docgame sagte in Alias-Manager Adapter:
@s-bormann Ich benutze seit ewiger Zeit begeistert LinkedDevice. Seit der Einführung der React UI ab Admin 5.03 kann man leider keine neuen States anlegen und muss immer wieder auf die alte UI wechseln. Da scheinbar im Moment keine Möglichkeit besteht dies zu ändern und ich das ständige hin- und her schalten satt habe beschäftige ich mich seit einiger Zeit mit Alias.
Mir dem Device-Adapter und diversen Scripten bin ich nicht klar gekommen.
Mit deinem Adapter scheint alles zu klappen. Bevor ich von Linkeddevice komplett auf Alias umswitche (jede Menge Blocklys usw) wollte ich noch einige Fragen loswerden:- Nach dem Anlegen ist ein Ordner vom Typ "Folder" (Büro), einige "channel" und bei den meisten nichts. Was hat dies für eine Auswirkung und wo kommt dies her bzw wenn etwas falsch ist, wo ist sind die falschen umzustellen?
- Wenn ich unter "Geräte schaue ist eben Das Büro nicht unter alias.0 aufgeführt
3.Wenn ich bei Geräte auf den Schraubenschlüssel gehe steht bei diesem Büro "Ordner "alias.0.Buero" bearbeiten"
Bei allen anderen unter"0" steht hier "Ordner "undefined" bearbeiten"
Kann das jemand erklären?
Ich will nur nicht tagelang in die Falsche Richtung "basteln"
Danke schonmal im voraus....
Hi,
da ich leider mit dem Devices-Adapter selbst gar nicht klar kam, kann ich hier leider nicht viel beisteuern. Aber vom Prinzip ist natürlich jedem selbst überlassen, welche Ordnerstruktur man zur Organisation seiner Aliase anlegt, auf die Funktion hat das keinen Einfluss. Ich selbst nutze keine sehr ausgeklügelte Ordnerstruktur - das ist zwar einerseits übersichtlicher, wird aber bei Umstellungen auch schnell hinderlich. Ich habe alle Alias-Devices direkt im alias.0-Ordner ohne weitere Unterordner angelegt und benenne die zum Beispiel nach dem Schema: "alias.0.Licht Wohnzimmer Deckenleuchte" - da steckt ja dann schon alle Info drin.
LG - Nach dem Anlegen ist ein Ordner vom Typ "Folder" (Büro), einige "channel" und bei den meisten nichts. Was hat dies für eine Auswirkung und wo kommt dies her bzw wenn etwas falsch ist, wo ist sind die falschen umzustellen?
-
@s-bormann Danke für die schnelle Antwort.
Hatte nur Angst, das nach einer zukünftigen Aktualisierung irgendwas nicht mehr geht.
Ist halt merkwürdig, da ich (vermutlich) alle gleich angelegt habe und das ganze so unterschiedlich ist.
Die Verzeichnisse im Aliasordner die keinen Typ oder Typ channel haben sind ja nicht durch einen "Schraubenschlüssel zu erreichen. Somit werde ich diese ja vermutlich auch nicht auf folder ändern können.Ich mach jetzt eben einfach mal so weiter.
-
@docgame sagte in Alias-Manager Adapter:
@s-bormann Danke für die schnelle Antwort.
Hatte nur Angst, das nach einer zukünftigen Aktualisierung irgendwas nicht mehr geht.
Ist halt merkwürdig, da ich (vermutlich) alle gleich angelegt habe und das ganze so unterschiedlich ist.
Die Verzeichnisse im Aliasordner die keinen Typ oder Typ channel haben sind ja nicht durch einen "Schraubenschlüssel zu erreichen. Somit werde ich diese ja vermutlich auch nicht auf folder ändern können.Ich mach jetzt eben einfach mal so weiter.
Vermutlich sind die ohne Schraubenschlüssel nicht als eigenes Objekt angelegt. Das geht, denn wenn es z.B. alias.0.Büro.Lampe gibt, weiß der Admin-Adapter, dass er den Ordner Büro anzeigen muss, obwohl es ihn "physisch" gar nicht gibt. Hat meines Wissens nach auf die Funktion keinen Einfluss.
-
@s-bormann Ich habe nun einige Zeit mit deinem Adapter herumgespielt und komme so langsam klar damit.
Eine verbesserung würde mir am Herzen liegen:
Scrounger hat mal auf meine Anregung eine Funktion zum optimierten Benennen der Namen der States eingebaut. Dies spart einem unendlich Editierarbreit. Das Problem ist, dass beim zusammenbasteln eines Blocklys der name angezeigt wird. Bei umfangreichen Projekten sieht man gar nicht mehr was wo ist.
Ich habe mal ein kleines Blockly zum veranschaulichen zusammengeschustert. Bei dem einen Habe ich Alias (mit deinem Manager erzeugt) verwendet, beim anderen States die ich mit Linked Device erzeugt habe:
Blockly Alias:
Blockly Linked Device:
Man könnte zwar auch die Namen der einzelnen States deiner erzeugte Alias umbenennen. Ich habe aber Geräte die mehrere Dutzend States haben und dies unendlich dauert. Hie wäre ein Butten ideal, der das Umbenennen aller States eines Gerätes ermöglichen würde. Bei mehreren Hundert Geräten mit zig jeweiligen States eine unendliche Hilfe.
Hier mal 2 Bilder wie es in Linked Device ist und wie ich mir es in deinem Adapter vorstellen könnte.
Ich denke das Interesse der Community wäre groß.
-
Hi,
habe ein "Problem-Datenpunkt" den ich über Alias entschärfen wollte, was aber nicht so klappt.Und zwar hat der eine Tilde drin:
fhem.0.myHPSU.HPSU~Soll_T_Raum_1
Wenn ich über den Adapter automatisch ein Alias erstelle bekomme ich wieder diese Tilde:
Hier die Einstellungen im Adapter: