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.
Vous pouvez appeler une fonction Lambda à l'aide des notifications d'événements publiées sur votre rubrique Amazon SNS. Lorsque vous configurez le système de matchmaking, veillez à définir l'ARN de votre sujet SNS comme cible de notification.
Le AWS CloudFormation modèle suivant configure un abonnement à une rubrique SNS nommée MyFlexMatchEventTopic
pour appeler une fonction Lambda nommée. FlexMatchEventHandlerLambdaFunction
Le modèle crée une politique d'autorisation IAM qui permet Amazon GameLift Servers pour écrire sur le sujet SNS. Le modèle ajoute ensuite des autorisations permettant à la rubrique SNS d'invoquer la fonction Lambda.
FlexMatchEventTopic:
Type: "AWS::SNS::Topic"
Properties:
KmsMasterKeyId: alias/aws/sns #Enables server-side encryption on the topic using an AWS managed key
Subscription:
- Endpoint: !GetAtt FlexMatchEventHandlerLambdaFunction.Arn
Protocol: lambda
TopicName: MyFlexMatchEventTopic
FlexMatchEventTopicPolicy:
Type: "AWS::SNS::TopicPolicy"
DependsOn: FlexMatchEventTopic
Properties:
PolicyDocument:
Version: "2012-10-17"
Statement:
- Effect: Allow
Principal:
Service: gamelift.amazonaws.com
Action:
- "sns:Publish"
Resource: !Ref FlexMatchEventTopic
Topics:
- Ref: FlexMatchEventTopic
FlexMatchEventHandlerLambdaPermission:
Type: "AWS::Lambda::Permission"
Properties:
Action: "lambda:InvokeFunction"
FunctionName: !Ref FlexMatchEventHandlerLambdaFunction
Principal: sns.amazonaws.com
SourceArn: !Ref FlexMatchEventTopic