chaoss / grimoirelab

GrimoireLab: platform for software development analytics and insights
https://chaoss.github.io/grimoirelab/
GNU General Public License v3.0
465 stars 177 forks source link

Add support for Discord #357

Open jsmanrique opened 4 years ago

jsmanrique commented 4 years ago

Many development communities are using Discord as synchronous communication system as a modern version of IRC or as an Slack alternative.

Wouldn't it be nice to explore Discord API to learn how to extract information about server channels, participants, conversations, ... and to build panels equivalent to current Slack support in GrimoireLab?

Closing conditions [] Discord as GrimoireLab data source support evaluation

[] Perceval support to get data from conversations in channels in a server

[] Basic enrichment support to get data close to current Slack data (to reuse GrimoireLab Slack pannels if possible)

mabelbot commented 2 years ago

Hi, I have experience using the Discord API and how Discord servers and Slacks operate. I'm interested in contributing to this issue as much as I can. Thanks!

vchrombie commented 2 years ago

Hi @mabelbot, please feel free to pick it up. The aim of the issue is to add Discord as a new data source to GrimoireLab.

You can understand how the different components work together in GrimoireLab. You can check the Workflow and Scenarios too.

Ideally you should get started with adding Perceval backend for Discord. You can take inspiration from Slack, RocketChat, Zulip, etc. since all of the are messaging/chat platforms. So you can relate the backends and can have a better understanding of the working of perceval.

Later, you can start working on the ELK enrichers and Kibiter dashboards.

Please let us know if you need help. Thanks.