This guide assumes familiarity with the following information:
Command node (Sending a Device Command)In this guide, you'll learn how to send a command with an argument to a device. The device used in this guide is a SmartThings-enabled TV. You'll also be introduced to the Utterance Parameter node.
Take the example "Set the #{Device} volume to 75". The goal is to define the action flow for this voice intent, which will set the volume level of a TV to a user-supplied value.
For this voice intent, the user must give Bixby an integer value between 0 and 100:
Example: "Set the #{Device} volume to 75."
This value the user gives gets passed to the Utterance Parameter node. This node stores the value for a specified device parameter. Normally, the node gets the input value from the user utterance, but in Bixby Home Studio you can configure the node with a default value. For testing purposes, you can use this default value, which allows you to test the action flow on a device without an actual user utterance.
Start building your action flow by dragging the Start and Utterance Parameter nodes from the action flow nodes sidebar to the editor area. Then, configure the Utterance Parameter node:
Utterance Parameter node. This opens the Node Configuration menu on the right of the editor area.
Now, you need to send a command to the device to set the volume level of the TV to the user's uttered value.
Drag a Command node to the flow editor area. Then, click the node to open the Node Configuration menu on the right. Click APPEND NEW ITEM.

Select main in the component menu. Then, select the audioVolume command in the capability menu.

Most devices have only one operating section or compartment. In this case, the only option for component is main. If a device has many sections or compartments that you can operate independently, there will be multiple component options, such as top, bottom, and middle.
A pop-up for audioVolume opens. Select the setVolume command, which will add input ports for volume level to the Command node. Then, click SAVE.

The Command node should now have input ports for device and 1:volume. Since device is an optional argument, you can ignore it for now to keep things simple. The 1:volume input determines the volume level value for this device. The prefix 1: in front of the volume is the sequence number of each command added in the configuration screen of the Command node.
The 1:volume input port is an example of a dynamic input port. Dynamic input ports can be added to a node and their labels can change based on a node's capability. In this case, the number of dynamic input ports and their labels depend on the capability of the Command node.


Now you need to connect the Utterance Parameter node's value data port to the Command node's 1:volume data port. You also need to connect the Start node to the Command node's input trigger port.
Here's the finished action path:

To test the action flow, click the Try It button at the top right of the editor window. The flow editor should look like this:

The value of the Utterance Parameter node has been set to 75, and this is used as the mock utterance value. That value is then used to set the volume value for the voice command "Set the #{Device} volume to 75".
You will also see a warning icon
on the Command node. When you hover over it, a message states that a response was not generated. This is because there is no Response node in the action flow.
This guide creates a simple action flow, but you can create action flows of your own with the various nodes and capabilities available to the device you are using.
You can also make more complex graphs by using subgraphs.
For an additional example, see the "Set the Volume of the Device to a Value" Sample Graph.