# Custom bot without proxy Settings

【Diagram】 diagram-for-custom-bot-without-proxy

To deploy a custom bot without proxy in your Slack workspace, you need to create and edit a Slack app. The steps are as follows.

# Before creating Slack app

Start the GROWI main server.

# Select Bot type

Select Custom bot without proxy in Slack Integration of the Management page.

slack-bot-selecting-custom-bot-without-proxy

# Create a Slack app

  1. Go to the App Page (opens new window) of the Slack API and click Create New App button.
slack-custom-bot1
  1. Click [From an app manifest].
slack-custom-bot2
  1. Select the workspace where you want to install the app and click [Next].
slack-custom-bot3
  1. Paste the following App Manifest into the [YAML] tab, and click [Next].
slack-custom-bot4
_metadata:
  major_version: 1
  minor_version: 1
display_information:
  name: GROWI BOT
features:
  bot_user:
    display_name: GROWI BOT
    always_online: false
  slash_commands:
    - command: /growi
      url: https://{GROWI domain name}/_api/v3/slack-integration/commands
      description: Test Bot
      should_escape: false
  unfurl_domains:
    - {GROWI domain name}
oauth_config:
  redirect_urls:
    - https://{GROWI domain name}/slack/oauth_redirect
  scopes:
    bot:
      - channels:history
      - channels:join
      - chat:write
      - chat:write.public
      - commands
      - groups:history
      - im:history
      - links:read
      - links:write
      - mpim:history
      - team:read
settings:
  event_subscriptions:
    request_url: https://{GROWI domain name}/_api/v3/slack-integration/events
    bot_events:
      - link_shared
  interactivity:
    is_enabled: true
    request_url: https://{GROWI domain name}/_api/v3/slack-integration/interactions
  org_deploy_enabled: false
  socket_mode_enabled: false
  token_rotation_enabled: false
  1. After reviewing the app overview, click [Create] to create the app.
slack-custom-bot5

# Install the Custom bot without proxy in your Slack workspace

  1. In the Slack App you created, go to Settings and click Basic Information.

  2. Click the Install your app.

    slack-bot-install-your-app-introduction
  3. Click the Install to Workspace.

    slack-bot-install-to-workspace
  4. On the destination screen, Click the Allow button.

    slack-bot-install-your-app-transition-destination
  5. If you see a green check mark to the right of Install your app, the installation is complete in your workspace.

    slack-bot-install-your-app-complete
  6. Invite the channel you want to use the GROWI bot on using @example.

    slack-bot-install-to-workspace-joined-bot slack-bot-install-your-app-introduction-to-channel

# Signing Secret and Bot User OAuth Token settings

Before setting Signing Secret and Bot User OAuth Token, check the values.

# How to check Signing Secret

  1. In the Slack App you created, go to Settings and click Basic Information.

    slack-bot-basic-information
  2. Push show button for Signing Secret in App Credentials to confirm. slack-bot-signing-secret

# How to check Bot User OAuth Token

  1. In the Slack App you created, go to Settings and click OAuth and Permissions.

    slack-bot-oauth-and-permissions-introduction
  2. Check Bot User Oauth Token in OAuth Tokens for Your Team.

    slack-bot-oauth-and-permissions

There are two ways to set Signing Secret and Bot User OAuth Token: 1. Set them in the Management page 2. Set them with environment variables. It is easier to set them in the Management page. Also, in case that you input values in both the Management page and environment variable, the Management page value will take a priority. That's why settings in the Management page is recommended.

    1. How to set them in Management page
    • Go to the Slack integration in the Management page and input Signing Secret and Bot User OAuth Token, then click on the Update button.

      slack-bot-register-introduction
    • When a green checkmark appears in the red circle, registration is completed.

      slack-bot-register-secrets
    1. How to set them with environment variables
    • Assign SLACK_SIGNING_SECRET and SLACK_BOT_TOKEN with the values you checked.

# Run connectivity test of Custom bot without proxy

  1. Click Test connection and input the Slack channel to which invited GROWI-Bot.

    slack-bot-test-introduction
  2. Click on the Test button.

  • In case of success
    Successfully sent to Slack workspace. will be displayed at Logs. Green checkmarks will appear in red circles. Check the channel to which you invited GROWI-Bot.
    • GROWI side

      slack-bot-test-success
    • Slack side

      slack-bot-test-success-at-slack-app
  • In case of failure
    See Error logs for connectivity test

Once you are all set up, see what you can do with a GROWI-bot