Vai al contenuto

Integrazione Slack

Un'integrazione Slack può essere aggiunta alla vostra installazione di Drovio Server. Permette agli utenti di avviare una chiamata da Slack, tramite comando slash oppure dal pulsante di chiamata, quest'ultimo richiedendo una convalida da parte di Slack. Dovrete creare un'applicazione Slack presso Slack.

Creare un'applicazione Slack

Recatevi su api.slack.com/apps, poi fate clic su Create New App.

Creare un'applicazione Slack

Inserite il nome che preferite, Drovio va bene, e selezionate uno spazio di lavoro di sviluppo dove potrete testare l'integrazione.

Nominare l'applicazione Slack

La pagina dell'integrazione Slack nel pannello di amministrazione mostra i tre URL da fornire a Slack qui sotto, costruiti a partire dall'URL pubblico del vostro server.

Comando slash

Nel riquadro di navigazione di sinistra, fate clic su Slash Commands, poi su Create New Command:

  • Command: /drovio
  • Request URL: https://url-del-vostro-drovio-server/slack/app/command
  • Short Description: Pair remotely with Drovio (the app must be installed)
  • Usage Hint: [help, invite, add]
  • Escape channels, users, and links sent to your app: spuntato
  • Fate clic su Save.

OAuth & Permissions

Nel riquadro di navigazione di sinistra, fate clic su OAuth & Permissions:

  • Redirect URLs: aggiungete https://url-del-vostro-drovio-server/slack/app/install.
  • Scopes: aggiungete i seguenti ambiti OAuth:
    • calls:write
    • commands
    • users:read
    • users:read.email

Event Subscriptions

Nel riquadro di navigazione di sinistra, fate clic su Event Subscriptions:

  • Enable Events: On
  • Request URL: https://url-del-vostro-drovio-server/slack/app/event

    Note

    Slack verifica l'URL non appena viene inserito. Configurate l'integrazione prima: l'URL risponde una volta attivata l'integrazione con il suo signing secret.

  • Subscribe to bot events: fate clic su Add Bot User Event:

    • app_uninstalled
    • tokens_revoked
  • Fate clic su Save Changes.

Socket Mode (facoltativo)

Per evitare di esporre un punto di accesso pubblico, potete ricevere gli eventi da Slack tramite WebSocket. Nel riquadro di navigazione di sinistra, fate clic su Socket Mode:

  • Enable Socket Mode: On
  • Create il token a livello di applicazione (app-level token) e conservatelo.

La configurazione dell'applicazione Slack è terminata. Nel riquadro di sinistra, fate clic su Basic Information: le informazioni che vi si trovano vi serviranno a configurare l'integrazione.

Configurare l'integrazione

Nel pannello di amministrazione, aprite Integrations, poi Configure sulla scheda Slack.

Campo Da dove viene
Status Enabled o Disabled
Client ID Basic Information dell'applicazione Slack
Client secret Basic Information dell'applicazione Slack
Signing secret Basic Information dell'applicazione Slack
Connection Request URLs, oppure Socket Mode se l'avete attivato nell'applicazione Slack
App-level token Il token creato con Socket Mode se l'avete attivato nell'applicazione Slack, altrimenti vuoto
Call failures Avvisa gli amministratori via e-mail quando una chiamata Slack non riesce ad avviarsi, ad aggiornarsi o a terminare

La pagina mostra anche il Redirect URL, l'URL del comando slash e l'URL degli eventi da inserire nell'applicazione Slack. Ogni amministratore può rinunciare alle e-mail sulle chiamate non riuscite da Notifications, sotto A Slack call fails.

Il salvataggio ha effetto già dalla richiesta successiva, senza riavvio.

Passare lo stato a Disabled ferma le chiamate e i comandi provenienti da Slack, lasciando comunque accessibile la pagina per configurare l'integrazione.

Una volta configurato tutto, aprite Slack e recatevi nel vostro spazio di lavoro di sviluppo. Inserite /drovio help per cominciare.

Riferimento di configurazione

Ecco le chiavi dell'elemento slack di settings.conf, se preferite modificarlo direttamente. In un cluster, il pannello di amministrazione non può salvarle: ogni server legge il proprio file di configurazione, che va modificato su ciascuno di essi.

Chiave Predefinito Significato
enabled false Attiva l'integrazione
client_id Client ID dell'applicazione Slack
client_secret Client secret dell'applicazione Slack
signing_secret Signing secret dell'applicazione Slack
enable_admin_emails false Avvisa gli amministratori via e-mail quando una chiamata Slack non riesce
websocket false Riceve gli eventi e i comandi tramite Socket Mode
app_socket_token App-level token di Socket Mode se attivato, altrimenti vuoto
ignore_signature false Accetta le richieste che Slack non ha firmato. Solo per lo sviluppo, mai in produzione

Integrazione con le chiamate Slack

Il comando /drovio senza parametri richiede una convalida da parte di Slack, dato che tocca la loro funzionalità di chiamata. Potrete inoltre definire Drovio come applicazione di chiamata predefinita in Slack.