Run Module

The “Run module” component uses a module that has been first configured and published in the Modules tab and brings it into a flow. This component can be used to reference a business logic created in the scope of a common module and place it in any position of the flow.

📘

Notes

  • Please note that only compatible modules are listed in the Run module dropdown.
  • The existing configuration rules still apply to Modules. For example, it is not possible to configure a "Run module" step with a Module that has Voicemail, Assignment, and Dial, Forward to External or Callback components, as a transition for the "call_finished" exit of an Assignment and Dial or a Callback component in an "Incoming call" Studio flow. When saving the flow, an error will be displayed, and it will not be published.

By using the “Run module” component, the user can see and map the input arguments and outputs defined in the selected module under the Preferences tab.
Under the “Run module” Exits tab, the user will be shown the exits explicitly created within the module and will be able to connect those exits to new steps in the flow.
When a module is edited and re-published, all the instances of the module, typified by the use of the “Run module” component, will be automatically updated in all the flows where it is being used.

1936

📘

Note

If an input argument is removed from a “Run module” step of a module being used in a flow (by cleaning and renaming the input argument name, removing the assigned variable, or changing the data type without assigning a new data-type matching variable), an “Argument unavailable” warning will appear if the flow is published. In draft versions of the flow, the input argument will no longer be displayed in the “Run module” Input arguments list.

When the user changes the data type of input argument of a module in use in a flow, in the “Run module” step of the flow, the user will have a warning indicating that for that argument “Type does not match”. In draft versions of the flow, when there is a type mismatch and the user saves the flow, a validation error will be presented, and the flow cannot be published. The user will have to change the variable associated with that input argument to a new one of a matching type.

A similar situation happens when module outputs are deleted or assigned to a variable with a different type from the initial one assigned to it.
Note that, at execution time, unexpected behaviors may occur whenever an input argument or an output is deleted, or their data type is changed.