Slack Bot Installation (Enterprise only)

This article shows you how to integrate the Vizlib Collaboration Bot into your Slack workspace, allowing you to use Slack to share and power your comments in Vizlib Teamwork.

This topic contains the following sections:

Add the Vizlib Collaboration Bot

  • In the Vizlib user portal (Figure 1), select Collaboration from the Products side menu, then click Integrations to open the integrations settings.

Figure 1: Integrations

  • Click the Add to Slack button to open the login screens for your Slack workspace (Figure 2).

  • Type your workspace name and click Continue.

Figure 2: Workspace Sign in

  • Sign in to the company workspace with your credentials (Figure 3).

Figure 3: Company Sign in

  • Review the access permissions for the Vizlib Collaboration Bot (Figure 4), and click Allow.

Figure 4: Access Permissions

  • Choose if you would like to copy the token to your clipboard or save it, for easy access, in the Vizlib user portal (Figure 5).

Figure 5: Copy or Save

  • After the copy or copy/save completes, click OK (Figure 6).

Figure 6: Completed

  • If you save the token in the Vizlib user portal, it will be available in the Bot Tokens list on the Integrations page. You can copy it to your clipboard by clicking the Copy button (Figure 7). If you no longer need to store the token in the user portal, click the X button to remove it.

Figure 7: Slack Token Vizlib Portal

Add an Integration

After you add the Vizlib Collaboration bot to your workspace, you can add the Slack integration in the Vizlib Management Console (VMC).

  • Login to the VMC and click on System Settings>Integrations.

  • Click on Add Integration.

  • Select Slack as the Type.

  • Paste the Bot token in the input field and click Add Integration to save the settings (Figure 8).

Figure 8: Add Integration

Configure Teamwork Stream

If you're working with more than one stream, you can navigate to Teamwork Settings>Streams and Security to add a new stream or edit an existing stream. Figure 9 uses shows an example stream called comments.

  • Click on Add Stream to open the stream settings panel.

  • In the Slack Integration drop-down, select the integration you created in Add an Integration.

  • Select the remaining configuration options you require for the stream by using the drop-downs.

  • Click Add Stream to save the stream settings.

Figure 9: Configure Streams

Share and Send Comments with Slack

In Slack, you can add the Collaboration bot to the channels you would like to use with Vizlib Teamwork.

  • Click the name of the channel where you would like to add the Collaboration bot.

  • Select Add an app (Figure 10).

Figure 10: Add an App

  • Search for Vizlib Collaboration and click Add (Figure 11).

Figure 11: Add Collaboration App

  • The Teamwork objects should now display the Share icon, using the stream you configured in Configure Teamwork Stream (Figure 12).

  • Click the share icon to open the Share and send window.

Figure 12: Share

  • When the window opens, choose slack in the Share by options (Figure 13).

  • Select the channel to share in and choose if you want to attach data and/or an image.

Note: Sharing data and images is only available if sharing on a visualisation (not on sheets).

Figure 13: Share and Send

Example

Now you'll be able to use Slack to share and exchange ideas and data (Figure 14).

Figure 14: Teamwork Comments

Slack API Call Reference

In Table 1, we've listed the API calls the Vizlib Collaboration Bot will use when it's integrated with Slack.

Table 1: Slack API Reference

API Call Description

client.chat.postMessage

Sends a message.

client.users.lookupByEmail

Gets the user by searching on email (no slack user id is provided).

client.users.info

Gets the user by searching on slack user id.

client.users.list

Gets the user by searching on user name (no matching email or slack user id provided).

client.users.conversations({ types:

'public_channel,private_channel' })

Checks the user has access to post in the channel provided.

client.files.upload

Uploads attachments to the message (e.g. excel file and/or images).