Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Slack integration #26

Open
davidje13 opened this issue May 7, 2022 · 0 comments
Open

Add Slack integration #26

davidje13 opened this issue May 7, 2022 · 0 comments
Labels
enhancement New feature or request

Comments

@davidje13
Copy link
Owner

Should be built on top of #19.

It can be desirable to have action items automatically shown in Slack, ideally with the ability to tick items from inside the message and have this propagate back to Refacto, and maybe even with @mentions for the tagged person (not clear how this would be indicated though). This could be posted when retros are archived, on a schedule, or in response to a Slack request (perhaps a mention or command)

Things to consider:

  • authentication flow: should be simple to configure for a particular retro, but different teams in the same slack organisation might want different retros syncing with different channels. Slack instance needs to trust Refacto (once?) then Refacto needs to have some way of knowing which retros are allowed to sync to which channels. Care must be taken to ensure retro data does not leak to unexpected places or become available without authentication.
  • level of interactivity: does it make sense for the bot to have available commands or respond to mentions? does self-managed scheduling make sense? (alternatively could be possible to use Slack scheduling to post a message which asks the bot to show a message (e.g. /remind #mychannel @refacto-bot what are our remaining actions? at 9:00 every weekday), but this might be more complex for users to understand)
  • key rotation and multiple instances: should the Slack access key be shared between all running instances? Having separate keys for each would hit limits on number of active keys at a time. Also if any scheduling is used, it would not be desirable for all instances to post duplicate messages.

Could use https://www.npmjs.com/package/@slack/bolt but this looks quite heavy and the necessary API seems simple enough that it probably doesn't warrant bringing in so much stuff.

Resources:

@davidje13 davidje13 added the enhancement New feature or request label May 7, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant