Homey Community Forum

Ik begrijp de voorbeelden van homeyscript nog niet zo goed

Beste,

Ik heb homey nu al een tijdje maar ik kan er maar niet aan komen hoe ik met homeyscript
1 lamp aan doe in de plaats van alle lampen in mijn huis.

Ik heb al eens gaan kijken naar de voorbeelden van homey zelf maar daar staat ook het voorbeeld van alle lampen in je huis.

Zo wil ik ook graag variabelen die gebruikt kunnen worden in een flow (met kaarten) gebruiken in homeyscript.

Kan iemand hier een antwoord op geven ?

Met vriendelijke groeten,
Jens De Smet

Welkom op het forum

Dit topic is verplaatst naar het Nederlandse deel van het forum, graag je aandacht voor het kiezen van de juiste categorie/taal.

Wanneer je problemen hebt met de Moderatie acties neem dan gerust contact met mij of een andere moderator op via een Prive bericht.

// Get all devices
const devices = await Homey.devices.getDevices();
// Loop over all devices
for (const device of Object.values(devices)) {
  // If this device is a light (class)
  // Or this is a 'What's plugged in?'-light (virtualClass)
  if (device.name == "Dim 28 wc HDD" )
  {
    //log(`\nTurning '${device.name}' on...`);
    log(`\nTurning '${device.name}' off..`);
    // Turn the light on by setting the capability `onoff` to `true`
    //await device.setCapabilityValue('onoff', true)
    await device.setCapabilityValue('onoff', false)
      .then(() => log('OK'))
      .catch(error => log(`Error:`, error));
  }
}

met het voorbeeld example-tag.js, maak je 3 globale variabelen aan (ze worden hier Tags genoemd, deze kan je gebruiken in Flows als je ze niet verwijderd zoals in dit voorbeeld, ze staan onder HomeyScript)

1 Like

Bedankt voor de uitleg maar dat is het antwoord op deel 1 nu nog deel 2 hoe doe je één lamp aan in plaats van alle lampen in je huis?

met het voorbeeld example-tag.js, maak je 3 globale variabelen aan (ze worden hier Tags genoemd, deze kan je gebruiken in Flows als je ze niet verwijderd zoals in dit voorbeeld, ze staan onder HomeyScript)

Dit is het antwoord op deel 2 van je vraag.

// Get all devices
const devices = await Homey.devices.getDevices();
// Loop over all devices
for (const device of Object.values(devices)) {
  // If this device is a light (class)
  // Or this is a 'What's plugged in?'-light (virtualClass)
  if (  device.name == "Dim 28 wc HDD")
  {
    //log(`\nTurning '${device.name}' on...`);
    log(`\nTurning '${device.name}' off..`);
    // Turn the light on by setting the capability `onoff` to `true`
    //await device.setCapabilityValue('onoff', true)
    await device.setCapabilityValue('onoff', false)
      .then(() => log('OK'))
      .catch(error => log(`Error:`, error));
  }
}

Dit is het antwoord op het deel 1 van je vraag. Niet volledig maar hier mee moet je kunnen begrijpen hoe het werkt.

Zoek even de ID op,

const device = await Homey.devices.getDevice({ id: '46541847-14c3-4332-b59e-37cc829378e3' });
await device.setCapabilityValue('onoff', true );

of programmeer een loopje en controleer de naam.

Bedankt voor de moeite dit is het antwoord dat ik wilde zien.