Skip to content

Slack ​

Ikonekta ang iyong Triggerfish agent sa Slack para makapag-participate ang iyong agent sa workspace conversations. Gumagamit ang adapter ng Bolt framework na may Socket Mode, ibig sabihin walang public URL o webhook endpoint na kailangan.

Default Classification ​

Naka-default ang Slack sa PUBLIC classification. Nire-reflect nito ang katotohanan na ang mga Slack workspaces ay madalas may external guests, Slack Connect users, at shared channels. Pwede mo itong itaas sa INTERNAL o mas mataas kung strictly internal ang iyong workspace.

Setup ​

Step 1: Gumawa ng Slack App ​

  1. Pumunta sa api.slack.com/apps
  2. I-click ang Create New App
  3. Piliin ang From scratch
  4. Pangalanan ang iyong app (hal., "Triggerfish") at piliin ang iyong workspace
  5. I-click ang Create App

Step 2: I-configure ang Bot Token Scopes ​

Mag-navigate sa OAuth & Permissions sa sidebar at idagdag ang sumusunod na Bot Token Scopes:

ScopeLayunin
chat:writeMagpadala ng messages
channels:historyMagbasa ng messages sa public channels
groups:historyMagbasa ng messages sa private channels
im:historyMagbasa ng direct messages
mpim:historyMagbasa ng group direct messages
channels:readMag-list ng public channels
groups:readMag-list ng private channels
im:readMag-list ng direct message conversations
users:readMag-look up ng user information

Step 3: I-enable ang Socket Mode ​

  1. Mag-navigate sa Socket Mode sa sidebar
  2. I-toggle ang Enable Socket Mode sa on
  3. Magpo-prompt na gumawa ng App-Level Token -- pangalanan ito (hal., "triggerfish-socket") at idagdag ang connections:write scope
  4. Kopyahin ang na-generate na App Token (nagsisimula sa xapp-)

Step 4: I-enable ang Events ​

  1. Mag-navigate sa Event Subscriptions sa sidebar
  2. I-toggle ang Enable Events sa on
  3. Sa ilalim ng Subscribe to bot events, idagdag ang:
    • message.channels
    • message.groups
    • message.im
    • message.mpim

Step 5: Kunin ang Iyong Credentials ​

Kailangan mo ng tatlong values:

  • Bot Token -- Pumunta sa OAuth & Permissions, i-click ang Install to Workspace, saka kopyahin ang Bot User OAuth Token (nagsisimula sa xoxb-)
  • App Token -- Ang token na ginawa mo sa Step 3 (nagsisimula sa xapp-)
  • Signing Secret -- Pumunta sa Basic Information, mag-scroll sa App Credentials, at kopyahin ang Signing Secret

Step 6: Kunin ang Iyong Slack User ID ​

Para i-configure ang owner identity:

  1. Buksan ang Slack
  2. I-click ang iyong profile picture sa upper-right
  3. I-click ang Profile
  4. I-click ang three dots menu at piliin ang Copy member ID

Step 7: I-configure ang Triggerfish ​

Idagdag ang Slack channel sa iyong triggerfish.yaml:

yaml
channels:
  slack:
    # botToken, appToken, signingSecret na naka-store sa OS keychain
    ownerId: "U01234ABC"

Ang mga secrets (bot token, app token, signing secret) ay ini-enter habang gumagamit ng triggerfish config add-channel slack at sino-store sa OS keychain.

OptionTypeRequiredDescription
ownerIdstringRecommendedAng iyong Slack member ID para sa owner verification
classificationstringHindiClassification level (default: PUBLIC)

I-store ang mga Secrets nang Ligtas Huwag kailanman mag-commit ng

tokens o secrets sa source control. Gamitin ang environment variables o iyong OS keychain. Tingnan ang Secrets Management para sa mga detalye. :::

Step 8: I-invite ang Bot ​

Bago makabasa o makapagpadala ng messages ang bot sa isang channel, kailangan mo muna itong i-invite:

  1. Buksan ang Slack channel kung saan mo gustong i-lagay ang bot
  2. Mag-type ng /invite @Triggerfish (o kung ano man ang pangalan ng iyong app)

Pwede ring tumanggap ang bot ng direct messages nang hindi ito ina-invite sa isang channel.

Step 9: I-start ang Triggerfish ​

bash
triggerfish stop && triggerfish start

Magpadala ng message sa channel kung saan present ang bot, o mag-DM dito nang direkta, para kumpirmahin ang connection.

Owner Identity ​

Gumagamit ang Triggerfish ng Slack OAuth flow para sa owner verification. Kapag dumating ang message, kinukumpara ng adapter ang Slack user ID ng sender laban sa na-configure na ownerId:

  • Match -- Owner command
  • Walang match -- External input na may PUBLIC taint

Workspace Membership ​

Para sa recipient classification, dine-determine ng Slack workspace membership kung ang isang user ay INTERNAL o EXTERNAL:

  • Regular workspace members ay INTERNAL
  • Slack Connect external users ay EXTERNAL
  • Guest users ay EXTERNAL

Message Limits ​

Sumusuporta ang Slack ng messages hanggang 40,000 characters. Ang mga messages na lumampas dito ay tina-truncate. Para sa karamihan ng agent responses, hindi nare-reach ang limit na ito.

Typing Indicators ​

Nagpapadala ang Triggerfish ng typing indicators sa Slack kapag nagpo-process ng request ang agent. Hindi ipinapakita ng Slack ang incoming typing events sa mga bots, kaya send-only ito.

Group Chat ​

Pwedeng mag-participate ang bot sa group channels. I-configure ang group behavior sa iyong triggerfish.yaml:

yaml
groups:
  default_behavior: "mentioned-only"
  overrides:
    - channel: slack
      channel_name: "#ai-assistant"
      behavior: "always"
BehaviorDescription
mentioned-onlyTumugon lang kapag @mentioned ang bot
alwaysTumugon sa lahat ng messages sa channel

Pagpapalit ng Classification ​

yaml
channels:
  slack:
    classification: INTERNAL

Mga valid na levels: PUBLIC, INTERNAL, CONFIDENTIAL, RESTRICTED.