Edit this page on GitHub

Home > docs > plugins > Zoom Tasks

Zoom Tasks

The zoom plugin supports interaction with the Zoom messaging platform.

Possible operations are:

Usage

To be able to use the Zoom task in a Concord flow, it must be added as a dependency:

configuration:
  dependencies:
  - mvn://com.walmartlabs.concord.plugins:zoom-task:1.32.3

This adds the task to the classpath and allows you to invoke the Zoom task.

Overview

The Zoom task allows users to trigger operations on a Zoom server as a step in a flow. It uses a number of required input parameters that are common for all operations:

  • action - determines the operation to be performed with the current invocation of the Zoom task
  • ignoreErrors - boolean value, if true any errors that occur during the execution are ignored and stored in the result variable. Defaults to false.

The clientId, clientSecret, robotJid, accountId, rootApi and accessTokenApi variables configure connection to the Zoom api endpoint. They are best configured globally asdefault process configuration with an zoomParams argument.

configuration:
  arguments:
    zoomParams:
      clientId: "botId"
      clientSecret: "botSecret"
      robotJid: "botJid"
      accountId: "zoomAccountId"
      rootApi: "zoomRootApi"
      accessTokenApi: "zoomAccessTokenApi"

For more details about each parameter refer to the api docs.

Send Message

The sendMessage action allows users to send messages to a specific Zoom channel identified by a channelId. It uses input parameters listed below for the operation:

  • channelId - string, Required - The JID of the Channel you want to send message to.
  • headText - string, Required - text that goes into message head.
  • bodyText - string, optional - text that goes into the message body.
flows:
  default:
    - task: zoom
      in:
        action: sendMessage
        channelId: "myZoomChannelId"
        headText: "Hello to concord world"
        bodyText: "Hello everyone"
        ignoreErrors: true

    - if: "${!result.ok}"
    then:
    - throw: "Error while sending a message: ${result.error}"
    else:
    - log: "Data: ${result.data}"

The task returns a result object with three fields:

  • ok - true if the operation is succeeded.
  • data - string - response body, if the operation is succeeded.
  • error - error message if the operation failed.