All Projects → slackapi → template-actionable-notifications

slackapi / template-actionable-notifications

Licence: MIT license
Sample Slack app to illustrate how incoming webhooks and interactive messages can be used to build a helpdesk integration

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to template-actionable-notifications

template-action-and-dialog
A sample Slack app "ClipIt", which allows user to clip a message using a message action
Stars: ✭ 24 (-22.58%)
Mutual labels:  slack-api, slack-blueprint, slack-workflow-sample, slack-tutorial
template-announcement-approvals
Sample Slack app that uses the Events API and interactive message to implement an approvals workflow
Stars: ✭ 73 (+135.48%)
Mutual labels:  slack-api, slack-blueprint, slack-workflow-sample, slack-tutorial
Slacker
Slack Bot Framework
Stars: ✭ 495 (+1496.77%)
Mutual labels:  slack-api
Slack Watchman
Monitoring your Slack workspaces for sensitive information
Stars: ✭ 159 (+412.9%)
Mutual labels:  slack-api
Slack Poster
Simple gem to post messages on Slack using web hooks.
Stars: ✭ 49 (+58.06%)
Mutual labels:  slack-api
Slack Black Theme
slack theme, dark theme for slack, black theme slack black theme
Stars: ✭ 531 (+1612.9%)
Mutual labels:  slack-api
Slack Machine
A sexy, simple, yet powerful and extendable Slack bot
Stars: ✭ 91 (+193.55%)
Mutual labels:  slack-api
Java Slack Sdk
Slack Developer Kit (including Bolt for Java) for any JVM language
Stars: ✭ 393 (+1167.74%)
Mutual labels:  slack-api
Slacknimate
👯 Realtime text animation for Slack chatops
Stars: ✭ 250 (+706.45%)
Mutual labels:  slack-api
Bolt Starter
A Bolt ⚡️ app template with useful settings for easier development
Stars: ✭ 37 (+19.35%)
Mutual labels:  slack-api
Slack Api Specs
Open API specifications for platform products by Slack
Stars: ✭ 148 (+377.42%)
Mutual labels:  slack-api
Slack Api
A super simple PHP wrapper for Slack API
Stars: ✭ 34 (+9.68%)
Mutual labels:  slack-api
Whatis
Whatis bot server for Slack!
Stars: ✭ 22 (-29.03%)
Mutual labels:  slack-api
Slack cleaner2
📝 Python3 module for deleting Slack messages and files using the Slack REST API
Stars: ✭ 92 (+196.77%)
Mutual labels:  slack-api
Slackpirate
Slack Enumeration and Extraction Tool - extract sensitive information from a Slack Workspace
Stars: ✭ 512 (+1551.61%)
Mutual labels:  slack-api
Bolt Python
A framework to build Slack apps using Python
Stars: ✭ 190 (+512.9%)
Mutual labels:  slack-api
Chat
Chat with your team while you collaborate over code using VS Live Share
Stars: ✭ 468 (+1409.68%)
Mutual labels:  slack-api
Slack Ruby Client
A Ruby and command-line client for the Slack Web, Real Time Messaging and Event APIs.
Stars: ✭ 957 (+2987.1%)
Mutual labels:  slack-api
Fantasy Football Metrics Weekly Report
Command line application to create weekly reports (containing stats, metrics, and rankings) for Fantasy Football leagues on the following platforms: Yahoo, Fleaflicker, Sleeper, ESPN.
Stars: ✭ 62 (+100%)
Mutual labels:  slack-api
admissions
Admissions is the gateway to Elixir School's private Slack
Stars: ✭ 18 (-41.94%)
Mutual labels:  slack-api

Actionable notifications template

Updated January 2020: As we have introduced some new features, this tutorial and the code samples have been updated!

Read diff.md for more info!


When a helpdesk ticket is created in a 3rd party system, send an actionable notification in Slack that allows the user to claim the ticket or apply a label.

Screenshot of template application

Setup

Create a Slack app

  1. Create an app at api.slack.com/apps
  2. Activate Incoming Webhooks from the Features > Incoming Webhooks then click 'Add New Webhook to Workspace', install the app and select a channel
  3. Navigate to the OAuth & Permissions page and add the following bot scopes:
    • incoming-webhook (This should be pre-selected)
    • chat:write (to send messages)
    • im:write (to open a DM channel between your bot and a user)

Run the app

Clone this repo to run locally or Remix on Glitch

  1. Get the code
  2. Set the following environment variables to .env (see .env.sample):
    • SLACK_TOKEN: Your app's xoxb- token (available on the OAuth & Permissions)
    • SLACK_WEBHOOK: The webhook URL that you copied off the Incoming Webhook
    • SLACK_SIGNING_SECRET: Your app's Signing secret (available on the Basic Information)
  3. If you're running the app locally:
    1. Start the app (npm start)
    2. In another window, start ngrok on the same port as your webserver (ngrok http $PORT)

Enable Interactive Components

  1. Go back to the app settings and click on Interactive Components.
  2. Set the Request URL to your ngrok URL (or Glitch URL) + /interactive-message (such as https://my-project.glitch.me/interactive-message)
  3. Save

Send a mock new ticket notification

Post the mock ticket JSON to the /incoming endpoint:

curl -X POST -H 'Content-type: application/json' --data "`cat ./ticket.json`" <Your app server URL + /incoming>

Example: curl -X POST -H 'Content-type: application/json' --data "`cat ./ticket.json`" https://slack-actionable-notification-blueprint.glitch.me/incoming

You need the ticket.json file in the same directory where you are sending the curl command!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].