Experiencia de configuración del bot

La experiencia de configuración de bots permite a los usuarios configurar y volver a configurar la configuración de sus bots directamente en el canal o chat de grupo posterior a la instalación, lo que mejora la eficacia operativa desde el principio. Esta funcionalidad elimina la necesidad de intervenciones repetidas de los usuarios que anteriormente dificultaban la realización de beneficios puntuales de las aplicaciones. Los usuarios ahora pueden adaptar el bot a sus flujos de trabajo y preferencias específicos durante la instalación y volver a configurar la configuración según sea necesario para adaptarse a los requisitos cambiantes, lo que garantiza la relevancia y el valor continuos del bot.

Por ejemplo, considere la posibilidad de usar un bot que realice un seguimiento y comparta temas de noticias o supervise los repositorios de GitHub. Configurados inicialmente para alinearse con los flujos de trabajo de usuario, estos bots se pueden volver a configurar fácilmente para responder a nuevos temas o repositorios directamente desde el chat de grupo, simplificando la administración de contenido y la interacción sin salir del entorno de Teams. Esta experiencia de configuración flexible mejora significativamente la experiencia del usuario y la productividad mediante la integración de bots sin problemas en las operaciones diarias.

Este es un ejemplo en el que un usuario agrega el bot a un chat de grupo y, a continuación, lo configura para que se alinee con sus requisitos específicos. A continuación, el usuario vuelve a configurar el bot para cambiar el estado.

Configurar

El gráfico muestra el proceso de configuración de un bot en un canal de Teams.

Reconfigurar

Captura de pantalla que muestra la opción de configuración del bot en el área de redacción del mensaje.

Experiencia de configuración del bot de compilación

Nota:

La experiencia de configuración del bot solo se admite en el chat de canal o grupo.

Al compilar la experiencia de configuración del bot, debe asegurarse de que el usuario debe poder configurar un bot en la primera instalación y volver a configurarlo en cualquier momento.

Para compilar la experiencia de configuración del bot, siga estos pasos:

  1. Actualizar el manifiesto de la aplicación

  2. Configuración del bot

Actualizar el manifiesto de la aplicación

En el archivo de manifiesto de aplicación (anteriormente denominado manifiesto de aplicación de Teams), actualice la fetchTask propiedad en el objeto de la bots.configuration siguiente manera:

"bots": [
    {
      "botId": "${{AAD_APP_CLIENT_ID}}",
     "needsChannelSelector": false,
      "scopes": [
        "personal",
        "team",
        "groupChat"
      ],
      "configuration":{
        "groupChat":{
          "fetchTask": true
        },
        "team":{
          "fetchTask": true
        }
      },
      "isNotificationOnly": false
    }
  ],

Para obtener más información, consulte esquema de manifiesto de aplicación.

Configuración del bot

Cuando un usuario instala el bot en el chat de canal o grupo, la fetchTask propiedad del archivo de manifiesto de la aplicación inicia config/fetch o tal como config/submit se define en el teamsBot.js archivo.

Si establece la fetchTask propiedad en el manifiesto de la aplicación en:

  • false: el bot no captura un cuadro de diálogo ni una tarjeta adaptable. En su lugar, el bot debe proporcionar un cuadro de diálogo estático o una tarjeta que se use cuando se invoca el bot. Para obtener más información, vea diálogos.

  • true: el bot inicia o config/fetch tal como config/submit se define. Cuando se invoca el bot, puede devolver una tarjeta adaptable o un cuadro de diálogo en función del contexto proporcionado en channelData y userdata.

En la tabla siguiente se muestra el tipo de respuesta asociado a las solicitudes de invocación:

Invocación de la solicitud Tipo de respuesta
config/fetch Type: "continue" o Type = "auth"
config/submit Type: "continue" o Type: "message"
  • type: "continue": type: "continue" se usa para definir una continuación de un cuadro de diálogo o una tarjeta adaptable dentro de una configuración de bot. Cuando el tipo se establece en continue, indica que el bot espera una interacción adicional del usuario para continuar con el proceso de configuración.

    adaptiveCardForContinue es una función personalizada que devuelve el JSON de una tarjeta adaptable que se usará en diferentes fases del flujo de trabajo de un bot. Estas funciones se usan para devolver tarjetas adaptables para diferentes escenarios en función de la interacción del usuario con el bot.

    Cuando el usuario envía la configuración, se desencadena la config/submit invocación. Lee la entrada del usuario y devuelve una tarjeta adaptable diferente. También puede actualizar la configuración del bot para devolver un cuadro de diálogo.

    Referencia de código de ejemplo

    protected override Task<ConfigResponseBase>OnTeamsConfigFetchAsync(ITurnContext<IInvokeActivity> turnContext, JObject configData, CancellationToken cancellationToken)
    {
        ConfigResponseBase response = adaptiveCardForContinue();
        return Task.FromResult(response);
    }
    

  • type: "auth": también puede solicitar al usuario que se autentique como respuesta a la config/fetch solicitud. La type: "auth" configuración solicita al usuario que inicie sesión a través de una dirección URL especificada, que debe estar vinculada a una página de autenticación válida que se pueda abrir en un explorador. La autenticación es esencial para escenarios en los que el bot requiere que el usuario se autentique. Garantiza que la identidad del usuario se compruebe, mantenga la seguridad y las experiencias personalizadas dentro de la funcionalidad del bot.

    Nota:

    Solo type: "auth" se admite la autenticación de terceros. No se admite el inicio de sesión único (SSO). Para obtener más información sobre la autenticación de terceros, consulte Agregar autenticación.

    Referencia de código de ejemplo

    protected override Task<ConfigResponseBase>OnTeamsConfigFetchAsync(ITurnContext<IInvokeActivity> turnContext, JObject configData, CancellationToken cancellationToken)
    {
        ConfigResponseBase response = new ConfigResponse<BotConfigAuth> {
           Config = new BotConfigAuth {
              SuggestedActions = new SuggestedActions {
                 Actions = new List<CardAction> {
                    new CardAction {
                       type: "openUrl",
                       value: "https://example.com/auth",
                       title: "Sign in to this app"
                    }
                 }
              },
           Type = "auth"
        }
    };
    

  • type="message": cuando el tipo se establece en message, indica que el bot envía un mensaje simple al usuario, lo que indica el final de la interacción o proporciona información sin necesidad de más entradas.

    Referencia de código de ejemplo

    protected override Task<ConfigResponseBase> OnTeamsConfigSubmitAsync(ITurnContext<IInvokeActivity> turnContext, JObject configData, CancellationToken cancellationToken)
    {
        ConfigResponseBase response = new ConfigResponse<TaskModuleResponseBase>
        {
           Config = new TaskModuleMessageResponse
           {
              Type = "message",
              Value = "You have chosen to finish setting up bot"
           }
        };
        return Task.FromResult(response);
    }
    

Cuando un usuario vuelve a configurar el bot, la fetchTask propiedad del archivo de manifiesto de la aplicación se config/fetch inicia en la lógica del bot. El usuario puede volver a configurar la configuración del bot después de la instalación de dos maneras:

  • @mention el bot en el área de redacción del mensaje. Seleccione la opción Configuración que aparece encima del área de redacción del mensaje. Aparece un cuadro de diálogo, actualiza o cambia la configuración del bot en el cuadro de diálogo.

    Captura de pantalla que muestra la opción de configuración del bot en el área de redacción del mensaje.

  • Mantenga el puntero sobre el bot, aparecerá la tarjeta de perfil del bot. Para actualizar o cambiar la configuración del bot, seleccione el icono de configuración en la tarjeta de perfil del bot.

    Captura de pantalla que muestra la opción de configuración del bot en un chat de grupo de Teams.

Procedimientos recomendados

  • Si desea tener una configuración de nivel de canal individual del bot, asegúrese de realizar un seguimiento de la configuración según el canal. Los datos de configuración no se almacenan y la carga de invocación incluye el channelData suficiente.

  • Proporcione un cuadro de diálogo claro y descriptivo que pida al usuario que escriba la información necesaria para que el bot funcione correctamente, como una dirección URL, una ruta de acceso de área o un vínculo de panel.

  • Evite enviar varias notificaciones o solicitudes de configuración después de la instalación, ya que podría confundir a los usuarios.

Ejemplo de código

Ejemplo de nombre Descripción .NET Node.js Manifiesto
Aplicación de configuración de bots En este código de ejemplo se describe la configuración y reconfiguración de los bots en los tipos de chat en equipo y grupo con continue y message tipos de respuesta. View View Ver
Aplicación de configuración de bots con autenticación En este código de ejemplo se describe la configuración y reconfiguración de los bots en los tipos de chat en equipo y grupo con auth y message tipos de respuesta. View View View

Guía paso a paso

Siga la guía paso a paso para configurar el bot durante la instalación o después de la instalación desde el equipo o el chat de grupo donde está instalado el bot.

Vea también