Skip to main content
MediaBeacon University

Advanced Workflow Editor

Workflow_Advanced_Menu.png

The Advanced Workflow Editor can be used by holding shift when clicking the Add button to create a new workflow. You will be able to choose either Workflow (Visual Workflow), Advanced (Advanced Workflow) or Folder.

Workflow_Add_Advanced.png

Overview of Functionality

The Advanced Workflow Editor provides much more functionality than the Visual Workflow Editor. However, it does require writing code in JavaScript.

Code

This area holds the code that is to run when the workflow is triggered.

Enable Workflow

When checked, the workflow is enabled and can be run when triggered. Disabled workflows will never run. A workflow needs to be enabled to change its type, set/add parameters, or toggle the client-side triggering flag.

Workflow Types

Regular

A standard workflow that doesn’t require specific permissions logic or won’t be accessed by other workflows.

Permission

Makes the workflow available to use as an option for a subset of ACL privileges in the ACL setup (like a replacement for ActionSecurity plugins, done in workflow instead of Java plugins).

Library

The Library option is for organization and allows other scripts to reference this one.

Additional Workflow Options

Requires File System Access

Selecting this option allows the workflow to edit or write data to the file system. Examples where this is necessary are if you create new files, or even move or copy existing files. By default, if this is checked the workflow isn’t allowed to run in C3ntrifuge. It can only be run in the built-in workflow engine in the core MediaBeacon R3volution (since C3ntrifuge doesn’t have file system access to the asset repository, it’s ability to run remote workflows is limited to ones that don’t interact with the assets.) C3ntrifuge can, however, be given file system access and run any workflow the core MediaBeacon is capable of.

(New in 8.0) Run as a Batched Bulk Edit on Current Selection

Selecting this option increases efficiency of bulk edit workflows. It allows the workflow to only be triggered once when called for a bulk edit action instead of one call per asset edit.

Enable Client-Side Triggering

Useful for allowing the workflow to be triggered by a button within the MediaBeacon interface. When toggled on, a Workflow ID is presented for use in triggering the workflow.

Workflow Parameters

Allows the creation of parameters that can be passed into the workflow during its execution.

Timeout

Stops the workflow after it has run for the set amount of time.

Debug

Workflow_Debug_Options.png

This option is useful to enable when developing a workflow. Once enabled, the workflow can be run from another window at the URL provided from the Debugger Connection URL section. Debugging information will be displayed. It is recommended that this option be disabled when a workflow is in a production environment.

The debugging interface is fully-featured, allows multiple workflow executions to be debugged concurrently, and does not require access to the machine hosting MediaBeacon. Instead, debugging is available to any global administrator using the Google Chrome web browser via the following steps:

  1. Using Google Chrome, log into the core MediaBeacon server’s Jetty web interface as a global administrator.
  2. Open the Workflow Manager panel by selecting Workflow in the Manage menu.
  3. Select a workflow whose executions should be debugged and navigate to the Debug section.
  4. Check the Debug this Workflow checkbox and save the configuration change.
  5. Select and copy the address following Debugger Connection URL and paste it into a new Google Chrome browser window. This will open Chrome DevTools and open a connection to MediaBeacon’s debugging servlet.

    The host, port and protocol of the “ws” query string parameter’s URL value should be the same host and port used to login to the MediaBeacon core Jetty web interface. Only one debugging connection may be made concurrently; connecting DevTools from two different Chrome instances using the same or differing users at the same time cannot be done. Also, due to Google Chrome’s security restrictions, this Chrome DevTools address must be manually opened by the user, it can’t be open via Javascript or via a link in MediaBeacon’s web interface. Frequent users of MediaBeacon’s workflow debugger may wish to bookmark this Chrome DevTools address.

  6. Trigger an execution of the workflow to be debugged. A new Chrome DevTools window will open automatically with execution paused at the workflow’s first logical line of Javascript.

    RemoteWorkflowDebugger2.jpg

  7. Detailed instructions for using the Chrome DevTools Javascript debugging interface can be found here:

    https://developers.google.com/web/to...g/breakpoints/

    Important controls include:

    1. Execution controls include Step-in, Step-Over, and Step-Out in the upper right of the interface.
    2. Call stack disclosure in the right column.
    3. Breakpoint controls and indicators in the left line number column and in the right column disclosures.
    4. Control for opening the console drawer that displays messages and exceptions and allows for the execution of arbitrary Javascript.

    An example of the Chrome DevTool’s state while debugging a workflow:

    RemoteWorkflowDebugger3.jpg

  8. Once execution is complete, or the selections to be debugged have been executed, the automatically opened Chrome DevTools window can be closed. If the window is closed while workflow execution is paused, execution will resume and complete normally. New Chrome DevTools windows will be created for each debugged workflow execution that occurs while the original parent Chrome DevTool window opened with the address copied from the Workflow Manager panel in step 5 remains open.

    Asset-Based Triggers

    When enabled, the workflow can be triggered based on any combination of assets being added, removed, or metadata being edited.

    Asset Filter

    Further refining criteria may be entered here to constrain the workflow to be triggered only by events on certain assets.

    Trigger Filter

    The workflow triggers on changes to any of the specified fields. If no fields are specified, the workflow triggers on changes to any field.

    Folder Filter

    Folder Filters can be set if you want to restrict where the trigger can be tripped from to a particular file directory.

    Scheduled Triggers

    Workflows can be configured to run on a schedule such as hourly, daily, weekly, or every X minutes.

    Save

    Click Save to save your workflow.

Workflow Colors

Each workflow in the list of workflows is color coded based on its type:

  • Blue: Library Workflow
  • Orange: Permission Workflow
  • Green: Client-Side Triggering enabled
  • Gray: Regular Workflow (Client-Side Triggering not enabled)

WorkflowColors.png

  • Was this article helpful?