SlideShare una empresa de Scribd logo
1 de 36
Descargar para leer sin conexión
All contents © MuleSoft, LLC
Mejora tu productividad
creando aplicaciones de Slack
Alexandra Martinez, Developer Advocate
alexandra.martinez@mulesoft.com
All contents © MuleSoft, LLC
Max Manager app
Creando el back-end
Preguntas
Agenda
Sobre mí
¿Qué es Slack?
Demo
All contents © MuleSoft, LLC
● Ingeniera en Software con 10+ años en tech
● De Monterrey 󰐏 viviendo en Toronto 󰎟
● Developer Advocate en MuleSoft
● Fundé ProstDev
● Lead en Women Who Code Monterrey
● Mentora en Olascoaga MX
● Creadora de contenido | Escritora | Gamer
Sobre mí
@DevAlexMartinez
Alexandra
Martinez
(a veces)
All contents © MuleSoft, LLC
¿Qué es Slack?
All contents © MuleSoft, LLC
App de mensajería para negocios o comunidades
Slack
● Reacciones
● Canales
● Mensajes multimedia
● Aplicaciones
● Integraciones
● ¡Y más!
All contents © MuleSoft, LLC
Demo
Veamos la aplicación en acción
All contents © MuleSoft, LLC
Max Manager app
Max the Mule
All contents © MuleSoft, LLC
Administrador de tareas en Slack
Max Manager app
Lista tus tareas desde la
página inicio de la
aplicación
All contents © MuleSoft, LLC
Administrador de tareas
3 formas de crear una
nueva tarea:
● Crear tarea desde
un mensaje
Max Manager app
All contents © MuleSoft, LLC
Administrador de tareas
Max Manager app
3 formas de crear una
nueva tarea:
● Crear tarea desde
un mensaje
All contents © MuleSoft, LLC
Administrador de tareas
3 formas de crear una
nueva tarea:
● Crear tarea desde
un mensaje
● Crear tarea desde
un Slash Command
(comando diagonal)
Max Manager app
1
2
3
All contents © MuleSoft, LLC
Administrador de tareas
Max Manager app
3 formas de crear una
nueva tarea:
● Crear tarea desde
un mensaje
● Crear tarea desde
un Slash Command
(comando diagonal)
● Crear tarea desde el
inicio de la app
1
2
All contents © MuleSoft, LLC
Administrador de tareas
Max Manager app
Chequea tus tareas
desde la página de
inicio de la aplicación
All contents © MuleSoft, LLC
Administrador de tareas
Max Manager app
1
2
El link al mensaje se
guarda cuando se crea
una tarea desde un
mensaje
(Slack no tiene una
forma para darle click al
link directamente aún,
se tiene que copiar el
link para buscar el
mensaje)
3
All contents © MuleSoft, LLC
¡Lo puedes personalizar a tus
necesidades!
All contents © MuleSoft, LLC
Creando el back-end
Usando herramientas low-code (MuleSoft)
All contents © MuleSoft, LLC
¿Cómo funcionan los triggers? (Slack)
Funcionalidad Acción/Comando Se envía un Request a: Resultado esperado
Abrir página de inicio app_home_opened /events
Muestra las tareas existentes con su estado
correspondiente (checked/unchecked) y link (si aplica)
Crear una nueva tarea desde
un mensaje
message_action /interactive Abre un modal
Crear una nueva tarea desde
un slash command
/createtask /slash
Crea una tarea con el texto que se envió en el
comando
Crear una nueva tarea desde
la página de inicio
block_actions /interactive Abre un modal
Modificar el estado de las
tareas desde inicio
block_actions /interactive Actualiza el estado de las tareas
Enviar tarea desde el modal view_submission /interactive Crea una tarea con el texto que se ingresó en el modal
All contents © MuleSoft, LLC
Usando herramientas low-code
Preparando el back-end con MuleSoft
Funcionalidad Acción/Comando Se envía un Request a:
Abrir página de inicio app_home_opened /events
Crear una nueva tarea desde
un mensaje
message_action /interactive
Crear una nueva tarea desde
un slash command
/createtask /slash
Crear una nueva tarea desde
la página de inicio
block_actions /interactive
Modificar el estado de las
tareas desde inicio
block_actions /interactive
Enviar tarea desde el modal view_submission /interactive
app_home_opened
All contents © MuleSoft, LLC
Usando herramientas low-code
Preparando el back-end con MuleSoft
Funcionalidad Acción/Comando Se envía un Request a:
Abrir página de inicio app_home_opened /events
Crear una nueva tarea desde
un mensaje
message_action /interactive
Crear una nueva tarea desde
un slash command
/createtask /slash
Crear una nueva tarea desde
la página de inicio
block_actions /interactive
Modificar el estado de las
tareas desde inicio
block_actions /interactive
Enviar tarea desde el modal view_submission /interactive
message_action
view_submission
block_actions
All contents © MuleSoft, LLC
Usando herramientas low-code
Preparando el back-end con MuleSoft
Funcionalidad Acción/Comando Se envía un Request a:
Abrir página de inicio app_home_opened /events
Crear una nueva tarea desde
un mensaje
message_action /interactive
Crear una nueva tarea desde
un slash command
/createtask /slash
Crear una nueva tarea desde
la página de inicio
block_actions /interactive
Modificar el estado de las
tareas desde inicio
block_actions /interactive
Enviar tarea desde el modal view_submission /interactive
/createtask
All contents © MuleSoft, LLC
● No todos los datos vienen en JSON.
● La acción/comando puede venir desde el campo type, event.type, o command.
● Puedes usar app.slack.com/block-kit-builder si quieres modificar el modal o la página de
inicio.
● Familiarízate con la API de Slack para poder hacer las llamadas adecuadas. En este caso,
usamos views.open y views.publish para manejar el modal.
● Puedes conectarte a la API de Slack usando OAuth o un token. En el demo usamos token.
● Necesitas enviar Responses específicas (dependiendo de la llamada que hagas a la API de
Slack o para responderle a un slash command) para avisarle a Slack que el procesamiento
funcionó correctamente.
● Necesitas conectar una base de datos para guardar las tareas y sus estados. En mi caso
usé algo llamado Object Store en MuleSoft.
● Necesitas preparar tu código con las notas anteriores y escoger una plataforma donde
puedas enviar tu aplicación de back-end a la nube (por ejemplo, NodeJS para la
aplicación y Heroku para la plataforma en la nube).
Si quieres crear tu propio código en otra tecnología aparte de MuleSoft
Notas importantes para tener en cuenta
La app de MuleSoft ya está preparada con todo esto. Es
solo para que tú lo puedas replicar en otras tecnologías
All contents © MuleSoft, LLC
Preguntas
Encuentra el repositorio aquí:
github.com/alexandramartinez/slack-maxmanager-app
All contents © MuleSoft, LLC
Mándame un correo 👇
alexandra.martinez@mulesoft.com
¿Tienes más preguntas?
¡No te preocupes!
Sígueme en ✨redes sociales✨
@DevAlexMartinez
¡Contáctame!
Alexandra
Martinez
All contents © MuleSoft, LLC
Thank you!
All contents © MuleSoft, LLC
Instrucciones completas
All contents © MuleSoft, LLC
1. Crea un nuevo workspace en slack.com o slack.com/intl/es-es (en español)
2. Click Pruébalo gratis
3. Introduce tu correo electrónico
4. Click Crear un espacio de trabajo
5. Introduce un nombre para tu workspace, ¡puede ser lo que quieras! Por ejemplo,
demo-tunombre
6. Continúa introduciendo la información requerida (no tiene que ser real)
7. Si tienes Slack instalado, puedes abrir tu workspace desde la aplicación, o puedes usarlo
desde el navegador (dale Cancelar para que no se abra la aplicación)
Crea tu workspace
Si eres nuevo a Slack
All contents © MuleSoft, LLC
1. Ve a api.slack.com/apps
2. Click Create an App y después From scratch
3. Nombra tu app Max Manager y selecciona tu workspace
4. Click Create App
5. Una vez que tengas tu app, vamos a ir configurando cada permiso por separado
Configura la app desde Slack
Max Manager app (Slack)
All contents © MuleSoft, LLC
1. Desde api.slack.com/apps, asegúrate que estás dentro de tu aplicación
2. En el menú de la izquierda, selecciona OAuth & Permissions
3. Da scroll hacia abajo hasta la sección de Scopes y selecciona Add an OAuth Scope bajo la
sección de Bot Token Scopes (la primera opción)
4. Selecciona commands
5. Si regresas al menú de Basic Information de la izquierda y abres la opción de Add
features and functionality, ahora vas a tener Bots y Permissions con un check verde
6. Selecciona Install your app y dale click a Install to Workspace
7. Dale click a Permitir
8. Desde OAuth & Permissions, copia el token que aparece en Bot User OAuth Token. Lo
usaremos más adelante
OAuth & Permissions e instalación
Max Manager app (Slack)
All contents © MuleSoft, LLC
1. Descarga e instala Anypoint Studio (mulesoft.com/platform/studio)
a. Es totalmente gratis y se queda siempre en tu computadora
2. Clona el repositorio: github.com/alexandramartinez/slack-maxmanager-app
3. Desde Anypoint Studio, selecciona File > Import > Anypoint Studio > Anypoint Studio
project from File System y dale click a Next.
4. Selecciona el repositorio que clonaste en el campo de Project Root y asegúrate de quitar
el check en Copy project into workspace para que no haga una copia del folder.
5. Dale click a Finish.
Anypoint Studio - el código
Si quieres usar otra tecnología aparte de MuleSoft, puedes
preparar tu código en otros lenguajes o tecnologías como
NodeJS.
¡Te puedes basar en el código demostrado para crear el tuyo!
Prepara el back-end
All contents © MuleSoft, LLC
1. Crea una cuenta de Anypoint Platform (anypoint.mulesoft.com)
a. Gratis 30 días pero puedes seguir creando cuentas usando el mismo correo, solo cambiando tu
usuario
b. Puedes transferir tu información de una cuenta a otra, sigue las instrucciones de este link en la
pregunta de “How do I prevent my Anypoint Platform trial account from expiring in 30 days?”
2. Desde Anypoint Studio (IDE), da click derecho al root folder (maxmanager)
3. Selecciona Anypoint Platform > Deploy to CloudHub
4. Agrega las credenciales de tu cuenta de Anypoint Platform
a. Si te pregunta sobre Multi-Factor Authentication, selecciona Not Now
b. Si te pide escoger un ambiente, selecciona Sandbox
Anypoint Platform - la nube
Prepara el back-end Si quieres usar otra tecnología aparte de MuleSoft, puedes
preparar tu código en otros lenguajes o tecnologías como NodeJS
y subirlo a una nube como Heroku.
En vez de usar el URL de CloudHub, usarías el de Heroku.
All contents © MuleSoft, LLC
Anypoint Platform - la nube (contd.)
Prepara el back-end
1. En la nueva ventana:
a. Cambia el nombre de tu aplicación hasta que aparezca una palomita verde al lado del nombre (por ejemplo,
maxmanager-tunombre)
b. Ve a Properties y crea una nueva propiedad con el nombre (campo de key) slack.token.bot
c. El valor de la propiedad es la que copiaste previamente de Bot User OAuth Token
d. dale click a Deploy Application
2. Una vez que esté en proceso, puedes cerrar la ventana
3. Desde Anypoint Platform (navegador), selecciona el menú de la izquierda y da click a Runtime Manager
a. Si te pide el ambiente, selecciona Sandbox
4. Tu nueva aplicación de maxmanager estará en proceso (Deploying) o Activa. Una vez que el status
aparezca verde, significa que tu aplicación se subió correctamente
5. Da click a tu aplicación para abrir los detalles y copia el URL que aparece en azul (por ejemplo,
maxmanager.us-e2.cloudhub.io). Este es el URL de tu aplicación en el back-end
Si quieres usar otra tecnología aparte de MuleSoft, puedes
preparar tu código en otros lenguajes o tecnologías como NodeJS
y subirlo a una nube como Heroku.
En vez de usar el URL de CloudHub, usarías el de Heroku.
All contents © MuleSoft, LLC
1. Desde api.slack.com/apps, asegúrate
que estás dentro de tu aplicación
2. En el menú de la izquierda, selecciona
Basic Information
3. Selecciona Add features and
functionality y después Bots
4. Activa las opciones de Home Tab y
Messages Tab
5. Selecciona el check de Allow users to
send Slash commands and messages
from the messages tab
Bots
Max Manager app (Slack)
All contents © MuleSoft, LLC
1. Regresa a Basic Information
2. Selecciona Add features and
functionality y después Interactive
Components
3. Selecciona Off para cambiar a On
4. Pega la URL que copiamos
previamente desde Anypoint
Platform y agrega /interactive al
final
5. Dale click a Create New Shortcut >
On messages > Next
6. Nombre: Crear tarea, descripción:
Crea una nueva tarea, Callback ID:
create_task
7. Da click a Create y selecciona Save
Changes en la parte de abajo
Interactivity
Max Manager app (Slack)
All contents © MuleSoft, LLC
1. Regresa a Basic Information
2. Selecciona Add features and
functionality y después Slash
Commands
3. Dale click a Create New Command
4. Command: /createtask
5. Request URL: tu URL + /slash al final
6. Agrega una descripción y dale click a
Save
Slash Commands
Max Manager app (Slack)
All contents © MuleSoft, LLC
1. Regresa a Basic Information
2. Selecciona Add features and
functionality y después Event
Subscriptions
3. Selecciona Off para cambiar a On
4. Pega la URL que copiamos
previamente desde Anypoint
Platform y agrega /events al final
5. Selecciona Subscribe to bot events y
da click a Add Bot User Event
6. Agrega app_home_opened
7. Da click a Save Changes en la parte
de abajo
Event Subscriptions
Max Manager app (Slack)
All contents © MuleSoft, LLC
● Si tu aplicación de Anypoint Platform no aparece en verde, asegúrate de haber
agregado la propiedad slack.token.bot desde Runtime Manager
● Si hiciste algún cambio a la aplicación de Slack desde api.slack.com y no se ve
reflejado desde tu workspace de Slack, puedes reinstalar la aplicación desde Basic
Information > Install your app > Reinstall to Workspace > Permitir
¿Tuviste problemas?
Troubleshooting

Más contenido relacionado

Similar a Mejora tu productividad creando aplicaciones de Slack

Manual de netbeans_7(2)(2)(2)
Manual de netbeans_7(2)(2)(2)Manual de netbeans_7(2)(2)(2)
Manual de netbeans_7(2)(2)(2)javier_ot99
 
Construcción de un siti web
Construcción de un siti webConstrucción de un siti web
Construcción de un siti webmascorroale
 
Manual edu bot
Manual edu botManual edu bot
Manual edu botABACO
 
Trabajo de NTICS II
Trabajo de NTICS IITrabajo de NTICS II
Trabajo de NTICS IImarco_acuna
 
Cisco packet tracer mobile
Cisco packet tracer mobileCisco packet tracer mobile
Cisco packet tracer mobilecalegomez
 
Globant development week / Progressive Web Apps
Globant development week / Progressive Web AppsGlobant development week / Progressive Web Apps
Globant development week / Progressive Web AppsGlobant
 
Herramientas para el desarrollo de aplicaciones SharePoint
Herramientas para el desarrollo de aplicaciones SharePointHerramientas para el desarrollo de aplicaciones SharePoint
Herramientas para el desarrollo de aplicaciones SharePointgoreorti
 
Programación web con PHP con Tecnología Bootstrap.
Programación web con PHP con Tecnología Bootstrap.Programación web con PHP con Tecnología Bootstrap.
Programación web con PHP con Tecnología Bootstrap.Jose Fernandez
 
Instrucciones para la instalacion y manejo de elgg
Instrucciones para la instalacion y manejo de elggInstrucciones para la instalacion y manejo de elgg
Instrucciones para la instalacion y manejo de elggAaron Zapata
 
Test Unitarios y E2E front y Back
Test Unitarios y E2E front y BackTest Unitarios y E2E front y Back
Test Unitarios y E2E front y BackEric Zeidan
 
Instalacion SQL Server 2012 Express
Instalacion SQL Server 2012 ExpressInstalacion SQL Server 2012 Express
Instalacion SQL Server 2012 Expresscarlos2293
 
Laboratorio WEB GXEv3
Laboratorio WEB GXEv3Laboratorio WEB GXEv3
Laboratorio WEB GXEv3GeneXus
 
Laboratorio WEB GXEv3
Laboratorio WEB GXEv3Laboratorio WEB GXEv3
Laboratorio WEB GXEv3GeneXus
 
Congreso visión 2012 - taller introducción app engine
Congreso visión 2012 - taller introducción app engineCongreso visión 2012 - taller introducción app engine
Congreso visión 2012 - taller introducción app engineNigeŗ Arce
 

Similar a Mejora tu productividad creando aplicaciones de Slack (20)

Manual de netbeans_7(2)(2)(2)
Manual de netbeans_7(2)(2)(2)Manual de netbeans_7(2)(2)(2)
Manual de netbeans_7(2)(2)(2)
 
Construcción de un siti web
Construcción de un siti webConstrucción de un siti web
Construcción de un siti web
 
Manual edu bot
Manual edu botManual edu bot
Manual edu bot
 
Trabajo de ntics ii
Trabajo de ntics iiTrabajo de ntics ii
Trabajo de ntics ii
 
Trabajo de NTICS II
Trabajo de NTICS IITrabajo de NTICS II
Trabajo de NTICS II
 
Practica adicional
Practica adicionalPractica adicional
Practica adicional
 
Cisco packet tracer mobile
Cisco packet tracer mobileCisco packet tracer mobile
Cisco packet tracer mobile
 
Globant development week / Progressive Web Apps
Globant development week / Progressive Web AppsGlobant development week / Progressive Web Apps
Globant development week / Progressive Web Apps
 
Herramientas para el desarrollo de aplicaciones SharePoint
Herramientas para el desarrollo de aplicaciones SharePointHerramientas para el desarrollo de aplicaciones SharePoint
Herramientas para el desarrollo de aplicaciones SharePoint
 
Programación web con PHP con Tecnología Bootstrap.
Programación web con PHP con Tecnología Bootstrap.Programación web con PHP con Tecnología Bootstrap.
Programación web con PHP con Tecnología Bootstrap.
 
Xamarin.Android & Microsoft Azure
Xamarin.Android & Microsoft AzureXamarin.Android & Microsoft Azure
Xamarin.Android & Microsoft Azure
 
Instrucciones para la instalacion y manejo de elgg
Instrucciones para la instalacion y manejo de elggInstrucciones para la instalacion y manejo de elgg
Instrucciones para la instalacion y manejo de elgg
 
Visual studio 2010
Visual studio 2010Visual studio 2010
Visual studio 2010
 
Test Unitarios y E2E front y Back
Test Unitarios y E2E front y BackTest Unitarios y E2E front y Back
Test Unitarios y E2E front y Back
 
Instalacion SQL Server 2012 Express
Instalacion SQL Server 2012 ExpressInstalacion SQL Server 2012 Express
Instalacion SQL Server 2012 Express
 
Laboratorio WEB GXEv3
Laboratorio WEB GXEv3Laboratorio WEB GXEv3
Laboratorio WEB GXEv3
 
Laboratorio WEB GXEv3
Laboratorio WEB GXEv3Laboratorio WEB GXEv3
Laboratorio WEB GXEv3
 
Sesión 1 - Introducción e Instalación de Dotproject
Sesión 1 - Introducción e Instalación de DotprojectSesión 1 - Introducción e Instalación de Dotproject
Sesión 1 - Introducción e Instalación de Dotproject
 
Congreso visión 2012 - taller introducción app engine
Congreso visión 2012 - taller introducción app engineCongreso visión 2012 - taller introducción app engine
Congreso visión 2012 - taller introducción app engine
 
Gwt
GwtGwt
Gwt
 

Más de Alexandra N. Martinez

Women Who Mule - Workshop series #2: Ghost
Women Who Mule - Workshop series #2: GhostWomen Who Mule - Workshop series #2: Ghost
Women Who Mule - Workshop series #2: GhostAlexandra N. Martinez
 
Women Who Mule - Workshop series: Create your own blog from scratch without a...
Women Who Mule - Workshop series: Create your own blog from scratch without a...Women Who Mule - Workshop series: Create your own blog from scratch without a...
Women Who Mule - Workshop series: Create your own blog from scratch without a...Alexandra N. Martinez
 
Toronto Virtual Meetup #12 - Testing Strategies and MUnit Test Recorder
Toronto Virtual Meetup #12 - Testing Strategies and MUnit Test RecorderToronto Virtual Meetup #12 - Testing Strategies and MUnit Test Recorder
Toronto Virtual Meetup #12 - Testing Strategies and MUnit Test RecorderAlexandra N. Martinez
 
Toronto Virtual Meetup #11 - Reviewing Complex DataWeave Transformation Use-case
Toronto Virtual Meetup #11 - Reviewing Complex DataWeave Transformation Use-caseToronto Virtual Meetup #11 - Reviewing Complex DataWeave Transformation Use-case
Toronto Virtual Meetup #11 - Reviewing Complex DataWeave Transformation Use-caseAlexandra N. Martinez
 
Cómo generar e implementar monitoreo para aplicaciones de Mule
Cómo generar e implementar monitoreo para aplicaciones de MuleCómo generar e implementar monitoreo para aplicaciones de Mule
Cómo generar e implementar monitoreo para aplicaciones de MuleAlexandra N. Martinez
 
reCONNECT 2021 May Meetup - Women Who Mule #4
reCONNECT 2021 May Meetup - Women Who Mule #4reCONNECT 2021 May Meetup - Women Who Mule #4
reCONNECT 2021 May Meetup - Women Who Mule #4Alexandra N. Martinez
 
Women Who Mule - April Meetup (Diane Kesler's Journey)
Women Who Mule - April Meetup (Diane Kesler's Journey)Women Who Mule - April Meetup (Diane Kesler's Journey)
Women Who Mule - April Meetup (Diane Kesler's Journey)Alexandra N. Martinez
 
Toronto Virtual Meetup #9 - KPIs and metrics accelerator
Toronto Virtual Meetup #9 - KPIs and metrics acceleratorToronto Virtual Meetup #9 - KPIs and metrics accelerator
Toronto Virtual Meetup #9 - KPIs and metrics acceleratorAlexandra N. Martinez
 
Reviewing a complex dataweave transformation use case v3
Reviewing a complex dataweave transformation use case v3Reviewing a complex dataweave transformation use case v3
Reviewing a complex dataweave transformation use case v3Alexandra N. Martinez
 
What is munit and how to create your first unit test
What is munit and how to create your first unit testWhat is munit and how to create your first unit test
What is munit and how to create your first unit testAlexandra N. Martinez
 
Toronto Virtual Meetup #8 - Tips for Reusability
Toronto Virtual Meetup #8 - Tips for ReusabilityToronto Virtual Meetup #8 - Tips for Reusability
Toronto Virtual Meetup #8 - Tips for ReusabilityAlexandra N. Martinez
 
Meetup en español #6 - MuleSoft para profesionales de Java (segunda edición)
Meetup en español #6 - MuleSoft para profesionales de Java (segunda edición)Meetup en español #6 - MuleSoft para profesionales de Java (segunda edición)
Meetup en español #6 - MuleSoft para profesionales de Java (segunda edición)Alexandra N. Martinez
 
Meetup en español #5 - Continuous Integration and Continuous Delivery (CI/CD)...
Meetup en español #5 - Continuous Integration and Continuous Delivery (CI/CD)...Meetup en español #5 - Continuous Integration and Continuous Delivery (CI/CD)...
Meetup en español #5 - Continuous Integration and Continuous Delivery (CI/CD)...Alexandra N. Martinez
 
Toronto Virtual Meetup #7 - Anypoint VPC, VPN and DLB Architecture
Toronto Virtual Meetup #7 - Anypoint VPC, VPN and DLB ArchitectureToronto Virtual Meetup #7 - Anypoint VPC, VPN and DLB Architecture
Toronto Virtual Meetup #7 - Anypoint VPC, VPN and DLB ArchitectureAlexandra N. Martinez
 
Reviewing a Complex DataWeave Transformation Use-case v2
Reviewing a Complex DataWeave Transformation Use-case v2Reviewing a Complex DataWeave Transformation Use-case v2
Reviewing a Complex DataWeave Transformation Use-case v2Alexandra N. Martinez
 
How to use Salesforce composite request connector in Mule
How to use Salesforce composite request connector in MuleHow to use Salesforce composite request connector in Mule
How to use Salesforce composite request connector in MuleAlexandra N. Martinez
 
Meetup en español #4 - MuleSoft para profesionales de Java
 Meetup en español #4 - MuleSoft para profesionales de Java Meetup en español #4 - MuleSoft para profesionales de Java
Meetup en español #4 - MuleSoft para profesionales de JavaAlexandra N. Martinez
 

Más de Alexandra N. Martinez (20)

Women Who Mule - Workshop series #2: Ghost
Women Who Mule - Workshop series #2: GhostWomen Who Mule - Workshop series #2: Ghost
Women Who Mule - Workshop series #2: Ghost
 
Women Who Mule - Workshop series: Create your own blog from scratch without a...
Women Who Mule - Workshop series: Create your own blog from scratch without a...Women Who Mule - Workshop series: Create your own blog from scratch without a...
Women Who Mule - Workshop series: Create your own blog from scratch without a...
 
Toronto Virtual Meetup #12 - Testing Strategies and MUnit Test Recorder
Toronto Virtual Meetup #12 - Testing Strategies and MUnit Test RecorderToronto Virtual Meetup #12 - Testing Strategies and MUnit Test Recorder
Toronto Virtual Meetup #12 - Testing Strategies and MUnit Test Recorder
 
Women Who Mule - June Meetup (EMEA)
Women Who Mule - June Meetup (EMEA)Women Who Mule - June Meetup (EMEA)
Women Who Mule - June Meetup (EMEA)
 
Toronto Virtual Meetup #11 - Reviewing Complex DataWeave Transformation Use-case
Toronto Virtual Meetup #11 - Reviewing Complex DataWeave Transformation Use-caseToronto Virtual Meetup #11 - Reviewing Complex DataWeave Transformation Use-case
Toronto Virtual Meetup #11 - Reviewing Complex DataWeave Transformation Use-case
 
Cómo generar e implementar monitoreo para aplicaciones de Mule
Cómo generar e implementar monitoreo para aplicaciones de MuleCómo generar e implementar monitoreo para aplicaciones de Mule
Cómo generar e implementar monitoreo para aplicaciones de Mule
 
reCONNECT 2021 May Meetup - Women Who Mule #4
reCONNECT 2021 May Meetup - Women Who Mule #4reCONNECT 2021 May Meetup - Women Who Mule #4
reCONNECT 2021 May Meetup - Women Who Mule #4
 
Women Who Mule - April Meetup (Diane Kesler's Journey)
Women Who Mule - April Meetup (Diane Kesler's Journey)Women Who Mule - April Meetup (Diane Kesler's Journey)
Women Who Mule - April Meetup (Diane Kesler's Journey)
 
Toronto Virtual Meetup #9 - KPIs and metrics accelerator
Toronto Virtual Meetup #9 - KPIs and metrics acceleratorToronto Virtual Meetup #9 - KPIs and metrics accelerator
Toronto Virtual Meetup #9 - KPIs and metrics accelerator
 
Reviewing a complex dataweave transformation use case v3
Reviewing a complex dataweave transformation use case v3Reviewing a complex dataweave transformation use case v3
Reviewing a complex dataweave transformation use case v3
 
Introduction to MuleSoft
Introduction to MuleSoftIntroduction to MuleSoft
Introduction to MuleSoft
 
What is munit and how to create your first unit test
What is munit and how to create your first unit testWhat is munit and how to create your first unit test
What is munit and how to create your first unit test
 
Truly Human part 1
Truly Human part 1Truly Human part 1
Truly Human part 1
 
Toronto Virtual Meetup #8 - Tips for Reusability
Toronto Virtual Meetup #8 - Tips for ReusabilityToronto Virtual Meetup #8 - Tips for Reusability
Toronto Virtual Meetup #8 - Tips for Reusability
 
Meetup en español #6 - MuleSoft para profesionales de Java (segunda edición)
Meetup en español #6 - MuleSoft para profesionales de Java (segunda edición)Meetup en español #6 - MuleSoft para profesionales de Java (segunda edición)
Meetup en español #6 - MuleSoft para profesionales de Java (segunda edición)
 
Meetup en español #5 - Continuous Integration and Continuous Delivery (CI/CD)...
Meetup en español #5 - Continuous Integration and Continuous Delivery (CI/CD)...Meetup en español #5 - Continuous Integration and Continuous Delivery (CI/CD)...
Meetup en español #5 - Continuous Integration and Continuous Delivery (CI/CD)...
 
Toronto Virtual Meetup #7 - Anypoint VPC, VPN and DLB Architecture
Toronto Virtual Meetup #7 - Anypoint VPC, VPN and DLB ArchitectureToronto Virtual Meetup #7 - Anypoint VPC, VPN and DLB Architecture
Toronto Virtual Meetup #7 - Anypoint VPC, VPN and DLB Architecture
 
Reviewing a Complex DataWeave Transformation Use-case v2
Reviewing a Complex DataWeave Transformation Use-case v2Reviewing a Complex DataWeave Transformation Use-case v2
Reviewing a Complex DataWeave Transformation Use-case v2
 
How to use Salesforce composite request connector in Mule
How to use Salesforce composite request connector in MuleHow to use Salesforce composite request connector in Mule
How to use Salesforce composite request connector in Mule
 
Meetup en español #4 - MuleSoft para profesionales de Java
 Meetup en español #4 - MuleSoft para profesionales de Java Meetup en español #4 - MuleSoft para profesionales de Java
Meetup en español #4 - MuleSoft para profesionales de Java
 

Último

Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 

Último (20)

Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 

Mejora tu productividad creando aplicaciones de Slack

  • 1. All contents © MuleSoft, LLC Mejora tu productividad creando aplicaciones de Slack Alexandra Martinez, Developer Advocate alexandra.martinez@mulesoft.com
  • 2. All contents © MuleSoft, LLC Max Manager app Creando el back-end Preguntas Agenda Sobre mí ¿Qué es Slack? Demo
  • 3. All contents © MuleSoft, LLC ● Ingeniera en Software con 10+ años en tech ● De Monterrey 󰐏 viviendo en Toronto 󰎟 ● Developer Advocate en MuleSoft ● Fundé ProstDev ● Lead en Women Who Code Monterrey ● Mentora en Olascoaga MX ● Creadora de contenido | Escritora | Gamer Sobre mí @DevAlexMartinez Alexandra Martinez (a veces)
  • 4. All contents © MuleSoft, LLC ¿Qué es Slack?
  • 5. All contents © MuleSoft, LLC App de mensajería para negocios o comunidades Slack ● Reacciones ● Canales ● Mensajes multimedia ● Aplicaciones ● Integraciones ● ¡Y más!
  • 6. All contents © MuleSoft, LLC Demo Veamos la aplicación en acción
  • 7. All contents © MuleSoft, LLC Max Manager app Max the Mule
  • 8. All contents © MuleSoft, LLC Administrador de tareas en Slack Max Manager app Lista tus tareas desde la página inicio de la aplicación
  • 9. All contents © MuleSoft, LLC Administrador de tareas 3 formas de crear una nueva tarea: ● Crear tarea desde un mensaje Max Manager app
  • 10. All contents © MuleSoft, LLC Administrador de tareas Max Manager app 3 formas de crear una nueva tarea: ● Crear tarea desde un mensaje
  • 11. All contents © MuleSoft, LLC Administrador de tareas 3 formas de crear una nueva tarea: ● Crear tarea desde un mensaje ● Crear tarea desde un Slash Command (comando diagonal) Max Manager app 1 2 3
  • 12. All contents © MuleSoft, LLC Administrador de tareas Max Manager app 3 formas de crear una nueva tarea: ● Crear tarea desde un mensaje ● Crear tarea desde un Slash Command (comando diagonal) ● Crear tarea desde el inicio de la app 1 2
  • 13. All contents © MuleSoft, LLC Administrador de tareas Max Manager app Chequea tus tareas desde la página de inicio de la aplicación
  • 14. All contents © MuleSoft, LLC Administrador de tareas Max Manager app 1 2 El link al mensaje se guarda cuando se crea una tarea desde un mensaje (Slack no tiene una forma para darle click al link directamente aún, se tiene que copiar el link para buscar el mensaje) 3
  • 15. All contents © MuleSoft, LLC ¡Lo puedes personalizar a tus necesidades!
  • 16. All contents © MuleSoft, LLC Creando el back-end Usando herramientas low-code (MuleSoft)
  • 17. All contents © MuleSoft, LLC ¿Cómo funcionan los triggers? (Slack) Funcionalidad Acción/Comando Se envía un Request a: Resultado esperado Abrir página de inicio app_home_opened /events Muestra las tareas existentes con su estado correspondiente (checked/unchecked) y link (si aplica) Crear una nueva tarea desde un mensaje message_action /interactive Abre un modal Crear una nueva tarea desde un slash command /createtask /slash Crea una tarea con el texto que se envió en el comando Crear una nueva tarea desde la página de inicio block_actions /interactive Abre un modal Modificar el estado de las tareas desde inicio block_actions /interactive Actualiza el estado de las tareas Enviar tarea desde el modal view_submission /interactive Crea una tarea con el texto que se ingresó en el modal
  • 18. All contents © MuleSoft, LLC Usando herramientas low-code Preparando el back-end con MuleSoft Funcionalidad Acción/Comando Se envía un Request a: Abrir página de inicio app_home_opened /events Crear una nueva tarea desde un mensaje message_action /interactive Crear una nueva tarea desde un slash command /createtask /slash Crear una nueva tarea desde la página de inicio block_actions /interactive Modificar el estado de las tareas desde inicio block_actions /interactive Enviar tarea desde el modal view_submission /interactive app_home_opened
  • 19. All contents © MuleSoft, LLC Usando herramientas low-code Preparando el back-end con MuleSoft Funcionalidad Acción/Comando Se envía un Request a: Abrir página de inicio app_home_opened /events Crear una nueva tarea desde un mensaje message_action /interactive Crear una nueva tarea desde un slash command /createtask /slash Crear una nueva tarea desde la página de inicio block_actions /interactive Modificar el estado de las tareas desde inicio block_actions /interactive Enviar tarea desde el modal view_submission /interactive message_action view_submission block_actions
  • 20. All contents © MuleSoft, LLC Usando herramientas low-code Preparando el back-end con MuleSoft Funcionalidad Acción/Comando Se envía un Request a: Abrir página de inicio app_home_opened /events Crear una nueva tarea desde un mensaje message_action /interactive Crear una nueva tarea desde un slash command /createtask /slash Crear una nueva tarea desde la página de inicio block_actions /interactive Modificar el estado de las tareas desde inicio block_actions /interactive Enviar tarea desde el modal view_submission /interactive /createtask
  • 21. All contents © MuleSoft, LLC ● No todos los datos vienen en JSON. ● La acción/comando puede venir desde el campo type, event.type, o command. ● Puedes usar app.slack.com/block-kit-builder si quieres modificar el modal o la página de inicio. ● Familiarízate con la API de Slack para poder hacer las llamadas adecuadas. En este caso, usamos views.open y views.publish para manejar el modal. ● Puedes conectarte a la API de Slack usando OAuth o un token. En el demo usamos token. ● Necesitas enviar Responses específicas (dependiendo de la llamada que hagas a la API de Slack o para responderle a un slash command) para avisarle a Slack que el procesamiento funcionó correctamente. ● Necesitas conectar una base de datos para guardar las tareas y sus estados. En mi caso usé algo llamado Object Store en MuleSoft. ● Necesitas preparar tu código con las notas anteriores y escoger una plataforma donde puedas enviar tu aplicación de back-end a la nube (por ejemplo, NodeJS para la aplicación y Heroku para la plataforma en la nube). Si quieres crear tu propio código en otra tecnología aparte de MuleSoft Notas importantes para tener en cuenta La app de MuleSoft ya está preparada con todo esto. Es solo para que tú lo puedas replicar en otras tecnologías
  • 22. All contents © MuleSoft, LLC Preguntas Encuentra el repositorio aquí: github.com/alexandramartinez/slack-maxmanager-app
  • 23. All contents © MuleSoft, LLC Mándame un correo 👇 alexandra.martinez@mulesoft.com ¿Tienes más preguntas? ¡No te preocupes! Sígueme en ✨redes sociales✨ @DevAlexMartinez ¡Contáctame! Alexandra Martinez
  • 24. All contents © MuleSoft, LLC Thank you!
  • 25. All contents © MuleSoft, LLC Instrucciones completas
  • 26. All contents © MuleSoft, LLC 1. Crea un nuevo workspace en slack.com o slack.com/intl/es-es (en español) 2. Click Pruébalo gratis 3. Introduce tu correo electrónico 4. Click Crear un espacio de trabajo 5. Introduce un nombre para tu workspace, ¡puede ser lo que quieras! Por ejemplo, demo-tunombre 6. Continúa introduciendo la información requerida (no tiene que ser real) 7. Si tienes Slack instalado, puedes abrir tu workspace desde la aplicación, o puedes usarlo desde el navegador (dale Cancelar para que no se abra la aplicación) Crea tu workspace Si eres nuevo a Slack
  • 27. All contents © MuleSoft, LLC 1. Ve a api.slack.com/apps 2. Click Create an App y después From scratch 3. Nombra tu app Max Manager y selecciona tu workspace 4. Click Create App 5. Una vez que tengas tu app, vamos a ir configurando cada permiso por separado Configura la app desde Slack Max Manager app (Slack)
  • 28. All contents © MuleSoft, LLC 1. Desde api.slack.com/apps, asegúrate que estás dentro de tu aplicación 2. En el menú de la izquierda, selecciona OAuth & Permissions 3. Da scroll hacia abajo hasta la sección de Scopes y selecciona Add an OAuth Scope bajo la sección de Bot Token Scopes (la primera opción) 4. Selecciona commands 5. Si regresas al menú de Basic Information de la izquierda y abres la opción de Add features and functionality, ahora vas a tener Bots y Permissions con un check verde 6. Selecciona Install your app y dale click a Install to Workspace 7. Dale click a Permitir 8. Desde OAuth & Permissions, copia el token que aparece en Bot User OAuth Token. Lo usaremos más adelante OAuth & Permissions e instalación Max Manager app (Slack)
  • 29. All contents © MuleSoft, LLC 1. Descarga e instala Anypoint Studio (mulesoft.com/platform/studio) a. Es totalmente gratis y se queda siempre en tu computadora 2. Clona el repositorio: github.com/alexandramartinez/slack-maxmanager-app 3. Desde Anypoint Studio, selecciona File > Import > Anypoint Studio > Anypoint Studio project from File System y dale click a Next. 4. Selecciona el repositorio que clonaste en el campo de Project Root y asegúrate de quitar el check en Copy project into workspace para que no haga una copia del folder. 5. Dale click a Finish. Anypoint Studio - el código Si quieres usar otra tecnología aparte de MuleSoft, puedes preparar tu código en otros lenguajes o tecnologías como NodeJS. ¡Te puedes basar en el código demostrado para crear el tuyo! Prepara el back-end
  • 30. All contents © MuleSoft, LLC 1. Crea una cuenta de Anypoint Platform (anypoint.mulesoft.com) a. Gratis 30 días pero puedes seguir creando cuentas usando el mismo correo, solo cambiando tu usuario b. Puedes transferir tu información de una cuenta a otra, sigue las instrucciones de este link en la pregunta de “How do I prevent my Anypoint Platform trial account from expiring in 30 days?” 2. Desde Anypoint Studio (IDE), da click derecho al root folder (maxmanager) 3. Selecciona Anypoint Platform > Deploy to CloudHub 4. Agrega las credenciales de tu cuenta de Anypoint Platform a. Si te pregunta sobre Multi-Factor Authentication, selecciona Not Now b. Si te pide escoger un ambiente, selecciona Sandbox Anypoint Platform - la nube Prepara el back-end Si quieres usar otra tecnología aparte de MuleSoft, puedes preparar tu código en otros lenguajes o tecnologías como NodeJS y subirlo a una nube como Heroku. En vez de usar el URL de CloudHub, usarías el de Heroku.
  • 31. All contents © MuleSoft, LLC Anypoint Platform - la nube (contd.) Prepara el back-end 1. En la nueva ventana: a. Cambia el nombre de tu aplicación hasta que aparezca una palomita verde al lado del nombre (por ejemplo, maxmanager-tunombre) b. Ve a Properties y crea una nueva propiedad con el nombre (campo de key) slack.token.bot c. El valor de la propiedad es la que copiaste previamente de Bot User OAuth Token d. dale click a Deploy Application 2. Una vez que esté en proceso, puedes cerrar la ventana 3. Desde Anypoint Platform (navegador), selecciona el menú de la izquierda y da click a Runtime Manager a. Si te pide el ambiente, selecciona Sandbox 4. Tu nueva aplicación de maxmanager estará en proceso (Deploying) o Activa. Una vez que el status aparezca verde, significa que tu aplicación se subió correctamente 5. Da click a tu aplicación para abrir los detalles y copia el URL que aparece en azul (por ejemplo, maxmanager.us-e2.cloudhub.io). Este es el URL de tu aplicación en el back-end Si quieres usar otra tecnología aparte de MuleSoft, puedes preparar tu código en otros lenguajes o tecnologías como NodeJS y subirlo a una nube como Heroku. En vez de usar el URL de CloudHub, usarías el de Heroku.
  • 32. All contents © MuleSoft, LLC 1. Desde api.slack.com/apps, asegúrate que estás dentro de tu aplicación 2. En el menú de la izquierda, selecciona Basic Information 3. Selecciona Add features and functionality y después Bots 4. Activa las opciones de Home Tab y Messages Tab 5. Selecciona el check de Allow users to send Slash commands and messages from the messages tab Bots Max Manager app (Slack)
  • 33. All contents © MuleSoft, LLC 1. Regresa a Basic Information 2. Selecciona Add features and functionality y después Interactive Components 3. Selecciona Off para cambiar a On 4. Pega la URL que copiamos previamente desde Anypoint Platform y agrega /interactive al final 5. Dale click a Create New Shortcut > On messages > Next 6. Nombre: Crear tarea, descripción: Crea una nueva tarea, Callback ID: create_task 7. Da click a Create y selecciona Save Changes en la parte de abajo Interactivity Max Manager app (Slack)
  • 34. All contents © MuleSoft, LLC 1. Regresa a Basic Information 2. Selecciona Add features and functionality y después Slash Commands 3. Dale click a Create New Command 4. Command: /createtask 5. Request URL: tu URL + /slash al final 6. Agrega una descripción y dale click a Save Slash Commands Max Manager app (Slack)
  • 35. All contents © MuleSoft, LLC 1. Regresa a Basic Information 2. Selecciona Add features and functionality y después Event Subscriptions 3. Selecciona Off para cambiar a On 4. Pega la URL que copiamos previamente desde Anypoint Platform y agrega /events al final 5. Selecciona Subscribe to bot events y da click a Add Bot User Event 6. Agrega app_home_opened 7. Da click a Save Changes en la parte de abajo Event Subscriptions Max Manager app (Slack)
  • 36. All contents © MuleSoft, LLC ● Si tu aplicación de Anypoint Platform no aparece en verde, asegúrate de haber agregado la propiedad slack.token.bot desde Runtime Manager ● Si hiciste algún cambio a la aplicación de Slack desde api.slack.com y no se ve reflejado desde tu workspace de Slack, puedes reinstalar la aplicación desde Basic Information > Install your app > Reinstall to Workspace > Permitir ¿Tuviste problemas? Troubleshooting