Interactúa con las sombras de los componentes - AWS IoT Greengrass

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.

Interactúa con las sombras de los componentes

Puede desarrollar componentes personalizados, incluidos los componentes de la función Lambda, que utilicen el servicio de sombra local para leer y modificar documentos de sombra locales y documentos de sombra de dispositivos cliente.

Los componentes personalizados interactúan con el servicio paralelo local mediante las bibliotecas AWS IoT Greengrass Core IPC del. SDK para dispositivos con AWS IoT El componente de administrador de sombras habilita el servicio oculto local en su dispositivo principal.

Para implementar el componente shadow manager en un dispositivo principal de Greengrass, cree una implementación que incluya el aws.greengrass.ShadowManager componente.

nota

De forma predeterminada, la implementación del componente de administrador de sombras solo permite las operaciones ocultas locales. AWS IoT GreengrassPara poder sincronizar la información sobre el estado de las sombras de los dispositivos principales o de cualquier sombra de los dispositivos cliente con los documentos de sombra de nube correspondientesAWS IoT Core, debe crear una actualización de configuración para el componente del administrador de sombras que incluya el synchronize parámetro. Para obtener más información, consulte Sincronice las sombras de los dispositivos locales con AWS IoT Core.

Recupere y modifique los estados de sombra

Las operaciones de IPC clandestinas recuperan y actualizan la información sobre el estado de los documentos alternativos locales. El componente de administrador de sombras se encarga del almacenamiento de estos documentos ocultos en el dispositivo principal.

Para modificar los estados ocultos locales
  1. Añada políticas de autorización a la receta de su componente personalizado para permitir que el componente reciba mensajes sobre temas alternativos locales.

    Para ver ejemplos de políticas de autorización, consulte Ejemplos de políticas de autorización de IPC ocultas locales.

  2. Utilice las operaciones de IPC ocultas para recuperar y modificar la información sobre el estado oculto. Para obtener más información sobre el uso de operaciones de IPC ocultas en el código de los componentes, consulte. Interactúa con las sombras locales

nota

Para permitir que un dispositivo principal interactúe con las sombras de los dispositivos cliente, también debe configurar e implementar el componente de puente MQTT. Para obtener más información, consulte Habilitar el administrador de sombras para que se comunique con los dispositivos cliente.

Reaccione a los cambios en el estado de sombra

Los componentes de Greengrass utilizan la interfaz local de publicación/suscripción para comunicarse en un dispositivo central. Para permitir que un componente personalizado reaccione ante los cambios en el estado de sombra, puede suscribirse a los temas locales de publicación o suscripción. Esto permite que el componente reciba mensajes sobre los temas alternativos locales y, a continuación, actúe en función de esos mensajes.

Los temas ocultos locales utilizan el mismo formato que los temas MQTT ocultos del AWS IoT dispositivo. Para obtener más información sobre temas ocultos, consulte los temas MQTT de Device Shadow en la Guía para AWS IoT desarrolladores.

Para reaccionar ante los cambios en el estado de sombra local
  1. Añada políticas de control de acceso a la receta de su componente personalizado para permitir que el componente reciba mensajes sobre temas alternativos locales.

    Para ver ejemplos de políticas de autorización, consulte Ejemplos de políticas de autorización de IPC ocultas locales.

  2. Para iniciar una acción personalizada en un componente, utilice las operaciones de SubscribeToTopic IPC para suscribirse a los temas paralelos sobre los que desee recibir mensajes. Para obtener más información sobre el uso de las operaciones de IPC locales de publicación o suscripción en el código del componente, consulte. Publicar/suscribir mensajes locales

  3. Para invocar una función Lambda, utilice la configuración de la fuente de eventos para proporcionar el nombre del tema paralelo y especificar que se trata de un tema local de publicación/suscripción. Para obtener información sobre la creación de componentes de funciones Lambda, consulte. AWS LambdaFunciones de ejecución

nota

Para permitir que un dispositivo principal interactúe con las sombras de los dispositivos cliente, también debe configurar e implementar el componente puente MQTT. Para obtener más información, consulte Habilitar el administrador de sombras para que se comunique con los dispositivos cliente.