gsingers / Slack Jira Plugin
Licence: mit
A Slack plugin that watches channels for messages about JIRA and acts accordingly
Stars: ✭ 252
Programming Languages
javascript
184084 projects - #8 most used programming language
Projects that are alternatives of or similar to Slack Jira Plugin
Twitch Js
A community-centric, community-supported version of tmi.js
Stars: ✭ 225 (-10.71%)
Mutual labels: bot
Publicleech
can be found on Telegram as https://telegram.dog/PublicLeechGroup
Stars: ✭ 236 (-6.35%)
Mutual labels: bot
Python Telegram Bot
We have made you a wrapper you can't refuse
Stars: ✭ 17,209 (+6728.97%)
Mutual labels: bot
Telegram channel downloader
一个电报群组、频道下载脚本,支持上传到GD、OD等rclone可以挂载的网盘。
Stars: ✭ 216 (-14.29%)
Mutual labels: bot
Botui
🤖 A JavaScript framework to create conversational UIs
Stars: ✭ 2,607 (+934.52%)
Mutual labels: bot
Facebooktoolkit
a tool to get Facebook data, and some Facebook bots, and extra tools found on Facebook Toolkit ++.
Stars: ✭ 227 (-9.92%)
Mutual labels: bot
Alfred Jira
Alfred 3 (or Alfred 2) workflow for interacting with JIRA.
Stars: ✭ 242 (-3.97%)
Mutual labels: jira
Swiftybot
How to create a Telegram, Facebook Messenger, and Google Assistant bot with Swift using Vapor on Ubuntu / macOS.
Stars: ✭ 247 (-1.98%)
Mutual labels: bot
First Timers Bot
A friendly bot that helps onboarding new Open Source Contributors
Stars: ✭ 239 (-5.16%)
Mutual labels: bot
Sapconversationalai
✨ 🤖 🤖 Build your own conversational bot on our Collaborative Bot Platform! 🤖🤖 ✨
Stars: ✭ 247 (-1.98%)
Mutual labels: bot
Slack JIRA Bot Plugin
JIRA Bot integration with slack. The bot automatically appends a link to a message whenever there is a mention of a JIRA issue in the message, for example:
Usage
git clone https://github.com/gsingers/slack-jira-plugin.git
cd slack-jira-plugin
npm install
Write your own configuration file (config-example.js
) is a good starting point for building your own.
var slackbot = require('./lib/bot');
var config = {
showIssueDetails: true,
issueDetailsToShow: {'fields.summary':1 , 'fields.assignee' : 1, 'fields.creator' : 0, 'fields.description': 0},
showDetailsByDefault: true,//if true, you don't need the '+' to get details
bot_name: "jira",//Provide the name to post under
token: 'XXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXX', // https://api.slack.com/web
jira_urls: {
// DEFAULT NODE IS REQUIRED.
"DEFAULT": {url: "https://default.jira.server/browse/"},
// These should match projects from the projects property where you want to use a configuration other than the default
"SOLR": {
url: "https://issues.apache.org/jira/browse/",
jira: {
user: 'username', // be sure to use the username, not the user email
password: 'password',
host: 'hostname',
protocol: 'https',
port: 443,
version: '2',
verbose: true,
strictSSL: true
}
},
"GRANT": {url:"http://grant.jira.server/jira/browse/"}
},
search_cmd: "search",
//Since search results can be verbose, you may not want to muddy the channel
search_output_chan: "C02U1L9KZ",//if the value is "this", then the current channel will be used, else the name of a channel
projects: ["REPLACE", "ME", "WITH", "YOUR", "PROJECT", "NAMES", "GRANT", "SOLR"],
post: true,
verbose: true,
custom_texts: {
messagePrefix: "Hey, thought this might help: " //message you might like to prefix to JiraBot's post
},
emoji: ":jira:", // be sure to upload your custom emoji in slack
link_separator: ", ",// use \n if you want new lines
error_channel: '' //the id of the channel to send low level log errors. If not defined, will use the current channel
};
//DO NOT EDIT BELOW HERE
var slackbot = new slackbot.Bot(config);
slackbot.run();
Save this to a file in the root of the project then run your bot with:
node your-config-file, eg.: node config-gsingers
This will launch the bot in your terminal based on provided configuration.
Configuration
-
token
: Your Slack API token, get your token at https://api.slack.com/web -
issueDetailsToShow
: Details from JIRA you want to be rendered in Slack -
jira_urls
: A mapping of JIRA project names to the URL that can display that JIRA issue, i.e. SOLR -> https://issues.apache.org/jira/browse/ -
projects
: A list of JIRA project names, as in SOLR, MAHOUT, LUCENE -
post
: If true, then post a new msg, else update the current one -
verbose
: print logging info -
custom_texts.messagePrefix
: An optional message that you can prefix at the beginning of the bot's message that will be posted -
emoji
: The emoji to use for the bot. You may need to create a JIRA emoji for the current one to work, else replace w/ your favorite slack emoji -
link_separator
: The text to use to separate links in the response.
TODO
- Deeper integration w/ the JIRA API
- Optionally restrict to certain config'd channels
- bot.js expandInfo conflicts with "+" providing feature or that feature is not done yet
- Possible Issue: Whenever code compiled and server restarted, it runs parsing for the last posted message again, even though it might have been processed already in the previous run.
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].