View a markdown version of this page

Routeur d'abonnement Legacy - AWS IoT Greengrass

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Routeur d'abonnement Legacy

L'ancien routeur d'abonnement (aws.greengrass.LegacySubscriptionRouter) gère les abonnements sur le périphérique principal Greengrass. Les abonnements sont une fonctionnalité de la AWS IoT Greengrass V1 qui définit les sujets que les fonctions Lambda peuvent utiliser pour la messagerie MQTT sur un appareil principal. Pour plus d'informations, consultez la section Abonnements gérés dans le flux de messagerie MQTT dans le Guide du développeur AWS IoT Greengrass V1.

Vous pouvez utiliser ce composant pour activer les abonnements pour les composants de connecteur et les composants de la fonction Lambda qui utilisent le SDK AWS IoT Greengrass Core.

Note

L'ancien composant du routeur d'abonnement n'est requis que si votre fonction Lambda utilise la publish() fonction du SDK AWS IoT Greengrass Core. Si vous mettez à jour le code de votre fonction Lambda pour utiliser l'interface de communication interprocessus (IPC) de la Kit SDK des appareils AWS IoT V2, vous n'avez pas besoin de déployer l'ancien composant de routeur d'abonnement. Pour plus d'informations, consultez les services de communication interprocessus suivants :

Versions

Les versions de ce composant sont les suivantes :

  • 2.1.x

  • 2.0.x

Type

Ce composant est un composant générique (aws.greengrass.generic). Le noyau Greengrass exécute les scripts de cycle de vie du composant.

Pour de plus amples informations, veuillez consulter Types de composant.

Système d’exploitation

Ce composant ne peut être installé que sur les appareils principaux de Linux.

Exigences

Ce composant répond aux exigences suivantes :

  • L'ancien routeur d'abonnement est pris en charge pour fonctionner dans un VPC.

Dépendances

Lorsque vous déployez un composant, déploie AWS IoT Greengrass également des versions compatibles de ses dépendances. Cela signifie que vous devez répondre aux exigences relatives au composant et à toutes ses dépendances pour pouvoir le déployer avec succès. Cette section répertorie les dépendances pour les versions publiées de ce composant et les contraintes de version sémantiques qui définissent les versions des composants pour chaque dépendance. Vous pouvez également consulter les dépendances pour chaque version du composant dans la AWS IoT Greengrass console. Sur la page des détails des composants, recherchez la liste des dépendances.

2.1.15

Le tableau suivant répertorie les dépendances pour la version 2.1.15 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,17,0 Flexible
2.1.14

Le tableau suivant répertorie les dépendances pour la version 2.1.14 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,16,0 Flexible
2.1.13

Le tableau suivant répertorie les dépendances pour la version 2.1.13 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,15,0 Flexible
2.1.12

Le tableau suivant répertorie les dépendances pour la version 2.1.12 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,14,0 Flexible
2.1.11

Le tableau suivant répertorie les dépendances pour la version 2.1.11 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,13,0 Flexible
2.1.10

Le tableau suivant répertorie les dépendances pour la version 2.1.10 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,12,0 Flexible
2.1.9

Le tableau suivant répertorie les dépendances pour la version 2.1.9 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,11,0 Flexible
2.1.8

Le tableau suivant répertorie les dépendances pour la version 2.1.8 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,10,0 Flexible
2.1.7

Le tableau suivant répertorie les dépendances pour la version 2.1.7 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,9,0 Flexible
2.1.6

Le tableau suivant répertorie les dépendances pour la version 2.1.6 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,8,0 Flexible
2.1.5

Le tableau suivant répertorie les dépendances pour la version 2.1.5 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,7,0 Flexible
2.1.4

Le tableau suivant répertorie les dépendances pour la version 2.1.4 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,6,0 Flexible
2.1.3

Le tableau suivant répertorie les dépendances pour la version 2.1.3 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,5,0 Flexible
2.1.2

Le tableau suivant répertorie les dépendances pour la version 2.1.2 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,4,0 Flexible
2.1.1

Le tableau suivant répertorie les dépendances pour la version 2.1.1 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,3,0 Flexible
2.1.0

Le tableau suivant répertorie les dépendances pour la version 2.1.0 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,2,0 Flexible
2.0.3

Le tableau suivant répertorie les dépendances pour la version 2.0.3 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,3 < 2,1,0 Flexible

Pour plus d'informations sur les dépendances des composants, consultez la référence des recettes des composants.

Configuration

Ce composant fournit les paramètres de configuration suivants que vous pouvez personnaliser lorsque vous déployez le composant.

v2.1.x
subscriptions

(Facultatif) Les abonnements à activer sur l'appareil principal. Il s'agit d'un objet, où chaque clé est un identifiant unique et chaque valeur est un objet qui définit l'abonnement pour ce connecteur. Vous devez configurer un abonnement lorsque vous déployez un composant de connecteur V1 ou une fonction Lambda qui utilise le SDK AWS IoT Greengrass Core.

Chaque objet d'abonnement contient les informations suivantes :

id

L'identifiant unique de cet abonnement. Cet identifiant doit correspondre à la clé de cet objet d'abonnement.

source

La fonction Lambda qui utilise le SDK AWS IoT Greengrass Core pour publier des messages MQTT sur les sujets que vous spécifiez dans. subject Spécifiez l’un des éléments suivants :

  • Nom d'un composant de fonction Lambda sur le périphérique principal. Spécifiez le nom du composant avec le component: préfixe, par exemplecomponent:com.example.HelloWorldLambda.

  • Le nom de ressource Amazon (ARN) d'une fonction Lambda sur le périphérique principal.

    Important

    Si la version de la fonction Lambda change, vous devez configurer l'abonnement avec la nouvelle version de la fonction. Sinon, ce composant n'acheminera pas les messages tant que la version ne correspondra pas à l'abonnement.

    Vous devez spécifier un Amazon Resource Name (ARN) qui inclut la version de la fonction à importer. Vous ne pouvez pas utiliser des alias de version tels que $LATEST.

Pour déployer un abonnement pour un composant de connecteur V1, spécifiez le nom du composant ou l'ARN de la fonction Lambda du composant de connecteur.

subject

Rubrique ou filtre de sujet MQTT sur lequel la source et la cible peuvent publier et recevoir des messages. Cette valeur prend en charge les caractères génériques + et la # rubrique.

target

La cible qui reçoit les messages MQTT sur les sujets que vous spécifiez danssubject. L'abonnement spécifie que la source fonction publie des messages MQTT vers AWS IoT Core ou vers une fonction Lambda sur le périphérique principal. Spécifiez l’un des éléments suivants :

  • cloud. La source fonction publie des messages MQTT vers. AWS IoT Core

  • Nom d'un composant de fonction Lambda sur le périphérique principal. Spécifiez le nom du composant avec le component: préfixe, par exemplecomponent:com.example.HelloWorldLambda.

  • Le nom de ressource Amazon (ARN) d'une fonction Lambda sur le périphérique principal.

    Important

    Si la version de la fonction Lambda change, vous devez configurer l'abonnement avec la nouvelle version de la fonction. Sinon, ce composant n'acheminera pas les messages tant que la version ne correspondra pas à l'abonnement.

    Vous devez spécifier un Amazon Resource Name (ARN) qui inclut la version de la fonction à importer. Vous ne pouvez pas utiliser des alias de version tels que $LATEST.

Par défaut : aucun abonnement

Exemple Exemple de mise à jour de configuration (définition d'un abonnement à AWS IoT Core)

L'exemple suivant indique que le composant de la fonction com.example.HelloWorldLambda Lambda publie un message MQTT AWS IoT Core sur le hello/world sujet.

{ "subscriptions": { "Greengrass_HelloWorld_to_cloud": { "id": "Greengrass_HelloWorld_to_cloud", "source": "component:com.example.HelloWorldLambda", "subject": "hello/world", "target": "cloud" } } }
Exemple Exemple de mise à jour de configuration (définition d'un abonnement à une autre fonction Lambda)

L'exemple suivant indique que le composant de fonction com.example.HelloWorldLambda Lambda publie des messages MQTT à destination du composant de fonction com.example.MessageRelay Lambda sur le sujet. hello/world

{ "subscriptions": { "Greengrass_HelloWorld_to_MessageRelay": { "id": "Greengrass_HelloWorld_to_MessageRelay", "source": "component:com.example.HelloWorldLambda", "subject": "hello/world", "target": "component:com.example.MessageRelay" } } }
v2.0.x
subscriptions

(Facultatif) Les abonnements à activer sur l'appareil principal. Il s'agit d'un objet, où chaque clé est un identifiant unique et chaque valeur est un objet qui définit l'abonnement pour ce connecteur. Vous devez configurer un abonnement lorsque vous déployez un composant de connecteur V1 ou une fonction Lambda qui utilise le SDK AWS IoT Greengrass Core.

Chaque objet d'abonnement contient les informations suivantes :

id

L'identifiant unique de cet abonnement. Cet identifiant doit correspondre à la clé de cet objet d'abonnement.

source

La fonction Lambda qui utilise le SDK AWS IoT Greengrass Core pour publier des messages MQTT sur les sujets que vous spécifiez dans. subject Spécifiez les paramètres suivants :

  • Le nom de ressource Amazon (ARN) d'une fonction Lambda sur le périphérique principal.

    Important

    Si la version de la fonction Lambda change, vous devez configurer l'abonnement avec la nouvelle version de la fonction. Sinon, ce composant n'acheminera pas les messages tant que la version ne correspondra pas à l'abonnement.

    Vous devez spécifier un Amazon Resource Name (ARN) qui inclut la version de la fonction à importer. Vous ne pouvez pas utiliser des alias de version tels que $LATEST.

Pour déployer un abonnement pour un composant de connecteur V1, spécifiez l'ARN de la fonction Lambda du composant de connecteur.

subject

Rubrique ou filtre de sujet MQTT sur lequel la source et la cible peuvent publier et recevoir des messages. Cette valeur prend en charge les caractères génériques + et la # rubrique.

target

La cible qui reçoit les messages MQTT sur les sujets que vous spécifiez danssubject. L'abonnement spécifie que la source fonction publie des messages MQTT vers AWS IoT Core ou vers une fonction Lambda sur le périphérique principal. Spécifiez l’un des éléments suivants :

  • cloud. La source fonction publie des messages MQTT vers. AWS IoT Core

  • Le nom de ressource Amazon (ARN) d'une fonction Lambda sur le périphérique principal.

    Important

    Si la version de la fonction Lambda change, vous devez configurer l'abonnement avec la nouvelle version de la fonction. Sinon, ce composant n'acheminera pas les messages tant que la version ne correspondra pas à l'abonnement.

    Vous devez spécifier un Amazon Resource Name (ARN) qui inclut la version de la fonction à importer. Vous ne pouvez pas utiliser des alias de version tels que $LATEST.

Par défaut : aucun abonnement

Exemple Exemple de mise à jour de configuration (définition d'un abonnement à AWS IoT Core)

L'exemple suivant indique que la Greengrass_HelloWorld fonction publie un message MQTT AWS IoT Core sur le hello/world sujet.

"subscriptions": { "Greengrass_HelloWorld_to_cloud": { "id": "Greengrass_HelloWorld_to_cloud", "source": "arn:aws:lambda:us-west-2:123456789012:function:Greengrass_HelloWorld:5", "subject": "hello/world", "target": "cloud" } }
Exemple Exemple de mise à jour de configuration (définition d'un abonnement à une autre fonction Lambda)

L'exemple suivant indique que la Greengrass_HelloWorld fonction publie des messages MQTT Greengrass_MessageRelay sur le hello/world sujet.

"subscriptions": { "Greengrass_HelloWorld_to_MessageRelay": { "id": "Greengrass_HelloWorld_to_MessageRelay", "source": "arn:aws:lambda:us-west-2:123456789012:function:Greengrass_HelloWorld:5", "subject": "hello/world", "target": "arn:aws:lambda:us-west-2:123456789012:function:Greengrass_MessageRelay:5" } }

Fichier journal local

Ce composant ne génère pas de journaux.

Journal des modifications

Le tableau suivant décrit les modifications apportées à chaque version du composant.

Version

Modifications

2.1.17

Met à jour la version du composant pour la version 2.18.0 de Greengrass Nucleus.

2.1.16

Met à jour la version du composant pour la version 2.17.0 de Greengrass Nucleus.

2.1.15

Version mise à jour pour la version 2.16.0 de Greengrass Nucleus.

2.1.14

Version mise à jour pour la version 2.15.0 de Greengrass Nucleus.

2.1.13

Version mise à jour pour la version 2.14.0 de Greengrass Nucleus.

2.1.12

Version mise à jour pour la version 2.13.0 de Greengrass Nucleus.

2.1.11

Version mise à jour pour la version 2.12.0 de Greengrass Nucleus.

2.1.10

Version mise à jour pour la version 2.11.0 de Greengrass Nucleus.

2.1.9

Version mise à jour pour la version 2.10.0 de Greengrass Nucleus.

2.1.8

Version mise à jour pour la version 2.9.0 de Greengrass Nucleus.

2.1.7

Version mise à jour pour la version 2.8.0 de Greengrass Nucleus.

2.1.6

Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.

2.1.5

Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.

2.1.4

Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.

2.1.3

Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.

2.1.2

Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.

2.1.1

Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.

2.1.0

Corrections de bugs et améliorations
  • Ajoute la prise en charge de spécifier les noms des composants au lieu des ARN pour source ettarget. Si vous spécifiez un nom de composant pour un abonnement, il n'est pas nécessaire de reconfigurer l'abonnement chaque fois que la version de la fonction Lambda change.

2.0.3

Première version.