Saltar a contenido

Integración con Slack

Puede añadir una integración con Slack a su instalación de Drovio Server. Permite a los usuarios iniciar una llamada desde Slack, mediante un comando slash o con el botón de llamada, este último sujeto a la validación de Slack. Se presenta como un fichero JAR que usted añade a Drovio Server y luego configura. Tendrá que crear una aplicación Slack en Slack.

Crear una aplicación Slack

Vaya a api.slack.com/apps y haga clic en Create New App.

Crear una aplicación Slack

Escriba el nombre que prefiera, Drovio sirve, y seleccione un espacio de trabajo de desarrollo donde pueda probar la integración.

Nombrar la aplicación Slack

Comando slash

En el panel de navegación de la izquierda, haga clic en Slash Commands y luego en Create New Command:

  • Command: /drovio
  • Request URL: https://url-de-su-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: marcado
  • Haga clic en Save.

OAuth & Permissions

En el panel de navegación de la izquierda, haga clic en OAuth & Permissions:

  • Redirect URLs: añada https://url-de-su-drovio-server/slack/app/install.
  • Scopes: añada los siguientes ámbitos OAuth:
    • calls:write
    • commands
    • users:read
    • users:read.email

Event Subscriptions

En el panel de navegación de la izquierda, haga clic en Event Subscriptions:

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

    Note

    Slack debe verificar esta URL, así que siga primero las instrucciones de Configurar Drovio Server. Puede que también tenga que poner ignore_signature en true en la configuración de Drovio Server para que la URL se valide.

  • Subscribe to bot events: haga clic en Add Bot User Event:

    • app_uninstalled
    • tokens_revoked
  • Haga clic en Save Changes.

Socket Mode (opcional)

Para evitar exponer un punto de acceso público, puede recibir los eventos de Slack por WebSocket. En el panel de navegación de la izquierda, haga clic en Socket Mode:

  • Enable Socket Mode: On
  • Cree el token de aplicación y consérvelo.

La configuración de la aplicación Slack ha terminado. En el panel de la izquierda, haga clic en Basic Information: la información que ahí aparece le servirá para configurar Drovio Server.

Configurar Drovio Server

Antes de configurar el plugin de Slack, ejecute unas cuantas instrucciones SQL con psql. Lance todos los scripts con el usuario drovio:

psql drovio -U drovio -W < 01_1-0-0.sql
psql drovio -U drovio -W < 02_1-0-3.sql

Copie después drovio-slack.jar en la carpeta que prefiera de la máquina Drovio Server, por ejemplo /opt/drovio-slack, y luego:

sudo nano /etc/drovio-server/settings.conf

En la parte superior del fichero de configuración, modifique plugin_management:

"plugin_management": {
  "plugins": [
    {
      "classpath": "/opt/drovio-slack/drovio-slack.jar",
      "path": "com.drovio.server.slack",
      "ext": "java",
      "base_address": "drovio.server.slack"
    }
  ]
},

Añada después una nueva entrada al final del fichero, justo antes de la última }:

,
"slack": {
  "client_id": "XXXXXXXXXXX.XXXXXXXXXXX",
  "client_secret": "XXXXXXXXXXXXXXXXXXXXXXX",
  "signing_secret": "XXXXXXXXXXXXXXXXXXXXXXXX",
  "app_redirect_uri": "https://url-de-su-drovio-server/slack/app/install",
  "launch_uri": "https://url-de-su-drovio-server/launch",
  "join_uri": "https://url-de-su-drovio-server/join/app",
  "enable_admin_emails": false,
  "ignore_signature": false,
  "websocket": false,
  "app_socket_token": "xapp-xxxxxxxxxxxxxxxxxxx"
}
  • client_id, client_secret y signing_secret deben recoger los valores que aparecen en la página de configuración de la aplicación Slack, en Basic Information.
  • Adapte los URI a los de su Drovio Server.
  • enable_admin_emails envía un correo a la dirección definida en smtp.admin_email cuando un espacio de trabajo instala o desinstala la aplicación. Su valor predeterminado es false.
  • Si ha configurado la aplicación Slack en Socket Mode, ponga websocket en true y rellene app_socket_token con el token creado en ese momento.
  • Puede que tenga que poner ignore_signature en true e iniciar Drovio Server para poder validar la URL de Event Subscriptions en la configuración de la aplicación Slack, como se indica más arriba.

Una vez configurado todo, reinicie el servicio, abra Slack y vaya a su espacio de trabajo de desarrollo. Escriba /drovio help para empezar.

Por qué hace falta reiniciar aquí

La mayor parte de la configuración de Drovio Server se aplica en caliente, pero los plugins solo se cargan al arrancar. Cualquier modificación de plugin_management, incluida la de este plugin, no surte efecto hasta el siguiente reinicio.

Integración con las llamadas de Slack

El comando /drovio sin parámetros requiere la validación de Slack, ya que afecta a su funcionalidad de llamadas. También podrá definir Drovio como aplicación de llamadas predeterminada en Slack.

Póngase en contacto con nosotros para saber más.