novuhq / novu

Open-Source Notification Platform. Embeddable Notification Center, E-mail, Push and Slack Integrations.
https://novu.co
Other
34.5k stars 3.52k forks source link

🚀 Feature: Slack personal multi channel support #5430

Open kallepronk opened 5 months ago

kallepronk commented 5 months ago

🔖 Feature description

Slackbot integrations can be done in two ways: Websockets and channel permissions. Websockets only allow one channel to be added at a time. But this doesn't work when a message needs to be send to a specific user. This feature should allow Novu to send a notification to a personal channel in slack, using either the channelID, or the subscribers email.

🎤 Why is this feature needed ?

Our system will send notifications to users who have a guest at the front of an office. They need to be send a personal message on slack. We want to use Novu because the system should be able to be hosted on location for security reasons. We will know the emails of all users, but not automatically their slack personal ID, therefore we need to be able to reach their personal channel via email.

✌️ How do you aim to achieve this?

The slack API has two endpoints that are relevant for this issue, the postmessage endpoint and the endpoint for getting a user by email. When only a email is given, the integration should first get the id of the user, then afterwards it should use that ID in the post message endpoint to actually send the message. The should be a new integration.

🔄️ Additional Information

We've tried implementing this ourselves first, but got stuck on the integration structure, this integration needs information that the websocket type doesn't give. We've also tried other services and found that Knock and courier both support this type of advanced slack integration

👀 Have you spent some time to check if this feature request has been raised before?

🏢 Have you read the Code of Conduct?

Are you willing to submit PR?

None

linear[bot] commented 5 months ago

NV-3677 🚀 Feature: Slack personal multi channel support

kallepronk commented 5 months ago

I would be willing to pick this up myself once we allocate time for it. However we will need some support to solve some of the issues that have stopped us before.

shashankdaima commented 4 months ago

Can I do it? Assign me this?