Compartir a través de


Conectar un bot al correo electrónico

SE APLICA A: SDK v4

Puede configurar el bot para comunicarse con usuarios a través del correo electrónico de Microsoft 365. Cuando se configura un bot para acceder a una cuenta de correo electrónico, recibe un mensaje cuando llega un nuevo correo electrónico. Después, el bot puede usar el correo electrónico para responder. Por ejemplo, en respuesta al mensaje de correo electrónico de un usuario, el bot podría enviar una respuesta de correo electrónico con el mensaje "¡Hola! Le agradecemos su pedido. Comenzaremos a procesarlo inmediatamente".

El canal de correo electrónico solo funciona actualmente con Office 365. Otros servicios de correo electrónico no se admiten actualmente.

Advertencia

  • Por motivos de seguridad, Exchange Online deshabilitará la autenticación básica el 1 de octubre de 2022. El canal de correo electrónico ahora admite el nuevo modelo de autenticación moderna de Exchange Online. Los bots que usan el modelo de autenticación básica experimentarán errores después del cambio de octubre de 2022; o anterior si el administrador de inquilinos deshabilita la autenticación básica antes de esa fecha. Para más información, consulte Autenticación básica y Exchange Online - Actualización de septiembre 2021.
  • Es una infracción del Código de conducta de Bot Framework crear "spambots", lo que incluye bots que envían correo masivo no deseado ni solicitado.

Requisitos previos

Nota:

No use sus propias cuentas de correo electrónico personales con bots, ya que todos los mensajes enviados a esa cuenta de correo electrónico se reenviarán al bot. Como consecuencia, el bot puede enviar una respuesta al remitente de manera inadecuada. Por este motivo, los bots solo deben usar cuentas de correo electrónico de M365 dedicadas.

Configuración del correo electrónico para usar la autenticación moderna

  1. Abra Azure Portal.

  2. Abra la hoja de recursos del bot de Azure para el bot.

  3. En el panel izquierdo, seleccione Canales.

  4. Seleccione Correo electrónico para abrir la hoja Configurar correo electrónico.

    Configure email settings

    1. Establezca Tipo de autenticación en Autenticación moderna (OAUTH).

    2. En Dirección de correo electrónico, introduzca la cuenta de correo electrónico dedicada de Office 365 para el bot.

    3. Seleccione Autorizar.

      1. Cuando se le solicite, inicie sesión en la cuenta de correo electrónico y conceda permisos de lectura y escritura y envío al bot.

      2. Si se ejecuta correctamente, se abre una página con un código de validación. Copie el código de validación.

        Interaction with validation code

    4. En Código de autenticación, introduzca el código de validación que acaba de copiar.

    5. Haga clic en Aplicar para completar la configuración de correo electrónico.

Configure el correo electrónico para utilizar la autenticación básica

Nota:

  • No se admite la autenticación federada con un proveedor que reemplace aMicrosoft Entra ID.
  • Por motivos de seguridad, el uso de la autenticación básica en Exchange Online se deshabilitó el 1 de octubre de 2022. Debe migrar todos los bots para usar la autenticación moderna antes de la fecha límite.
  • Si usa Microsoft Exchange Server, en primer lugar, asegúrese de que ha habilitado la Detección automática antes de configurar el correo electrónico para utilizar autenticación básica.
  • Si usa una cuenta de Office 365 con MFA habilitado, asegúrese de deshabilitar MFA para la cuenta especificada en primer lugar y, después, puede configurar la cuenta para el canal de correo electrónico. De lo contrario, se producirá un error en la conexión.
  1. Abra Azure Portal.

  2. Abra la hoja de recursos del bot de Azure para el bot.

  3. En el panel izquierdo, seleccione Canales (versión preliminar) para abrir la hoja Canales.

  4. Seleccione Correo electrónico para abrir la hoja Configurar correo electrónico.

    Enter email credentials

    1. Establezca Tipo de autenticación en Autenticación básica (deshabilitación a partir de octubre de 2022).
    2. En Dirección de correo electrónico, introduzca la cuenta de correo electrónico dedicada de Office 365 para el bot.
    3. En el cuadro Contraseña, escriba la contraseña para la cuenta de correo electrónico.
    4. Haga clic en Aplicar para completar la configuración de correo electrónico.

Personalizar correos electrónicos

El canal de correo electrónico admite el envío de valores personalizados para crear correos electrónicos personalizados más avanzados mediante la propiedad channelData de la actividad. El fragmento siguiente muestra un ejemplo del channelData para un mensaje de correo electrónico personalizado entrante, desde el bot al usuario.

{
    "type": "ActivityTypes.Message",
    "locale": "en-Us",
    "channelID": "email",
    "fromName": { "id": "mybot@mydomain.com", "name": "My bot"},
    "recipientName": { "id": "joe@otherdomain.com", "name": "Joe Doe"},
    "conversation": { "id": "123123123123", "topic": "awesome chat" },
    "channelData":
    {
        "htmlBody": "<html><body style = \"font-family: Calibri; font-size: 11pt;\" >This is more than awesome.</body></html>",
        "importance": "high",
        "ccRecipients": "Yasemin@adatum.com;Temel@adventure-works.com",
    }
}

Para obtener más información sobre la propiedad channelData de la actividad, consulte Crear un mensaje de correo electrónico personalizado.

Solución de problemas

Para ver los errores que pueden producirse durante el procesamiento del consentimiento de una aplicación, consulte Descripción de las experiencias de consentimiento de la aplicación de Id. de Microsoft Entra y Error inesperado al realizar el consentimiento en una aplicación.

Si el bot no devuelve un código de estado 200 OK HTTP en de 15 segundos en respuesta a un mensaje de correo electrónico entrante, el canal de correo electrónico intentará reenviar el mensaje y el bot podría recibir la misma actividad de mensaje de correo electrónico varias veces. Para más información, consulte la sección Detalles HTTP en Funcionamiento de los bots y en el artículo Solución de problemas de tiempo de espera.

Recursos adicionales