Pipes robots are the Swiss-army knives of Dexi: they can do pretty much anything. However, with great flexibility comes the potential for great confusion 😀

For an introduction to Pipes robots, head on over to Pipes.

This article covers a couple of advanced settings of Pipes robots.

Executing other robots ("Default" configurations)

To execute another robot in a Pipes robot use the "Execute robot" action:

When the Pipes robot is then executed (or more precisely, when a configuration of the Pipes robot is executed), a Default configuration of the other robot is automatically created by the platform.

The "Default" configuration is identical to any other standard robot configuration. However, to avoid confusing and unpredictable behaviour, the fields of "Default" configurations cannot be changed - except for the Proxies field.

This is to allow the user to control which proxies are being used for the executions of the "Default" configuration (the proxy specified on the Pipes configuration is not propagated to the "Default" configuration). See What should I know about proxy servers and anonymity? for more information about proxies.

Two other important settings, maximum number of retries and maximum concurrency, should be controlled from the "Execute robot" action as shown in the screenshot above. More on this below.

"Max retries"

"Maximum number of retries" has a couple of different meanings and can be controlled from a couple of different locations:

  • "Max retries" on a Pipes configuration: how many times to retry execution of each input/result of the configuration. NB! Pipes by design rarely fail so it almost never makes sense to change this option.
  • "Max retries" on an "Execute robot" action: how many times to retry executions of the "Default" configuration.
  • "Max retries" on a "Default" configuration: how many times to retry execution of each input/result of the configuration. Cannot be changed. Use "Max retries" on "Execute robot" action instead.

To read more about retries, see section "About Retries" on How can I create a run?.

"Max concurrency"

Similarly, "maximum concurrency" has a couple of different meanings and can be controlled from a couple of different locations:

  • "Concurrent executions" on a Pipes configuration: the number of inputs/results on the Pipes configuration that can run concurrently.
  • "Max concurrency" on an "Execute robot" action: the number of executions of the "Default" configuration that can run concurrently.
  • "Concurrent executions" on Extractor "Default" configuration: the number of inputs/results on the configuration that can run concurrently. Cannot be changed. Use "Max concurrency" on "Execute robot" action instead.

Did this answer your question?