Tutorial: Creación de una función para integrarla con Azure Logic Apps

Azure Functions se integra con Azure Logic Apps en el diseñador de Logic Apps. Esta integración permite usar la capacidad de proceso de Azure Functions en las orquestaciones con otros servicios tanto de Azure como de terceros.

En este tutorial se muestra cómo crear un flujo de trabajo para analizar la actividad de Twitter. A medida que se evalúan los tweets, el flujo de trabajo envía notificaciones cuando se detectan opiniones positivas.

En este tutorial, aprenderá a:

  • Creación de un recurso de API de servicios de Azure AI.
  • Crear una función que clasifica las opiniones de tweet.
  • Crear una aplicación de lógica que se conecta a Twitter.
  • Agregar detección de opiniones a la aplicación lógica.
  • Conectar la aplicación lógica a la función.
  • Enviar un correo electrónico en función de la respuesta de la función.

Prerrequisitos

  • Una cuenta de Twitter activa.
  • Una cuenta de Outlook.com (para enviar las notificaciones).

Nota

Si quiere usar el conector de Gmail, solo las cuentas empresariales de G-Suite pueden usar este conector sin restricciones en las aplicaciones lógicas. Si tiene una cuenta de consumidor de Gmail, puede usar el conector de Gmail solo con aplicaciones y servicios específicos aprobados por Google, o puede crear una aplicación cliente de Google para usarla en la autenticación con el conector de Gmail.

Para más información, consulte Directivas de privacidad y seguridad de datos de los conectores de Google en Azure Logic Apps.

Creación de recursos de Text Analytics

Las API de servicios de Azure AI están disponibles en Azure como recursos individuales. Use API Text Analytics para detectar la opinión de los tweets que se han enviado.

  1. Inicie sesión en Azure Portal.

  2. Haga clic en Crear un recurso en la esquina superior izquierda de Azure Portal.

  3. En Categorías, seleccione IA y Machine Learning

  4. En Text Analytics, seleccione Crear.

  5. Escriba los siguientes valores en la pantalla Create Text Analytics (Crear Text Analytics).

    Configuración Value Observaciones
    Subscription El nombre de la suscripción de Azure
    Resource group Cree un grupo de recursos denominado tweet-sentiment-tutorial Más adelante, eliminará este grupo de recursos para quitar todos los recursos creados en este tutorial.
    Region Seleccione la región más cercana a la suya
    Nombre TweetSentimentApp
    Plan de tarifa Seleccione Free F0 (F0 gratis)
  6. Seleccione Revisar + crear.

  7. Seleccione Crear.

  8. Una vez finalizada la implementación, seleccione Ir al recurso.

Obtención de la configuración de Text Analytics

Con el recurso de Text Analytics, copiará varios valores y los reservará para usarlos más adelante.

  1. Seleccione Keys and Endpoint (Claves y punto de conexión).

  2. Copie la clave 1, para lo que debe hacer clic en el icono al final del cuadro de entrada.

  3. Pegue el valor en un editor de texto.

  4. Copie el punto de conexión, para lo que debe hacer clic en el icono al final del cuadro de entrada.

  5. Pegue el valor en un editor de texto.

Crear la aplicación de función

  1. En el cuadro de búsqueda superior, busque y seleccione Aplicación de funciones.

  2. Seleccione Crear.

  3. Escriba los siguientes valores:

    Configuración Valor sugerido Observaciones
    Subscription El nombre de la suscripción de Azure
    Resource group tweet-sentiment-tutorial Use el mismo nombre de grupo de recursos en todo este tutorial.
    Nombre de la aplicación de funciones TweetSentimentAPI + un sufijo único Los nombres de las aplicaciones de funciones son únicos globalmente. Los caracteres válidos son a-z (no distingue mayúsculas de minúsculas), 0-9 y -.
    Publicar Código
    Pila en tiempo de ejecución .NET El código de función proporcionado está en C#.
    Versión Seleccione el número de versión más reciente
    Region Seleccione la región más cercana a la suya
  4. Seleccione Revisar + crear.

  5. Seleccione Crear.

  6. Una vez finalizada la implementación, seleccione Ir al recurso.

Creación de una función desencadenada con HTTP

  1. En el menú de la izquierda de la ventana Funciones, seleccione Functions.

  2. Seleccione Agregar en el menú superior y escriba los valores siguientes.

    Configuración Value Observaciones
    Entorno de desarrollo Desarrollo en el portal
    Plantilla Desencadenador HTTP
    Nueva función TweetSentimentFunction Este es el nombre de la función.
    lista desplegable Function
  3. Seleccione el botón Agregar.

  4. Seleccione el botón Code + Test (Código y prueba).

  5. Pegue el siguiente código en la ventana del editor de código.

    #r "Newtonsoft.Json"
    
    using System;
    using System.Net;
    using Microsoft.AspNetCore.Mvc;
    using Microsoft.Extensions.Logging;
    using Microsoft.Extensions.Primitives;
    using Newtonsoft.Json;
    
    public static async Task<IActionResult> Run(HttpRequest req, ILogger log)
    {
    
        string requestBody = String.Empty;
        using (StreamReader streamReader =  new  StreamReader(req.Body))
        {
            requestBody = await streamReader.ReadToEndAsync();
        }
    
        dynamic score = JsonConvert.DeserializeObject(requestBody);
        string value = "Positive";
    
        if(score < .3)
        {
            value = "Negative";
        }
        else if (score < .6) 
        {
            value = "Neutral";
        }
    
        return requestBody != null
            ? (ActionResult)new OkObjectResult(value)
           : new BadRequestObjectResult("Pass a sentiment score in the request body.");
    }
    

    Se pasa una puntuación de opinión a la función, que devuelve un nombre de categoría para el valor.

  6. Seleccione el botón Guardar en la barra de herramientas para guardar los cambios.

    Nota

    Para probar la función, seleccione Test/Run (Probar o ejecutar) en el menú superior. En la pestaña Entrada, escriba el valor 0.9 en el cuadro de entrada Cuerpo y, después, seleccione Ejecutar. Compruebe que se devuelve el valor Positivo en el cuadro Contenido de respuesta HTTP de la sección Salida.

A continuación, cree una aplicación lógica que se integre con Azure Functions, Twitter y API de servicios de Azure AI.

Creación de una aplicación lógica

  1. En el cuadro de búsqueda superior, busque y seleccione Aplicaciones lógicas.

  2. Seleccione Agregar.

  3. Seleccione Consumo y escriba los valores siguientes.

    Configuración Valor sugerido
    Subscription El nombre de la suscripción de Azure
    Resource group tweet-sentiment-tutorial
    Nombre de la aplicación lógica TweetSentimentApp
    Region Seleccione la región más cercana, preferiblemente la misma que seleccionó en los pasos anteriores.

    Deje los valores predeterminados en los restantes valores.

  4. Seleccione Revisar + crear.

  5. Seleccione Crear.

  6. Una vez finalizada la implementación, seleccione Ir al recurso.

  7. Seleccione el botón Aplicación lógica en blanco.

    Botón Aplicación lógica en blanco

  8. Seleccione el botón Guardar en la barra de herramientas para guardar el progreso.

Ahora puede usar el diseñador de aplicaciones lógicas para agregar servicios y desencadenadores a la aplicación.

Conexión a Twitter

Cree una conexión a Twitter para que la aplicación pueda realizar sondeos para saber si hay nuevos tweets.

  1. Busque Twitter en el cuadro de búsqueda superior.

  2. Seleccione el icono Twitter.

  3. Seleccione el desencadenador Cuando se publica un tweet nuevo.

  4. Escriba los siguientes valores para configurar la conexión.

    Configuración Value
    Nombre de conexión MyTwitterConnection
    Tipo de autenticación Usar aplicación compartida predeterminada
  5. Seleccione Iniciar sesión.

  6. Siga las indicaciones de la ventana emergente para completar el inicio de sesión en Twitter.

  7. A continuación, escriba los siguientes valores en el cuadro Cuando se publica un tweet nuevo.

    Configuración Value
    Buscar texto #my-twitter-tutorial
    ¿Con qué frecuencia quiere comprobar elementos? 1 en el cuadro de texto y
    Hora en la lista desplegable. Puede especificar valores diferentes, pero asegúrese de revisar las limitaciones actuales del conector de Twitter.
  8. Seleccione el botón Guardar en la barra de herramientas para guardar el progreso.

A continuación, conéctese a Text Analytics para detectar la opinión de los tweets recopilados.

Adición de la detección de opiniones de Text Analytics

  1. Seleccione Nuevo paso.

  2. Busque Text Analytics en el cuadro de búsqueda.

  3. Seleccione el icono Text Analytics.

  4. Seleccione Detectar sentimiento y escriba los siguientes valores.

    Configuración Value
    Nombre de conexión TextAnalyticsConnection
    Clave de cuenta Pegue la clave de cuenta de Text Analytics que reservó anteriormente.
    Dirección URL del sitio Pegue el punto de conexión de Text Analytics que reservó anteriormente.
  5. Seleccione Crear.

  6. Haga clic dentro del cuadro Agregar nuevo parámetro y active la casilla situada junto a documentos, que aparece en el menú emergente.

  7. Haga clic en el cuadro de texto Id- 1 de documentos para abrir el elemento emergente de contenido dinámico.

  8. En el cuadro de búsqueda contenido dinámico, busque el identificador y haga clic en Id. de tweet.

  9. Haga clic en el cuadro de texto Text- 1 de documentos para abrir el elemento emergente de contenido dinámico.

  10. En el cuadro de búsqueda contenido dinámico, busque el texto y haga clic en Texto del tweet.

  11. En Elegir una acción, escriba Análisis de texto y, después, haga clic en la acción Detectar sentimiento.

  12. Seleccione el botón Guardar en la barra de herramientas para guardar el progreso.

El cuadro Detectar sentimiento debe ser similar al de la captura de pantalla siguiente.

Configuración de Detectar sentimiento

Conexión de la salida de opiniones con el punto de conexión de la función

  1. Seleccione Nuevo paso.

  2. Busque Azure Functions en el cuadro de búsqueda.

  3. Seleccione el icono de Azure Functions.

  4. Busque el nombre de la función en el cuadro de búsqueda. Si ha seguido las instrucciones anteriores, el nombre de la función comenzará por TweetSentimentAPI.

  5. Seleccione el icono de la función.

  6. Seleccione el elemento TweetSentimentFunction.

  7. Haga clic dentro del cuadro Cuerpo de la solicitud y seleccione el elemento puntuación de Detectar sentimiento en la ventana emergente.

  8. Seleccione el botón Guardar en la barra de herramientas para guardar el progreso.

Adición de un paso condicional

  1. Seleccione el botón Agregar una acción.

  2. Haga clic en el cuadro Control y busque y seleccione Control en la ventana emergente.

  3. Seleccione Condición.

  4. Haga clic dentro del cuadro Elegir un valor y seleccione el elemento Cuerpo de TweetSentimentFunction en la ventana emergente.

  5. Escriba Positivo en el cuadro Elegir un valor.

  6. Seleccione el botón Guardar en la barra de herramientas para guardar el progreso.

Agregar notificaciones por correo electrónico

  1. En el cuadro True, seleccione el botón Agregar una acción.

  2. Busque Office 365 Outlook en el cuadro de texto y selecciónelo.

  3. Busque send (enviar) y seleccione Send an email (Enviar un correo electrónico) en el cuadro de texto.

  4. Haga clic en el botón Sign in (Iniciar sesión).

  5. Siga las indicaciones de la ventana emergente para completar el inicio de sesión en Office 365 Outlook.

  6. Escriba su dirección de correo electrónico en el cuadro Para.

  7. Haga clic en el cuadro Asunto y, después, en el elemento Cuerpo de TweetSentimentFunction. Si el elemento Cuerpo no se muestra en la lista, haga clic en el vínculo Ver más para expandir la lista de opciones.

  8. Después del elemento Cuerpo en Asunto, escriba el texto Tweet from: (Tweet de:).

  9. Después del texto Tweet from: (Tweet de: ), vuelva a hacer clic en el cuadro y seleccione User name (Nombre de usuario) en la lista de opciones de Cuando se publica un tweet nuevo.

  10. Haga clic en el cuadro Cuerpo y seleccione Texto del tweet en la lista de opciones de Cuando se publica un tweet nuevo. Si el elemento Texto del tweet no se muestra en la lista, haga clic en el vínculo Ver más para expandir la lista de opciones.

  11. Seleccione el botón Guardar en la barra de herramientas para guardar el progreso.

El cuadro de correo electrónico debería ser como el de esta captura de pantalla.

Notificación de correo electrónico

Ejecución del flujo de trabajo

  1. Desde su cuenta de Twitter, publique un tweet con el siguiente texto: I'm enjoying #my-twitter-tutorial (Me gusta #my-twitter-tutorial).

  2. Vuelva al diseñador de aplicaciones lógicas y seleccione el botón Ejecutar.

  3. Busque en el correo electrónico un mensaje del flujo de trabajo.

Limpieza de recursos

Para limpiar todos los servicios y cuentas de Azure creados durante este tutorial, elimine el grupo de recursos.

  1. Busque Grupos de recursos en el cuadro de búsqueda superior.

  2. Seleccione tweet-sentiment-tutorial.

  3. Seleccione Eliminar grupo de recursos.

  4. Escriba tweet-sentiment-tutorial en el cuadro de texto.

  5. Seleccione el botón Eliminar.

Si lo desea, puede volver a su cuenta de Twitter y eliminar los tweets de prueba de la fuente.

Pasos siguientes