NEWS
(gelöst) Alias über Skript von ganzem Folder anlegen.
-
Hallo.
Eine Frage: Wie kann ich mit einem Skript automatisiert alle Datenpunkte in einem Folder (also z.B. in mqtt.1.nuk34444) als alias in "alias.0.Haustuer.nuki" anlegen. Nur alle darunter liegenden Datenpunkte, nicht die den Folder selbst.
Geht das überhaupt?
DANKE -
Hallo.
Eine Frage: Wie kann ich mit einem Skript automatisiert alle Datenpunkte in einem Folder (also z.B. in mqtt.1.nuk34444) als alias in "alias.0.Haustuer.nuki" anlegen. Nur alle darunter liegenden Datenpunkte, nicht die den Folder selbst.
Geht das überhaupt?
DANKE@manfredhi sagte: alle Datenpunkte in einem Folder (also z.B. in mqtt.1.nuk34444) als alias in "alias.0.Haustuer.nuki" anlegen.
Wenn sich die Datenpunkte direkt unterhalb von "nuk34444" befinden, versuche es mal so:
const src = $('mqtt.1.nuk34444.*'); const dst = 'alias.0.Haustuer.nuki.'; src.each(function(id) { const obj = { type: 'state', common: getObject(id).common, native: {} }; const idDst = dst + id.split('.')[3]; setObject(idDst, obj); }); -
@manfredhi sagte: alle Datenpunkte in einem Folder (also z.B. in mqtt.1.nuk34444) als alias in "alias.0.Haustuer.nuki" anlegen.
Wenn sich die Datenpunkte direkt unterhalb von "nuk34444" befinden, versuche es mal so:
const src = $('mqtt.1.nuk34444.*'); const dst = 'alias.0.Haustuer.nuki.'; src.each(function(id) { const obj = { type: 'state', common: getObject(id).common, native: {} }; const idDst = dst + id.split('.')[3]; setObject(idDst, obj); });müsste da nicht noch der alias rein?
const obj = { type: 'state', common: { ...getObject(id).common, alias: { id }, }, native: {} }; -
müsste da nicht noch der alias rein?
const obj = { type: 'state', common: { ...getObject(id).common, alias: { id }, }, native: {} };@ticaki sagte: müsste da nicht noch der alias rein?
Ja, du hast recht.
const src = $('mqtt.1.nuk34444.*'); const dst = 'alias.0.Haustuer.nuki.'; src.each(function(id) { const obj = { type: 'state', common: getObject(id).common, native: {} }; obj.common.alias = { id: id }; const idDst = dst + id.split('.')[3]; setObject(idDst, obj); }); -
@ticaki sagte: müsste da nicht noch der alias rein?
Ja, du hast recht.
const src = $('mqtt.1.nuk34444.*'); const dst = 'alias.0.Haustuer.nuki.'; src.each(function(id) { const obj = { type: 'state', common: getObject(id).common, native: {} }; obj.common.alias = { id: id }; const idDst = dst + id.split('.')[3]; setObject(idDst, obj); });
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden