

Aviso de fin de soporte: el 7 de octubre de 2026, AWS suspenderemos el soporte para AWS IoT Greengrass Version 1. Después del 7 de octubre de 2026, ya no podrá acceder a los AWS IoT Greengrass V1 recursos. Para obtener más información, visita [Migrar desde AWS IoT Greengrass Version 1](https://docs.aws.amazon.com/greengrass/v2/developerguide/migrate-from-v1.html).

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Introducción a los conectores de Greengrass (consola)
<a name="connectors-console"></a>

Esta función está disponible para AWS IoT Greengrass Core v1.7 y versiones posteriores.

En este tutorial se muestra cómo utilizarla Consola de administración de AWS para trabajar con conectores.

Utilice conectores para acelerar el ciclo de vida de desarrollo. Los conectores son módulos precompilados y reutilizables que puede simplificar la interacción con los servicios, los protocolos y los recursos. Pueden ayudarle a implementar la lógica de negocio en los dispositivos de Greengrass con mayor rapidez. Para obtener más información, consulte [Integración con servicios y protocolos mediante conectores de Greengrass](connectors.md).

En este tutorial configurará e implementará el conector de [Notificaciones de Twilio](twilio-notifications-connector.md). El conector recibe la información del mensaje de Twilio como datos de entrada y, a continuación, desencadena un mensaje de texto de Twilio. El flujo de datos se muestra en el siguiente diagrama.

![\[Flujo de datos de la función de Lambda al conector de Notificaciones de Twilio a Twilio.\]](http://docs.aws.amazon.com/es_es/greengrass/v1/developerguide/images/connectors/twilio-solution.png)


Después de configurar el conector, debe crear una función de Lambda y una suscripción.
+ La función evalúa los datos simulados desde un sensor de temperatura. Publica condicionalmente la información del mensaje de Twilio a un tema de MQTT. Este es el tema al que se suscribe el conector.
+ La suscripción permite que la función se publique en el tema y que el conector reciba datos del tema.

El conector de Notificaciones de Twilio necesita un token de autenticación de Twilio para interactuar con la API de Twilio. El token es un tipo de texto secreto creado en un recurso grupal AWS Secrets Manager y al que se hace referencia desde él. Esto permite AWS IoT Greengrass crear una copia local del secreto en el núcleo de Greengrass, donde se cifra y se pone a disposición del conector. Para obtener más información, consulte [Despliega los secretos hasta la AWS IoT Greengrass médula](secrets.md).

El tutorial contiene los siguientes pasos generales:

1. [Crear un secreto en Secrets Manager](#connectors-console-create-secret)

1. [Agregar un recurso de secreto a un grupo](#connectors-console-create-resource)

1. [Agregar un conector al grupo](#connectors-console-create-connector)

1. [Creación de un paquete de implementación de la función de Lambda](#connectors-console-create-deployment-package)

1. [Crear una función de Lambda](#connectors-console-create-function)

1. [Agregar una función al grupo](#connectors-console-create-gg-function)

1. [Agregar suscripciones al grupo](#connectors-console-create-subscription)

1. [Implementar el grupo](#connectors-console-create-deployment)

1. [Pruebe la solución](#connectors-console-test-solution)

Completar el tutorial debería tomarle aproximadamente 20 minutos.

## Requisitos previos
<a name="connectors-console-prerequisites"></a>

Para completar este tutorial, se necesita lo siguiente:
+ Un grupo de Greengrass y un núcleo de Greengrass (v1.9.3 o posterior). Para obtener información acerca de cómo crear un núcleo y un grupo de Greengrass, consulte [Empezar con AWS IoT Greengrass](gg-gs.md). El tutorial de introducción también incluye pasos para instalar el software AWS IoT Greengrass Core.
+ Python 3.7 instalado en el dispositivo AWS IoT Greengrass principal.
+  AWS IoT Greengrass debe configurarse para admitir secretos locales, tal y como se describe en [los requisitos de confidencialidad](secrets.md#secrets-reqs).
**nota**  
Este requisito incluye permitir el acceso a sus secretos de Secret Manager. Si utiliza el rol de servicio predeterminado de Greengrass, Greengrass tiene permiso para obtener los valores de los secretos cuyos nombres empiecen por *greengrass-*.
+ Un SID de una cuenta de Twilio, un token de autenticación y un número de teléfono habilitado para Twilio. Después de crear un proyecto de Twilio, estos valores están disponibles en el panel del proyecto.
**nota**  
Puede utilizar una cuenta de prueba de Twilio. Si utiliza una cuenta de prueba, debe añadir números de teléfono de destinatarios que no sean de Twilio a una lista de números de teléfono verificados. Para obtener más información, consulte [Cómo trabajar con su cuenta de prueba gratuita de Twilio](https://www.twilio.com/docs/usage/tutorials/how-to-use-your-free-trial-account).

## Paso 1: Creación de un secreto de Secrets Manager
<a name="connectors-console-create-secret"></a>

En este paso, utilizas la AWS Secrets Manager consola para crear un secreto de tipo texto para tu token de autenticación de Twilio.

1. <a name="create-secret-step-signin"></a>Inicie sesión en la [consola de AWS Secrets Manager](https://console.aws.amazon.com/secretsmanager/).
**nota**  
Para obtener más información sobre este proceso, consulte [Paso 1: Crear y almacenar el secreto en AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/tutorials_basic.html) en la *Guía del usuario de AWS Secrets Manager *.

1. <a name="create-secret-step-create"></a>Elija **Almacenar un secreto nuevo**.

1. <a name="create-secret-step-othertype"></a>En **Seleccionar tipo de secreto**, elija **Otro tipo de secreto**.

1. En **Especifica los key/value pares que se van a almacenar para este secreto**, en la pestaña **Texto simple**, introduce tu token de autenticación de Twilio. Quite todo el formato JSON e introduzca solo el valor del token.

1. <a name="create-secret-step-encryption"></a>Mantenga **aws/secretsmanager** seleccionado para la clave de cifrado y, a continuación, seleccione **Siguiente**.
**nota**  
No se te cobrará nada AWS KMS si utilizas la clave AWS gestionada predeterminada que Secrets Manager crea en tu cuenta.

1. En **Secret name (Nombre del secreto)**, escriba **greengrass-TwilioAuthToken** y, a continuación, seleccione **Next (Siguiente)**.
**nota**  
De forma predeterminada, el rol de servicio Greengrass permite AWS IoT Greengrass obtener el valor de los secretos con nombres que comienzan por *greengrass* -. Para obtener más información, consulte [requisitos de secretos](secrets.md#secrets-reqs).

1. <a name="create-secret-step-rotation"></a>Este tutorial no requiere rotación, así que elija desactivar la rotación automática y, a continuación, seleccione **Siguiente**.

1. <a name="create-secret-step-review"></a>En la página **Review (Revisar)**, revise los ajustes y, a continuación, seleccione **Store (Almacenar)**.

   A continuación, se crea un recurso de secreto en su grupo de Greengrass que hace referencia al secreto.

## Paso 2: Agregar un recurso de secreto a un grupo de Greengrass
<a name="connectors-console-create-resource"></a>

En este paso, va a añadir un *recurso de secreto* al grupo de Greengrass. Este recurso es una referencia al secreto que creó en el paso anterior.

1. <a name="console-gg-groups"></a>En el panel de navegación de la AWS IoT consola, en **Administrar**, expanda **los dispositivos Greengrass** y, a continuación, elija **Grupos (V1)**.

1. <a name="create-secret-resource-step-choosegroup"></a>Elija el grupo al que desee añadir el recurso de secreto.

1. <a name="create-secret-resource-step-secretstab"></a>En la página de configuración del grupo, elija la pestaña **Recursos** y, a continuación, desplácese hacia abajo hasta la sección **Secretos**. La sección **Secretos** muestra los recursos secretos que pertenecen al grupo. Puede añadir, editar y quitar los recursos de secreto de esta sección.
**nota**  
Como alternativa, la consola le permite crear un secreto y un recurso secreto al configurar un conector o una función de Lambda. Puede hacerlo desde la página **Configurar parámetros** del conector o desde la página **Recursos** de la función de Lambda.

1. <a name="create-secret-resource-step-addsecretresource"></a>Seleccione **Añadir** en la sección **Secretos**.

1. En la página **Añadir un recurso secreto**, introduzca **MyTwilioAuthToken** el **nombre del recurso**.

1. Para el **secreto**, elija **greengrass-**. TwilioAuthToken

1. <a name="create-secret-resource-step-selectlabels"></a>En la sección **Seleccionar etiquetas (opcional)**, la AWSCURRENT etiqueta provisional representa la última versión del secreto. Esta etiqueta siempre está incluida en un recurso de secreto.
**nota**  
Este tutorial solo requiere la AWSCURRENT etiqueta. De forma opcional, puede incluir etiquetas que requieran su función de Lambda o un conector.

1. Seleccione **Add resource** (Añadir recurso).

## Paso 3: Agregar un conector al grupo de Greengrass
<a name="connectors-console-create-connector"></a>

En este paso va a configurar parámetros para el [conector Notificaciones de Twilio](twilio-notifications-connector.md) y añadirlo al grupo.

1. En la página de configuración de grupo, elija **Connectors (Conectores)** y, a continuación, elija **Add a connector (Añadir un conector)**.

1. En la página **Añadir conector**, selecciona **Notificaciones de Twilio**.

1. Elija la versión .

1. En la sección **Configuración**:
   + Para el **recurso de token de autenticación de Twilio**, introduzca el recurso que creó en el paso anterior.
**nota**  
Cuando se introduce el recurso, la propiedad **ARN de secreto de token de autenticación de Twilio** se rellena automáticamente.
   + En **Default from phone number (Predeterminado de número de teléfono)**, introduzca su número de teléfono habilitado para Twilio.
   + Para **Twilio account SID (SID de cuenta de Twilio)**, introduzca su SID de cuenta de Twilio.

1. Seleccione **Add resource** (Añadir recurso).

## Paso 4: Creación de un paquete de implementación de la función de Lambda
<a name="connectors-console-create-deployment-package"></a>

Para crear una función de Lambda, primero debe crear un *paquete de implementación* de funciones de Lambda que contenga el código de la función y las dependencias. Las funciones de Lambda de Greengrass requieren el [SDK de AWS IoT Greengrass Core](lambda-functions.md#lambda-sdks-core) para tareas como la comunicación con los mensajes de MQTT en el entorno principal y el acceso a los secretos locales. En este tutorial se crea una característica de Python para que utilice la versión Python del SDK en el paquete de implementación.

1. <a name="download-ggc-sdk"></a> Desde la página de descargas del [SDK AWS IoT Greengrass principal](what-is-gg.md#gg-core-sdk-download), descarga el SDK AWS IoT Greengrass básico para Python en tu ordenador.

1. <a name="unzip-ggc-sdk"></a>Descomprima el paquete descargado para obtener el SDK. El SDK es la carpeta `greengrasssdk`.

1. Guarde la siguiente función de código de Python en un archivo local llamado "`temp_monitor.py`".

   ```
   import greengrasssdk
   import json
   import random
   
   client = greengrasssdk.client('iot-data')
   
   # publish to the Twilio Notifications connector through the twilio/txt topic
   def function_handler(event, context):
       temp = event['temperature']
       
       # check the temperature
       # if greater than 30C, send a notification
       if temp > 30:
           data = build_request(event)
           client.publish(topic='twilio/txt', payload=json.dumps(data))
           print('published:' + str(data))
           
       print('temperature:' + str(temp))
       return
   
   # build the Twilio request from the input data
   def build_request(event):
       to_name = event['to_name']
       to_number = event['to_number']
       temp_report = 'temperature:' + str(event['temperature'])
   
       return {
           "request": {
               "recipient": {
                   "name": to_name,
                   "phone_number": to_number,
                   "message": temp_report
               }
           },
           "id": "request_" + str(random.randint(1,101))
       }
   ```

1. Comprima en un archivo ZIP los siguientes elementos en un archivo denominado "`temp_monitor_python.zip`". Al crear el archivo ZIP, incluya únicamente el código y sus dependencias, no la carpeta donde se encuentran.
   + **temp\$1monitor.py**. Lógica de la aplicación.
   + **greengrasssdk**. Biblioteca necesaria para las funciones de Lambda Greengrass de Python que publican mensajes MQTT.

   Este es el paquete de implementación de la función de Lambda.

Ahora, cree una función de Lambda que use el paquete de implementación.

## Paso 5: Crear una función Lambda en la consola AWS Lambda
<a name="connectors-console-create-function"></a>

En este paso, utilizará la AWS Lambda consola para crear una función Lambda y configurarla para que utilice su paquete de despliegue. A continuación, publicará una versión de la característica y creará un alias.

1. Primero, cree la función de Lambda.

   1. <a name="lambda-console-open"></a>En Consola de administración de AWS, elija **Servicios** y abra la AWS Lambda consola.

   1. <a name="lambda-console-create-function"></a>Elija **Crear función**, y, a continuación, elija **Autor desde cero**.

   1. En la sección **Basic information (Información básica)**, utilice los siguientes valores:
      + En **Function name** (Nombre de la característica), introduzca **TempMonitor**.
      + En **Runtime** (Tiempo de ejecución), elija **Python 3.7**.
      + En **Permisos**, mantenga la configuración predeterminada. Esto crea un rol de ejecución que otorga permisos Lambda básicos. Esta función no la utiliza AWS IoT Greengrass.

   1. <a name="lambda-console-save-function"></a>En la parte inferior de la página, elija **Create function**.

1. A continuación, registre el controlador y cargue el paquete de implementación de la función de Lambda.

   1. <a name="lambda-console-upload"></a>En la pestaña **Código**, en **Código fuente**, seleccione **Cargar desde**. En el menú desplegable, seleccione un **archivo .zip.**  
![\[La carga del menú desplegable con el archivo .zip resaltado.\]](http://docs.aws.amazon.com/es_es/greengrass/v1/developerguide/images/lra-console/upload-deployment-package.png)

   1. Seleccione **Cargar** y, a continuación, elija su paquete de implementación de `temp_monitor_python.zip`. A continuación, elija **Guardar**.

   1. <a name="lambda-console-runtime-settings-para"></a>En la pestaña **Código** de la función, en **Configuración de tiempo de ejecución**, elija **Editar** y, a continuación, introduzca los siguientes valores.
      + En **Runtime** (Tiempo de ejecución), elija **Python 3.7**.
      + En **Handler (Controlador)**, escriba **temp\$1monitor.function\$1handler**.

   1. <a name="lambda-console-save-config"></a>Seleccione **Save**.
**nota**  
El botón de **prueba** de la AWS Lambda consola no funciona con esta función. El SDK AWS IoT Greengrass principal no contiene los módulos necesarios para ejecutar las funciones de Greengrass Lambda de forma independiente en la consola. AWS Lambda Estos módulos (por ejemplo, `greengrass_common`) se suministran a las funciones una vez desplegados en el núcleo de Greengrass.

1. Ahora, publique la primera versión de su función de Lambda y cree un [alias para la versión](https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html).
**nota**  
Los grupos de Greengrass pueden hacer referencia a una función de Lambda por versión o alias (recomendado). El uso de un alias facilita la gestión de las actualizaciones del código porque no tiene que cambiar la tabla de suscripción o la definición del grupo cuando se actualiza el código de la función. En su lugar, basta con apuntar el alias a la nueva versión de la función.

   1. <a name="shared-publish-function-version"></a>En el menú **Actions**, elija **Publish new version**.

   1. <a name="shared-publish-function-version-description"></a>En **Version description (Descripción de versión)**, escriba **First version** y, a continuación, elija **Publish (Publicar)**.

   1. En la página de configuración **TempMonitor: 1**, en el menú **Acciones**, seleccione **Crear** alias.

   1. En la página **Create a new alias**, utilice los valores siguientes:
      + En **Nombre**, escriba **GG\$1TempMonitor**.
      + En **Version (Versión)**, elija **1**.
**nota**  
AWS IoT Greengrass **no admite los alias de Lambda para las versiones \$1LATEST.**

   1. Seleccione **Crear**.

Ahora está preparado para añadir la función de Lambda al grupo de Greengrass.

## Paso 6: Agregar una función de Lambda al grupo de Greengrass
<a name="connectors-console-create-gg-function"></a>

En este paso, va a añadir la función de Lambda al grupo y a configurar el ciclo de vida y las variables de entorno. Para obtener más información, consulte [Control de la ejecución de funciones de Lambda de Greengrass utilizando la configuración específica del grupo](lambda-group-config.md).

1. <a name="choose-add-lambda"></a>En la página de configuración del grupo, elija la pestaña **Funciones de Lambda**.

1. En la sección **Mis funciones de Lambda**, seleccione **Añadir**.

1. En la página **Agregar función Lambda**, elija **TempMonitor**su función Lambda.

1. Para la **versión de la función Lambda**, elija **Alias:** GG\$1. TempMonitor

1. Elija **Añadir función de Lambda**.

## Paso 7: Agregar suscripciones al grupo de Greengrass
<a name="connectors-console-create-subscription"></a>

<a name="connectors-how-to-add-subscriptions-p1"></a>En este paso añadirá una suscripción que habilita la función de Lambda para enviar datos de entrada al conector. El conector define los temas de MQTT a los que se suscribe, por lo que esta suscripción utiliza uno de los temas. Este es el mismo tema en el que se publica la función de ejemplo.

<a name="connectors-how-to-add-subscriptions-p2"></a>Para este tutorial, también debe crear suscripciones que permitan a la función recibir lecturas de temperatura simuladas AWS IoT y AWS IoT recibir información de estado del conector.

1. <a name="shared-subscriptions-addsubscription"></a>En la página de configuración del grupo, elija la pestaña **Suscripciones** y, a continuación, elija **Añadir suscripción**.

1. En la página **Crear una suscripción**, configure el origen y el destino de la siguiente manera:

   1. En **Tipo de fuente**, elija **Función Lambda** y, a continuación, elija. **TempMonitor**

   1. Para **Tipo de destino**, seleccione **Conector** y, a continuación, seleccione **Notificaciones de Twilio**.

1. En el **Filtro de temas**, escriba **twilio/txt**.

1. Seleccione **Crear subscripción**.

1. Repita los pasos 1 a 4 para crear una suscripción que permita AWS IoT publicar mensajes en la función.

   1. Para **Tipo de origen**, elija **Servicio** y, a continuación, **Nube de IoT**.

   1. En **Seleccione un objetivo**, elija **Función Lambda** y, a continuación, elija. **TempMonitor**

   1. En **Topic filter (Filtro de temas)**, escriba **temperature/input**.

1. Repita los pasos del 1 al 4 para crear una suscripción que permita al conector publicar mensajes en AWS IoT.

   1. Para **Tipo de origen**, seleccione **Conector** y, a continuación, seleccione **Notificaciones de Twilio**.

   1. Para **Tipo de destino**, elija **Servicio** y, a continuación, **Nube de IoT**.

   1. En **Topic filter (Filtro de temas)**, se introduce **twilio/message/status** automáticamente. Este es el tema predefinido en el que publica el conector.

## Paso 8: Implementar el grupo de Greengrass
<a name="connectors-console-create-deployment"></a>

Implemente el grupo en el dispositivo del núcleo.

1. <a name="shared-deploy-group-checkggc"></a>Asegúrese de que el AWS IoT Greengrass núcleo esté funcionando. Ejecute los siguientes comandos en el terminal de Raspberry Pi según sea necesario.

   1. Para comprobar si el daemon está en ejecución:

      ```
      ps aux | grep -E 'greengrass.*daemon'
      ```

      Si la salida contiene una entrada `root` para `/greengrass/ggc/packages/ggc-version/bin/daemon`, el daemon está en ejecución.
**nota**  
La versión de la ruta depende de la versión del software AWS IoT Greengrass principal que esté instalada en el dispositivo principal.

   1. Inicio de daemon:

      ```
      cd /greengrass/ggc/core/
      sudo ./greengrassd start
      ```

1. <a name="shared-deploy-group-deploy"></a>En la página de configuración de grupo, elija **Implementar**.

1. <a name="shared-deploy-group-ipconfig"></a>

   1. En la pestaña **Funciones de Lambda**, en la sección **Funciones de Lambda del sistema**, seleccione **Detector IP** y elija **Editar.**

   1. En el cuadro de diálogo **Editar configuración del detector IP**, seleccione **Detectar y anular automáticamente los puntos de conexión del agente MQTT**.

   1. Seleccione **Save**.

      Esto permite a los dispositivos adquirir automáticamente la información de conexión del dispositivo principal, como la dirección IP, el DNS y el número de puerto. Se recomienda la detección automática, pero AWS IoT Greengrass también es compatible con los puntos finales especificados manualmente. Solo se le solicitará el método de detección la primera vez que se implemente el grupo.
**nota**  
Si se le solicita, conceda permiso para crear el [rol de servicio de Greengrass](service-role.md) y asócielo al suyo Cuenta de AWS en el actual. Región de AWS Este rol le permite acceder AWS IoT Greengrass a sus recursos en los AWS servicios.

      En la página **Deployments** (Implementaciones), se muestra la marca temporal, el ID de versión y el estado de la implementación. Una vez terminada, la implementación debería mostrar el estado **Completado**.

      Para obtener ayuda sobre la resolución de problemas, consulte [Solución de problemas AWS IoT Greengrass](gg-troubleshooting.md).

**nota**  
<a name="one-conn-version"></a>Un grupo de Greengrass solo puede contener una versión del conector a la vez. Para obtener información sobre cómo actualizar una versión de conector, consulte [Actualización de versiones de los conectores](connectors.md#upgrade-connector-versions).

## Pruebe la solución
<a name="connectors-console-test-solution"></a>

1. <a name="choose-test-page"></a>En la página de inicio de la AWS IoT consola, selecciona **Probar**.

1. Para **Suscribirse al tema**, utilice los siguientes valores y, a continuación, seleccione **Suscribirse**. El conector Notificaciones de Twilio publica información sobre el estado en este tema.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v1/developerguide/connectors-console.html)

1. Para **Publicar en tema**, utilice los siguientes valores y, a continuación, seleccione **Publicar** para invocar la función.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v1/developerguide/connectors-console.html)

   Si se ejecuta correctamente, el destinatario recibe el mensaje de texto y la consola muestra el estado `success` de los [datos de salida](twilio-notifications-connector.md#twilio-notifications-connector-data-output).

   Ahora, cambie el valor de `temperature` en el mensaje de entrada a **29** y publíquelo. Como es inferior a 30, la TempMonitor función no activa ningún mensaje de Twilio.

## Véase también
<a name="connectors-console-see-also"></a>
+ [Integración con servicios y protocolos mediante conectores de Greengrass](connectors.md)
+  [conectores de Greengrass proporcionados por AWS](connectors-list.md)