¿Cómo crear una aplicación para Microsoft Teams?
Crear y distribuir una aplicación creada en la plataforma de Microsoft Teams implica decidir qué crear, crear los servicios web, crear un paquete de aplicación y distribuir dicho paquete a sus usuarios finales meta. Dependerá de los administradores de la organización decidir quién puede acceder a la aplicación e instalarla, y dependerá de los usuarios instalar la aplicación en cualquier contexto particular. Echemos un vistazo a cada uno de esos pasos con más detalle.
Diseño de la aplicación
El paso más importante a la hora de crear una aplicación con éxito en Microsoft Teams consiste en elegir la combinación adecuada de puntos de extensibilidad y elementos de la interfaz de usuario para aprovecharlos. Debería dedicar tiempo a entender el problema que trata de resolver con la aplicación y asignar su solución de las diferentes maneras en las que los usuarios pueden interactuar con su aplicación en el cliente de Microsoft Teams. ¡No subestime la importancia del contexto y del ámbito! Un bot de conversación que funcione bien en un chat individual puede que no funcione como parte de un chat de grupo o una conversación de canal.
Aquí tiene un resumen de las que tiene disponibles, y algunos escenarios para los cuales son adecuadas. Puede realizar muchas tareas de más de una manera; elegir la herramienta adecuada para el trabajo mejorará la experiencia del usuario.
- Extensiones de mensajería: comandos de búsqueda son útiles para permitir a los usuarios buscar un sistema externo y a continuación compartir los resultados de la búsqueda en Teams. Con tarjetas y acciones de tarjeta, puede dar formato enriquecido a los resultados de la búsqueda y permitir a los usuarios realizar acciones en el resultado sin dejar el cliente de Microsoft Teams.
- Extensiones de mensajería: comandos de acción son fantásticos para recopilar información sobre su usuario en un único lugar y a continuación enviar la información a sus servicios web. Sobresalen en escenarios en los que necesita crear un registro D de algún tipo o recopilar diferente información como parte de una única transacción.
- Pestañas: en grupos y canales proporcionan un lienzo compartido para que puedan colaborar varias personas. Debería agregar esto a su aplicación si tiene información o servicios que se pueda aplicar a un grupo de personas. Tenga en cuenta que todas las personas trabajan en el mismo lienzo, por lo que su página no debería tener estado y debería operar como una aplicación de página única.
- Pestaña: en aplicaciones personales permiten disfrutar de una experiencia personal similar a la web. Su mejor uso suele ser en escenarios de centro, "elementos asignados a mí" o "cosas que he creado". Asimismo, pueden ser útiles para contenido estático como ayuda o páginas de información.
- Bots de conversación: en grupos y canales ayudan a agregar información adicional a una conversación que resulta útil para todas las personas involucradas (o al menos, para la mayoría). Se pueden usar para agregar de manera proactiva información relevante a la conversación, o para responder a solicitudes de usuario (por ejemplo: "Hola, bot, crea un sondeo sobre dónde deberíamos ir a comer"). Normalmente no se deberían usar para conversación de varios turnos; en su lugar, use un módulo de tarea para recopilar la información o mover la conversación a un chat individual, a continuación inserte los resultados de nuevo en la conversación original.
- Bots de conversación: en aplicaciones personales pueden permitir cargas de trabajo enormente diversas. Los bots de Preguntas y respuestas, los que inician flujos de trabajo en otros sistemas, los que cuentan chistes y los que toman notas son solo algunos ejemplos. Recuerde considerar si una interfaz basada en conversaciones es la mejor forma de presentar las funcionalidades de su organización.
- Los webhooks y los conectores son útiles para permitir a los usuarios suscribir un canal a mensajes de notificación desde un sistema externo.
- Las aplicaciones de reuniones permiten la colaboración, la asociación, la comunicación informada y los comentarios compartidos. La aplicación de reunión puede ofrecer una experiencia de usuario para cada fase del ciclo de vida de la reunión. El ciclo de vida de la reunión incluye experiencias de la aplicación previas a la reunión, en la reunión y posteriores a la reunión, según el estado del asistente. En este módulo, aprenderás a crear aplicaciones personalizadas que se usarán en reuniones de Microsoft Teams.
Las mejoras aplicaciones suelen aprovechar más de un punto de extensión. Por ejemplo, digamos que su organización quiere permitir a las personas enviar sugerencias de mejoras. Podría crear una aplicación con un comando de búsqueda de extensión de mensajería para buscar y compartir sugerencias ya existentes, agregar un comando de acción para permitir a los usuarios crear y actualizar sugerencias, una pestaña de canal para que un equipo pueda ver todas las sugerencias que les han asignado y una pestaña personal para que el usuario pueda ver todas las sugerencias que ha enviado en el pasado. Agregue un bot de conversación con tecnología del procesamiento de lenguaje y con aprendizaje automático que permita a los usuarios realizar consultas complejas de las sugerencias y tendrá una aplicación de Teams totalmente destacada e integrada.
Preparar el entorno de desarrollo
Como mínimo, necesitará acceso a una organización de Microsoft 365 con la carga de aplicaciones personalizadas habilitada. Si no es así, puede obtener una organización de desarrollo si se registra en el Programa de desarrolladores de Microsoft 365. También necesitará una manera de implementar y alojar sus servicios web. Para el desarrollo local, puede usar un servicio de túnel como ngrok, pero para la producción se recomienda implementar los servicios, probablemente en un proveedor de servicios en la nube como Azure. Puede usar infraestructura en el entorno local para alojar sus servicios web, pero deben ser accesibles por el público (es decir, no pueden estar detrás de un firewall).
Seleccione el entorno de desarrollo
Los desarrolladores tienen varias opciones a la hora de crear aplicaciones de Microsoft Teams.
El Generador de Yeoman para Microsoft Teams basado en la comunidad (también conocido como: "yo teams") aplica scaffolding a un proyecto una vez que el desarrollador ha respondido unas pocas preguntas sobre el tipo de aplicación de Microsoft Teams que está creando. Puede obtener más información sobre el Generador Yeoman para Microsoft Teams aquí: Crear su primera aplicación de Microsoft Teams.
El kit de herramientas de Microsoft Teams le permite crear aplicaciones personalizadas de Teams directamente desde el entorno de Visual Studio Code. El kit de herramientas le orienta en el proceso y le ofrece todo lo que necesita para crear, depurar e iniciar su aplicación de Teams. Puede obtener más información sobre el kit de herramientas de Microsoft Teams para Visual Studio Code aquí: Crear aplicaciones con el kit de herramientas de Microsoft Teams y Visual Studio
Crear servicios web
Una vez que haya decidido cómo van a interactuar los usuarios con su aplicación, será el momento de crear los servicios web para sustentar la aplicación. En función de lo que esté creando, Teams ofrece varios SDK, plantillas, muestras de código y generadores para ayudarle a empezar, incluido:
- SDK de Bot Framework para extensiones de mensajería y bots de conversación
- SDK de cliente de JavaScript de Teams para pestañas y otras páginas de contenido
- Un generador Yeoman para crear aplicaciones en Node.js
- Un conjunto de controles de código abierto para sus páginas de contenido web, interfaz de usuario de Fluent
- Plantillas de aplicaciones listas para producción
Para consultar la lista completa de herramientas y muestras disponibles para ayudarle a empezar, vea la documentación completa.
Recuerde que tendrá que alojar sus servicios web de manera que sean accesibles para el público desde internet (normalmente en un proveedor de servicios en la nube como Azure) y que proporcionen su contenido sobre HTTPS.
Crear el paquete de aplicación
Para poner en marcha los servicios web, tendrá que crear un paquete de aplicación que se pueda distribuir e instalar en Microsoft Teams. El paquete de aplicación contiene dos iconos y un archivo de manifiesto de JSON que describe los metadatos de su aplicación, los puntos de extensión que su aplicación usa y punteros hacia los servicios en los que se basan los puntos de extensión.
Al crear el paquete de aplicación puede elegir entre crearlo manualmente o usar App Studio, una aplicación de Teams que le ayuda a crear aplicaciones de Teams. App Studio le guiará durante la creación del manifiesto de la aplicación y puede ayudarle a registrar su bot con Bot Framework. Además, contiene un diseñador de tarjeta para ayudarle a crear de manera visual tarjetas y acciones de tarjeta y para enviarse ejemplos a sí mismo en Teams.
Distribuir la aplicación
Tiene tres opciones para distribuir su aplicación personalizada de Microsoft Teams, en función de su público meta.
- Compartir directamente el paquete de aplicación. Puede elegir compartir el paquete de aplicación directamente con los usuarios. Esta opción resulta útil si su aplicación se dirige a un público limitado (es decir, un par de equipos o individuos), así como durante el desarrollo y el periodo de prueba de la aplicación.
- Publicar la aplicación en el catálogo de aplicaciones de la organización. Si su aplicación se aplica a una organización específica (o si ha personalizado la aplicación para cubrir las necesidades específicas de una organización), un administrador de inquilinos puede carga la aplicación al catálogo de aplicaciones de la organización. De este modo, la aplicación estará disponible para que la instale cualquier persona de la organización (pero no se instala automáticamente).
- Publicar la aplicación en la tienda de aplicaciones públicas. Si su aplicación está concebida para todos los usuarios de Teams en cualquier lugar, puede enviar la aplicación para que se publique en la tienda de aplicaciones públicas. Tendrá que pasar por un proceso riguroso de revisión, así que asegúrese de haber cuidado todos los detalles.
A la hora de distribuir la aplicación, necesita tener en cuenta no solo el público al que quiere llegar, sino también las directivas de TI en vigor en la organización con la que quiera compartir la aplicación. Cada organización controla por completo qué aplicaciones se cargarán en el catálogo de aplicaciones de la organización y qué aplicaciones estarán disponibles para su instalación desde la tienda de aplicaciones.
Instalar aplicaciones.
Instalar aplicaciones en Microsoft Teams es específico del contexto. Instalar la parte de aplicación personal de la aplicación (es decir, aspectos relacionados con un usuario individual) no instala la aplicación en ningún equipo particular, y viceversa. Instalar la aplicación en un equipo particular no instala la aplicación en otros equipos. Esto quiere decir que nunca debería dar por hecho que su aplicación está instalada en todos los contextos posibles, ya que probablemente no lo esté. Los administradores de TI de las organizaciones controlar por completo quién puede instalar qué aplicaciones y en qué contexto, así que no debería dar por sentado que el usuario con el que está interactuando la aplicación en un momento dado cuenta con permiso para instalar la aplicación en un contexto diferente.
Para bien o para mal, instalar la aplicación directamente desde un paquete de aplicación tiende a estar enormemente restringido, así que, si para distribuir la aplicación decide compartir el paquete de aplicación directamente, se recomienda asegurarse de que los usuarios puedan instalarla.