Learn

Come interagire con le API di Slack

29 Maggio 2020 - 3 minuti di lettura

Slack (1) è una delle piattaforme di messaggistica più diffuse al mondo.
Oltre all’utilizzo per l’invio di messaggi da uomo a uomo ha numerose integrazioni con vari servizi di altre piattaforme tecnologiche.
Uno dei canali coni quali le piattaforme possono comunicare con Slack sono le sue API.

In questo articolo illustrerò i passaggi per attivare la funzione “Non disturbare” con la disattivazione delle notifiche per 24 ore per il vostro workspace tramite l’utilizzo delle API.

1. Creazione della app

Come primo passo è necessario creare un’applicazione che esponga le API di Slack collegata al nostro workspace. Avviare un browser e digitare l’indirizzo https://api.slack.com/apps dopodiché cliccare “Create an app”.

Indicare un nome per la nostra app e il workspace per la quale è destinata. Per l’esempio chiamo la app “ReceivingCommands” per un mio workspace “TestIntreMandelli”.

2. Abilitare l’utilizzo delle API per l’app e selezionare il token

Per abilitare l’utilizzo delle API, espandere la sezione “Add features and functionality” e selezionare “Permissions”

Ogni funzione richiamabile tramite API ha bisogno di un token e di privilegi che vengono abilitati nella sezione “Scopes”. Per il nostro caso specifico abbiamo bisogno che il token sia abilitato per lo scopo dnd:write che significa la possibilità di scrivere un comandi relativi al gruppo Do Not Disturb. Gli scope necessari per seguire i comando li trovate nell’help di ogni specifico comando.

Nella pagina OAuth & Permissions in cui ci troviamo, scorrere verso la sezione “Scopes” e cliccare il pulsante “Add an OAuth Scope” della sottosezione User Token Scopes . Tra la lista degli scope disponibili, digitare dnd e scegliere dnd:write. Dovreste venire notificati da un messaggio di corretta aggiunta del token.

3. Installazione della app nel workspace

A questo punto è possibile installare l’applicazione all’interno del nostro workspace. Scorrere ad inizio pagina e cliccare “Install App to Workspace”.

Comparirà una pagina con la richiesta di conferma per permettere all’applicazione di eseguire gli scope che abbiamo scelto.

Verrà così generato il token che dovrà essere utilizzato in tutte le comunicazioni con le API di Slack. Se aggiungiamo o eliminiamo scope sarà necessario reinstallare l’applicazione.

I comandi setSnooze e endDnd

A questo punto è possibile eseguire i comandi di dnd.setSnooze e dnd.endDnd che permettono rispettivamente di impostare un periodo in minuti in cui il nostro utente non riceverà notifiche di nuovi messaggi e lo stato del nostro utente riporterà l’indicazione che le notifiche sono state disattivate. Ad ogni comando Slack risponderà con un JSON riportante lo stato dell’operazione
eseguita.

Comando setSnooze

curl -X POST https://slack.com/api/dnd.setSnooze\token\=xoxp-1119373236102-1124726449957-...\&num_minutes\=1440

Feedback da Slack

{“ok”:true,"snooze_enabled":true,"snooze_endtime":1589993293,"snooze_remaining":86400}

Feedback per l’utente

Comando endDnd

curl -X POST https://slack.com/api/dnd.endDnd\?token\=xoxp-1119373236102-1124726449957-...

Feedback da Slack

{“ok”:true}

Feedback per l’utente

Conclusione

Tramite le API di Slack è possibile accedere a più di 100 metodi per l’interazione con il workspace. Con questi semplici passi potete esplorarle ed integrarle nel vostro sistema.

Articolo scritto da