HomeyScript: Cannot send notification (create_notification silent fail + no Result tag in Flow)

iGiorgis
Sun, 22 Mar 2026 01:09:14 +0000
Flows

Hi everyone,

I’m using a Homey Pro (latest firmware) and I’m trying to build an “Away check” automation using HomeyScript.

The script itself works perfectly: it detects lights and shutters that are still open and returns a message. However, I’m stuck on how to properly send a notification or use the result in a Flow.

Here is my full script:

const devices = await Homey.devices.getDevices();

let lightsOn = [];
let shuttersOpen = [];

// Time window (18:30 → 07:00)
const startTime = 18 * 60 + 30;
const endTime = 7 * 60;

const now = new Date();
const currentTime = now.getHours() * 60 + now.getMinutes();

let isBalconyAllowedTime;
if (startTime < endTime) {
  isBalconyAllowedTime = currentTime >= startTime && currentTime < endTime;
} else {
  isBalconyAllowedTime = currentTime >= startTime || currentTime < endTime;
}

// Specific shutters
const myShutters = [
  'Πατζουρι ΣΑΛΟΝΙ',
  'Office Roller Shutter',
  'Bedroom Roller Shutter'
];

for (let device of Object.values(devices)) {

  // Lights
  if (device.class === 'light') {
    const name = device.name.toLowerCase();
    const isBalcony = name.includes('μπαλκ') || name.includes('balcony');

    if (isBalcony && isBalconyAllowedTime) continue;

    if (device.capabilitiesObj.onoff?.value === true) {
      lightsOn.push(device.name);
    }
  }

  // Shutters
  if (
    (device.class === 'windowcoverings' || device.class === 'blinds') &&
    myShutters.includes(device.name)
  ) {
    const position = device.capabilitiesObj.windowcoverings_set?.value;

    if (position !== 0) {
      shuttersOpen.push(
        device.name + ' (' + Math.round(position * 100) + '%)'
      );
    }
  }
}

// If everything is OK
if (lightsOn.length === 0 && shuttersOpen.length === 0) {
  return 'OK';
}

// Build message
let message = '⚠️ Away Check\n';

if (lightsOn.length > 0) {
  message += 'Lights: ' + lightsOn.join(', ') + '\n';
}

if (shuttersOpen.length > 0) {
  message += 'Shutters: ' + shuttersOpen.join(', ');
}

return message;

Issues I’m facing:

1. Cannot access script result in Flow

The “Result” tag does not appear in Logic cards, even after running the flow multiple times.

2. Notifications from HomeyScript do not work

I tried:

await Homey.flow.runFlowCardAction({
  uri: "homey:flowcardaction:homey:manager:notifications:create_notification",
  id: "homey:manager:notifications:create_notification",
  args: { text: "Test message" },
});

The script runs successfully (no error), but no notification is sent (silent fail).

3. Other methods also fail

push_text → not available

Homey.notifications → not available in HomeyScript

My questions:

What is the correct / supported way to send a push notification from HomeyScript on recent firmware?
Is create_notification still supposed to work?
How can I reliably use the script output inside a Flow if the “Result” tag does not show?

Any working example would really help.

Thanks in advance

8 posts - 3 participants