All Projects → ldez → stackoverflow-slack-bot

ldez / stackoverflow-slack-bot

Licence: MIT License
Track a tag on StackOverflow and push to Slack

Programming Languages

javascript
184084 projects - #8 most used programming language
Dockerfile
14818 projects

Projects that are alternatives of or similar to stackoverflow-slack-bot

captcha-generator
An NPM package to generate captcha images that can be used in Discord bots or various other projects
Stars: ✭ 45 (+164.71%)
Mutual labels:  slack-bot
kirpich
Пацан-бот
Stars: ✭ 77 (+352.94%)
Mutual labels:  slack-bot
timebot-go
🤖 Timebot is a Slack bot for helping with everyday timesheet
Stars: ✭ 13 (-23.53%)
Mutual labels:  slack-bot
corebot
A bot to trigger Rundeck and Jenkins jobs from Slack.
Stars: ✭ 69 (+305.88%)
Mutual labels:  slack-bot
emojibot
Emojibot is a Slack bot that announces new custom emoji to a specific channel.
Stars: ✭ 17 (+0%)
Mutual labels:  slack-bot
SlackLateX
Bot that posts posts Latex pictures
Stars: ✭ 39 (+129.41%)
Mutual labels:  slack-bot
progress
Create Slack progress bars
Stars: ✭ 64 (+276.47%)
Mutual labels:  slack-bot
slack-php-app-framework
Robust PHP framework for building Slack apps in PHP
Stars: ✭ 29 (+70.59%)
Mutual labels:  slack-bot
2017-year-in-review
Year in Review with R Rmd Template
Stars: ✭ 34 (+100%)
Mutual labels:  stackoverflow
git-slack-notify
Sends Slack notifications for new commits in Git repositories
Stars: ✭ 12 (-29.41%)
Mutual labels:  slack-bot
stack-exchange-notifications
Add-ons for Stack Exchange sites, like: askdifferent, askubuntu, serverfault, stackoverflow and superuser
Stars: ✭ 21 (+23.53%)
Mutual labels:  stackoverflow
Yasuf
Very simple way of controlling your Python application via Slack
Stars: ✭ 23 (+35.29%)
Mutual labels:  slack-bot
today anime
これから放映されるアニメをポストするSlackボット
Stars: ✭ 19 (+11.76%)
Mutual labels:  slack-bot
Stackoverflow-Clone
Implementing necessary features of stackoverflow using django
Stars: ✭ 21 (+23.53%)
Mutual labels:  stackoverflow
soCareers-Data
Data and data processing scripts of StackOverflow Careers pages
Stars: ✭ 18 (+5.88%)
Mutual labels:  stackoverflow
slackr
Simple shell command to send or pipe content to slack via webhooks. (To upload snippets or files use: www.github.com/a-sync/slackfu)
Stars: ✭ 41 (+141.18%)
Mutual labels:  slack-bot
cerebro-stackoverflow
Cerebro plugin to search and show stackoverflow Q&A
Stars: ✭ 14 (-17.65%)
Mutual labels:  stackoverflow
so-trends
📈 StackOverflow trends
Stars: ✭ 21 (+23.53%)
Mutual labels:  stackoverflow
slack widgets
An abstraction of the JSON structure needed to create widgets in Slack message attachments
Stars: ✭ 14 (-17.65%)
Mutual labels:  slack-bot
iam
💚 Introduction Bot for slack teams:
Stars: ✭ 12 (-29.41%)
Mutual labels:  slack-bot

StackOverflow Slack Integration

Build Status Docker Build Status

This is a basic script to keep track a tag on StackOverflow and push accurate links to Slack.

slackoverbot

How to use

  • Make sure Node is installed.

  • Run npm install.

  • Add your configuration to config.json

  • Let a cron-job run npm run start every 15 minutes (StackOverflow quota is 300 requests by day)

config.json
{
  "tags": "tag1;tag2",
  "so": {
    "apiBaseURL": "https://api.stackexchange.com/2.2",
    "key": "[optional: your StackApps key, for a higher request quota]",
    "dayBack": 1,
    "hourBack": 0,
    "minuteBack": 0
  },
  "slack": {
    "apiBaseUrl": "https://[your_team_name].slack.com/api/",
    "token": "[your_token]",
    "channel": "#random",
    "botName": "[your_bot_name]",
    "botIcon": "[your_bot_icon]",
    "icons": {
      "newActivity": ":trackball:",
      "topic": ":speaking_head_in_silhouette:",
      "askedQuestion": ":speech_balloon:",
      "revisedQuestion": ":pencil:",
      "revisedAnswer": ":pencil:",
      "answerAccepted": ":ok_hand:",
      "postedAnswer": ":left_speech_bubble:",
      "comment": ":grey_question:"
    }
  },
  "lastEndFileName": "lastend",
  "dryRun": false
}
tags

name of the tags to track (separate by ;),

so.apiBaseURL

URL of the StackOverflow API.

so.minuteBack

number of minutes previous now, use for create the first query.

so.hourBack

number of hours previous now, use for create the first query.

so.dayBack

number of days previous now, use for create the first query.

so.key

an API key from https://stackapps.com/apps/oauth/register/submit to increase your per-day quota from 300 to 10000

slack.apiBaseUrl

URL of Slack API.

slack.token

Slack token, only for dev purpose. DON’T USE IN PRODUCTION.

slack.channel

Name of the channel to publish. (must start with #)

slack.botName

your bot account name.

slack.botIcon

your bot emoji icon. (can be blank.)

slack.icons.xxx

emoji for each situation. (can be blank.)

lastEndFileName

name of file use for store the last query date.

dryRun

if true, display the Slack payload without send it.

In production, use environment variable to set your Slack token (SLACK_API_TOKEN).

Thanks to @cwi-swat for inspiration.

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].