Use Studio to Configure Slack Connector l.0 - Mule 4

Anypoint Studio (Studio) editors help you design and update your Mule applications, properties, and configuration files.

To add and configure a connector in Studio:

When you run the connector, you can view the app log to check for problems in real time, as described in View the App Log.

If you are new to configuring connectors in Studio, see Use Studio to Configure a Connector. If, after reading this topic, you need additional information about the connector fields, see the Slack Connector Reference.

Create a Mule Project

In Studio, create a new Mule project in which to add and configure the connector:

  1. In Studio, select File > New > Mule Project.

  2. Enter a name for your Mule project and click Finish.

Add the Connector to Your Mule Project

Add Anypoint Connector for Slack (Slack Connector) to your Mule project to automatically populate the XML code with the connector’s namespace and schema location and to add the required dependencies to the project’s pom.xml file:

  1. In the Mule Palette view, click (X) Search in Exchange.

  2. In the Add Dependencies to Project window, type slack in the search field.

  3. Click Slack Connector in Available modules.

  4. Click Add.

  5. Click Finish.

Adding a connector to a Mule project in Studio does not make that connector available to other projects in your Studio workspace.

Configure a Source

A source initiates a flow when a specified condition is met. Configure one of these sources to use with Slack Connector:

  • HTTP Listener

    Initiates a flow each time it receives a request on the configured host and port

  • Scheduler

    Initiates a flow when a time-based condition is met

For example, to configure an HTTP Listener source, follow these steps:

  1. In the Mule Palette view, select HTTP > Listener.

  2. Drag Listener to the Studio canvas.

  3. On the Listener configuration screen, optionally change the value of the Display Name field.

  4. Specify a value for the Path field.

  5. Click the plus sign (+) next to the Connector configuration field to configure a global element that can be used by all instances of the HTTP Listener source in the app.

  6. In the General tab, specify the connection information for the connector.

  7. In the TLS tab, optionally specify the TLS information for the connector.

  8. In the Advanced tab, optionally specify reconnection information, including a reconnection strategy.

  9. Click Test Connection to confirm that Mule can connect with the specified server.

  10. Click OK.

Add a Connector Operation to the Flow

When you add a connector operation to your flow, you are specifying an action for that connector to perform.

To add an operation for Slack Connector, follow these steps:

  1. In the Mule Palette view, select Slack and then select the desired operation.

  2. Drag the operation onto the Studio canvas and to the right of the source.

Configure a Global Element for the Connector

When you configure a connector, it’s best to configure a global element that all instances of that connector in the app can use. Configuring a global element requires you to provide the authentication credentials that the connector requires to access the target Slack system. Slack Connector supports OAuth 2.0 authentication, which delegates user authentication to the service hosting the user account.

To configure the global element for Slack Connector, follow these steps:

  1. Select the name of the connector in the Studio canvas.

  2. Select the operation in the Studio canvas.

  3. In the configuration screen for the operation, click the plus sign (+) next to the Connector configuration field to access the global element configuration fields.

  4. On the General tab, complete the following fields to set up OAuth 2.0 authentication:

    Field Description

    Consumer key

    OAuth consumer key as registered with the service provider.

    Consumer secret

    OAuth consumer secret as registered with the service provider.

    Authorization url

    Service provider’s authorization endpoint URL.

    Access token url

    Service provider’s access token endpoint URL.

    Scopes

    OAuth scopes to request during the OAuth dance. If not provided, this value defaults to those in the annotation.

    Resource owner Id

    Resource owner ID that each component should use if it doesn’t otherwise reference one.

    Before

    Name of a flow to execute immediately before starting the OAuth dance.

    After

    Name of a flow to execute immediately after an access token is received.

    Listener config

    Reference to an HTTP listener configuration to use to create the listener that receives the access token callback endpoint.

    Callback path

    Path of the access token callback endpoint.

    Authorize path

    Path of the local HTTP endpoint that triggers the OAuth dance.

    External callback url

    If the callback endpoint is behind a proxy or must be accessed through a non-direct URL, use this parameter to tell the OAuth provider the URL to use to access the callback.

    Object store

    Reference to the object store to use to store each resource owner ID’s data. If not specified, Mule automatically provisions the default object store.

    You can reference a configuration file that contains ANT-style property placeholders (recommended), or you can enter your authorization credentials in the global configuration properties. For information about the benefits of using property placeholders and how to configure them, see Anypoint Connector Configuration.

  5. On the Advanced tab, optionally specify reconnection information, including a reconnection strategy.

  6. Click Test Connection to confirm that Mule can connect with the specified server.

  7. Click OK.

Configure Additional Connector Fields

After you configure a global element for Slack Connector, configure the the other required fields for the connector. The required fields vary depending on which connector operation you use.

View the App Log

To check for problems, you can view the app log as follows:

  • If you’re running the app from Anypoint Platform, the output is visible in the Anypoint Studio console window.

  • If you’re running the app using Mule from the command line, the app log is visible in your OS console.

Unless the log file path is customized in the app’s log file (log4j2.xml), you can also view the app log in the default location MULE_HOME/logs/<app-name>.log.

Next Step

After configuring an app in Studio, see the Slack Examples section to experiment with the Slack connector.