From 5b249a4139965f2d04a04cb4ed117309ebe648a1 Mon Sep 17 00:00:00 2001 From: Jason <37859597+zachowj@users.noreply.github.com> Date: Fri, 16 Aug 2024 02:52:13 -0700 Subject: [PATCH] docs: Update first automation to use action node --- docs/guide/first-automation.md | 57 +++++++++------------- docs/guide/images/first-automation_02.png | Bin 11537 -> 9280 bytes docs/guide/images/first-automation_04.png | Bin 3744 -> 5196 bytes docs/guide/mustache-templates.md | 25 +++++----- 4 files changed, 34 insertions(+), 48 deletions(-) diff --git a/docs/guide/first-automation.md b/docs/guide/first-automation.md index 9070ae79cb..8b43977b12 100644 --- a/docs/guide/first-automation.md +++ b/docs/guide/first-automation.md @@ -1,67 +1,56 @@ # First Automation -For your first automation, we'll start simple and set up an automation to turn on and off a -light when the sun comes up and goes down. +For your first automation, let's keep it simple by setting up a light to turn on when the sun sets and off when it rises. -This example will use the state, `below_horizon`/`above_horizon`, of the `sun.sun` entity from -Home Assistant to trigger the light. +This example uses the `sun.sun` entity in Home Assistant, which has states `below_horizon` and `above_horizon`, to trigger the light. -## Events: state +## Events: State Node -Place an Events: state node onto the workspace and double click on it to edit. +1. Drag an **Events: state** node onto the workspace and double-click it to edit. ![screenshot](./images/first-automation_01.png) -## Entity ID +## Entity ID Configuration -We'll add `sun.sun` to the **Entity ID** field and leave the entity id filter type -to `Exact` as we only want to match one entity. +2. In the **Entity ID** field, enter `sun.sun`. This is the entity that will trigger the automation. -## If State +## If State Condition -**If State** is a conditional that will be checked against the state of the entity -when it triggers the node. If the condition is found to be `true` the message -will be sent out the top output and if found to be `false` it will be sent out -the bottom output. If no conditional value is set there will only be one output -and all messages will flow through it. +3. The **If State** condition checks the entity's state when the node is triggered. If the condition is `true`, the message will be sent through the top output; if `false`, it will be sent through the bottom output. If no condition is set, all messages will pass through a single output. -For this example we will set the **If State** to `above_horizon`. + For this example, set the **If State** to `above_horizon`. ![screenshot](./images/first-automation_02.png) -## Call Service +## Action Node -Now that the trigger is set up it's time to set up the action. Most communication -done with Home Assistant will come in the forms of services calls using the Call -Service Node. +4. Now, let's set up the actions that will be triggered. Most Home Assistant interactions are done through action calls, which we'll handle with the **Action** node. -Drag two Call Service nodes onto the workspace and connect them to each of the -outputs from the Events: state node. +5. Drag two **Action** nodes onto the workspace and connect them to the outputs of the **Events: state** node. ![screenshot](./images/first-automation_03.png) -Since we made the conditional in the Events: state node _if state is equal to -above_horizon_ the top output will be the action to turn off the light and the bottom output will be the action to turn on the light. +- Since we set the **If State** to `above_horizon`, the top output will turn off the light, and the bottom output will turn it on. -The three fields that are relevant for this example are: Domain, Service, and -Entity Id. **Domain** is going to be `light`, **Service** is going to be -`turn_off`, and **Entity Id** is going to be `light.front_porch`. The Second -Call Service node will be the same except the **Service** is going to be `turn_on`. +6. Configure the **Action** nodes: + - **Action**: `light.turn_off` (for the top output) and `light.turn_on` (for the bottom output) + - **Entity**: `light.front_porch` ![screenshot](./images/first-automation_04.png) ## Complete Automation -At this point, you can deploy and should have your first working automation in -Node-RED. +7. Once you've configured everything, deploy your flow. You now have your first working automation in Node-RED! ![screenshot](./images/first-automation_05.png) @[code](@examples/guides/first-automation/complete-automation.json) -**Also see:** +--- + +**Related Resources:** - [Importing and Exporting Flows](https://nodered.org/docs/user-guide/editor/workspace/import-export) -- [Call Service Node](/node/call-service.md) -- [Events: state Node](/node/events-state.md) -- [Conditionals](./conditionals.md) +- [Call Service Node Documentation](/node/call-service.md) +- [Events: State Node Documentation](/node/events-state.md) +- [Conditionals in Node-RED](./conditionals.md) diff --git a/docs/guide/images/first-automation_02.png b/docs/guide/images/first-automation_02.png index 88189148d6665eb00e97bf444ec49b89375854c4..8e5f1542ce6e67ea190d758371e6c952e09db293 100644 GIT binary patch literal 9280 zcmd6Nc~Dc?wtk>R1zJ#%K@m~AMQLPe1zJXjMr{UBW(b2JDnk-LLjZw*14AnU+M=R> zG$>O-284vk1R8{>C;=gZ34=&OAP@pV0!c`C2m9W4@4NM0)vbE<>i7F21?QZ-_gZJ~ zwZ8A$YoA+Z&z#z%wnGgB0&V)`^v|9kkP;X8X>ME(+)-mhZvy@(Aw5qW2jP2mP5~F| z!jHKh1A%Ju)K?%Xz_n`Z=>Q}Mq|veVQ=-LGT>yc;WBl^-G4I3>!H}G=%UQlUFB}

$Uk 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 diff --git a/docs/guide/images/first-automation_04.png b/docs/guide/images/first-automation_04.png index 9c96187328f1e01d1b176df2d474ead84fb74d3f..fc13966c0940ea230779884066faa8b7a42e11a3 100644 GIT binary patch literal 5196 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 diff --git a/docs/guide/mustache-templates.md b/docs/guide/mustache-templates.md index e614f57852..65862f803a 100644 --- a/docs/guide/mustache-templates.md +++ b/docs/guide/mustache-templates.md @@ -1,22 +1,19 @@ # Mustache Templates -When using templates the top level is a property of the message object: -`msg.payload` would be {{payload}}. +When using templates, the top level refers to a property of the message object. For example, `msg.payload` would be accessed as {{payload}}. -You can access flow, global, and states contexts {{flow.foobar}} {{global.something}}. For the -`states` context you can use {{entity.domain.entity_id}} to -get the state or drill further down {{entity.light.kitchen.attributes.friendly_name}}. +You can also access `flow`, `global`, and `states` contexts with the following syntax: -- {{entity.light.kitchen}} and {{entity.light.kitchen.state}} are equivalent +- `flow` context: {{flow.foobar}} +- `global` context: {{global.something}} +- `states` context: Use {{entity.domain.entity_id}} to get the state, or drill further down with {{entity.light.kitchen.attributes.friendly_name}}. -By default, Mustache will replace certain characters with their HTML escape -codes. To stop this happening, you can use triple braces: -{{{payload}}}. +Note: + +- {{entity.light.kitchen}} and {{entity.light.kitchen.state}} are equivalent. + +By default, Mustache will replace certain characters with their HTML escape codes. To prevent this, use triple braces: {{{payload}}}. ::: warning -Mustache templates work well with strings but if you're trying to insert a JSON -object somewhere you're better off using a JSONata expression or doing with a -function node and passing it in as an input. +Mustache templates are ideal for handling strings. However, if you need to insert a JSON object, consider using a JSONata expression or handling it with a function node and passing it as an input. :::