Fermer

décembre 1, 2018

Appel de fonctions Lambda avec Amazon Connect


Amazon continue de publier de nouvelles fonctionnalités pour Amazon Connect rapidement. Dans ce billet de blog, je vais examiner de plus près une nouvelle modification apportée à la page de configuration du flux de contacts qui peut faciliter considérablement l’intégration à Lambda. Je vais également détailler certains des inconvénients que vous devez connaître lorsque vous utilisez cette nouvelle configuration.

Avant de commencer, voici une capture d'écran de la nouvelle section que vous pouvez trouver en naviguant vers votre instance Amazon Connect dans la console AWS. sélection des flux de contacts.

Comme nous l'avons noté dans plusieurs précédents articles de blog et points soulignés par Amazon dans la documentation officielle pour qu'Amazon Connect appelle correctement Pour une fonction Lambda, nous devons nous assurer que la politique appropriée est appliquée à cette fonction. Vous pouvez vérifier toutes les stratégies d'une fonction en accédant à Lambda et en utilisant le bouton Afficher les autorisations. Voici comment cela pourrait ressembler à une fonction pour laquelle des stratégies ont été appliquées via l'AWS CLI.

Cette vue est extrêmement utile si vous souhaitez afficher tous les détails sur les personnes pouvant appeler. votre fonction et à quels services Lambda peut-il accéder. Pour ajouter plus d'autorisations, vous pouvez exécuter une commande similaire à celle ci-dessous dans l'AWS CLI:

 aws lambda fonction_add-permission - fonction-nom-fonction: fonction-my-lambda --statement-id 1 --principal connect. amazonaws.com --action lambda: InvokeFunction --source-account 123456789012 --source-arn arn: aws: connecter: us-est-1: 123456789012: instance / def1a4fc-ac9d-11e6-b582-06a0be38cccf

Cependant, en utilisant la page des paramètres de flux de contacts dans Amazon Connect, cette étape n'est plus nécessaire. Il ne vous reste plus qu'à sélectionner la fonction que votre centre d'appels doit appeler et à cliquer sur le bouton Ajouter une fonction Lambda. Une fois que vous avez obtenu un message de réussite, vous êtes prêt à référencer la fonction dans vos flux de contact.

Notez que vous aurez toujours besoin d'utiliser la fonction ARN. Il n'y a pas de menu déroulant à l'intérieur du nœud invoquer Lambda qui montre toutes vos options comme tous les robots Lex sont disponibles à l'intérieur du nœud get client. Cependant, le bouton de copie utile situé à côté du nom de votre fonction récupérera l'ARN, ce qui vous évitera d'avoir à vous connecter à la console Lambda.

Il convient également de noter que lorsque vous accédez à une fonction configurée comme détaillé au-dessus du bouton d’affichage des autorisations n’affiche pas l’action lambda: InvokeFunction. Cela peut rendre un peu plus difficile la tâche de savoir quelles autorisations sont appliquées à chacune de vos fonctions.

Le fait de ne pas appliquer de stratégie spécifique à votre fonction Lambda signifie que vous ne pourrez pas contrôler exactement quel compte AWS peut appeler Lambda ou configurer les éléments de sorte que votre fonction puisse être utilisé par n'importe quel compte ou instance. Cela peut poser problème si une fonction Lambda est utilisée par plusieurs instances d'Amazon Connect. Vous ne pourrez pas non plus utiliser cette configuration pour les fonctions Lambda dans d'autres régions AWS.

Enfin, si vous déployez plusieurs fonctions Lambda et que vous ne souhaitez pas accéder à une interface graphique pour chacune d'entre elles, il peut s'avérer plus facile de utilisez CloudFormation pour appliquer les stratégies appropriées lors de la création de la fonction. Si vous n'avez jamais utilisé CloudFormation pour appliquer des stratégies à une fonction Lambda, voici à quoi cela pourrait ressembler.

 "AmazonConnectUpdateRights": {
           "Type": "AWS :: Lambda :: Permission",
            "Propriétés": {
                "NomFonction": {
                    "Ref": "FUNCTIONNAME"
                },
                "Action": "lambda: InvokeFunction",
                "Principal": "connect.amazonaws.com",
                "SourceAccount": {
                    "Ref": "AWS :: AccountId"
                }
            }
        } 

Cela dit, cette nouvelle façon d'utiliser Lambda avec Amazon Connect sera certainement utile pour les déploiements simples avec une seule instance Amazon Connect. Pour plus de conseils sur l'utilisation de Lambda ou pour toute aide relative à un sujet lié à Amazon Connect, veuillez Demander une démonstration Amazon Connect.






Source link