Use Condition Node to Control Flow
A completed conversation flow usually consists of multiple steps. Power users can connect multiple automation steps with conditions to decide the next flow to send users in an automation flow based on the previous diagnosis result.
For example, if a previous diagnosis detects an error, then go to flow1; if there is no error, go to flow2. No condition is also available to connect automations without any condition, and the system will execute multiple intents individually.
Example: Execute Different Downstream Check According to Different Errors Detected by Upstream Check Controlled by Condition Node
In this example, you can use condition nodes to control: if OSPF error is detected after a Routing Check, then go to OSPF detailed check branch; if BGP errors are detected, then go to BGP detailed check branch; if no error is detected, then go to critical application check.
Pre-requisites
-
Pre-define the network intents you need. In this example, we can prepare a Routing Check intent.
- If there's any OSPF error after executing the Routing Check intent, check the OSPF Neighbor and OSPF Route.
- If there's any BGP error after executing the Routing Check intent, check the BGP Neighbor and BGP Route.
- If there's no error after executing the Routing Check intent, check the critical application.
-
Design the conversation flow. You can draft it on a piece of paper.
Create a Bot
- Define the basic settings.
- Drag and drop the NIT node to the flowchart.
- Associate the Routing Check intent with the node.
- Drag and drop a condition node.
- Drag and drop 3 NIT nodes, and associate them with OSPF Neighbor Check, BGP Neighbor Check, and Critical Application Check intents.
- Link the condition node with the three NIT nodes in step 5.
- Define this condition node.
# Scenarios Details 1 If OSPF error is detected - Double-click Case1 and enter OSPF Error.
Tip: Changing the name will not have an impact on the end user's flow, and just for you to better manage the flow. - Click the condition node, and verify if the Boolean is set as A.
- Define: NI status code error Message> Contain Any >OSPF Route Missing
Tip: You can click + Send message and define the message to let end users know why the flow is going to the next node. 2 If BGP error is detected - Double-click Case2 and enter BGP Error.
Tip: Changing the name will not have an impact on the end user's flow, and just for you to better manage the flow. - Click the condition node, and verify if the Boolean is set as A.
- Define: NI status code error Message> Contain Any >BGP Route Missing
3 If no error - Double-click Case 3 and enter No Error.
Tip: Changing the name will not have an impact on the end user's flow, and just for you to better manage the flow. - Click the condition node, and verify if the Boolean is set as A.
- Define: NI status code >Dose not have error
- Double-click Case1 and enter OSPF Error.
- Complete the OSPF Error flow:
- Drag and drop a condition node, and define A for Boolean> Always true (no condition).
Always True means there is no condition, and the system will execute the next step directly. - Link the condition node with the OSPF Neighbor Check NIT node.
- Drag and drop an NIT node, and associate it with an OSPF Route Check intent. Link this node with the condition node.
Tip: You can also complete the flow as follows: 1) Drag and drop an NIT node, and associate it with an OSPF Route Check intent. 2) Link it with the OSPF Neighbor Check NIT node. 3) Select Always True when prompted.
- Drag and drop a condition node, and define A for Boolean> Always true (no condition).
- Complete the BGP Error flow:
- Drag and drop a condition node, and define A for Boolean> Always true (no condition).
- Link the condition node with the BGP Neighbor Check NIT node.
- Drag and drop an NIT node, and associate it with a BGP Route Check intent. Link this node with the condition node.
Tip: You can also complete the flow as follows: 1) Drag and drop an NIT node, and associate it with a BGP Route Check intent. 2) Link it with the BGP Neighbor Check NIT node. 3) Select Always True when prompted.
See also: