class StandaloneMatchmakingConfiguration (construct)
Language | Type name |
---|---|
.NET | Amazon.CDK.AWS.GameLift.Alpha.StandaloneMatchmakingConfiguration |
Go | github.com/aws/aws-cdk-go/awscdkgameliftalpha/v2#StandaloneMatchmakingConfiguration |
Java | software.amazon.awscdk.services.gamelift.alpha.StandaloneMatchmakingConfiguration |
Python | aws_cdk.aws_gamelift_alpha.StandaloneMatchmakingConfiguration |
TypeScript (source) | @aws-cdk/aws-gamelift-alpha ยป StandaloneMatchmakingConfiguration |
Implements
IConstruct
, IDependable
, IResource
, IMatchmaking
A FlexMatch matchmaker process does the work of building a game match.
It manages the pool of matchmaking requests received, forms teams for a match, processes and selects players to find the best possible player groups, and initiates the process of placing and starting a game session for the match. This topic describes the key aspects of a matchmaker and how to configure one customized for your game.
See also: https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-configuration.html
Example
declare const ruleSet: gamelift.MatchmakingRuleSet;
new gamelift.StandaloneMatchmakingConfiguration(this, 'StandaloneMatchmaking', {
matchmakingConfigurationName: 'test-standalone-config-name',
ruleSet: ruleSet,
});
Initializer
new StandaloneMatchmakingConfiguration(scope: Construct, id: string, props: StandaloneMatchmakingConfigurationProps)
Parameters
- scope
Construct
- id
string
- props
Standalone
Matchmaking Configuration Props
Construct Props
Name | Type | Description |
---|---|---|
matchmaking | string | A unique identifier for the matchmaking configuration. |
rule | IMatchmaking | A matchmaking rule set to use with this configuration. |
acceptance | Duration | The length of time (in seconds) to wait for players to accept a proposed match, if acceptance is required. |
custom | string | Information to add to all events related to the matchmaking configuration. |
description? | string | A human-readable description of the matchmaking configuration. |
notification | ITopic | An SNS topic ARN that is set up to receive matchmaking notifications. |
request | Duration | The maximum duration, that a matchmaking ticket can remain in process before timing out. |
require | boolean | A flag that determines whether a match that was created with this configuration must be accepted by the matched players. |
matchmakingConfigurationName
Type:
string
A unique identifier for the matchmaking configuration.
This name is used to identify the configuration associated with a matchmaking request or ticket.
ruleSet
Type:
IMatchmaking
A matchmaking rule set to use with this configuration.
A matchmaking configuration can only use rule sets that are defined in the same Region.
acceptanceTimeout?
Type:
Duration
(optional, default: 300 seconds)
The length of time (in seconds) to wait for players to accept a proposed match, if acceptance is required.
customEventData?
Type:
string
(optional, default: no custom data added to events)
Information to add to all events related to the matchmaking configuration.
description?
Type:
string
(optional, default: no description is provided)
A human-readable description of the matchmaking configuration.
notificationTarget?
Type:
ITopic
(optional, default: no notification target)
An SNS topic ARN that is set up to receive matchmaking notifications.
See also: https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-notification.html
requestTimeout?
Type:
Duration
(optional, default: 300 seconds)
The maximum duration, that a matchmaking ticket can remain in process before timing out.
Requests that fail due to timing out can be resubmitted as needed.
requireAcceptance?
Type:
boolean
(optional, default: Acceptance is not required)
A flag that determines whether a match that was created with this configuration must be accepted by the matched players.
With this option enabled, matchmaking tickets use the status REQUIRES_ACCEPTANCE
to indicate when a completed potential match is waiting for player acceptance.
Properties
Name | Type | Description |
---|---|---|
env | Resource | The environment this resource belongs to. |
matchmaking | string | The ARN of the matchmaking configuration. |
matchmaking | string | The Identifier of the matchmaking configuration. |
node | Node | The tree node. |
stack | Stack | The stack in which this resource is defined. |
notification | ITopic | The notification target for matchmaking events. |
env
Type:
Resource
The environment this resource belongs to.
For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into.
matchmakingConfigurationArn
Type:
string
The ARN of the matchmaking configuration.
matchmakingConfigurationName
Type:
string
The Identifier of the matchmaking configuration.
node
Type:
Node
The tree node.
stack
Type:
Stack
The stack in which this resource is defined.
notificationTarget?
Type:
ITopic
(optional)
The notification target for matchmaking events.
Methods
Name | Description |
---|---|
apply | Apply the given removal policy to this resource. |
metric(metricName, props?) | Return the given named metric for this matchmaking configuration. |
metric | Matchmaking requests currently being processed or waiting to be processed. |
metric | For matchmaking configurations that require acceptance, the potential matches that were accepted since the last report. |
metric | Potential matches that were created since the last report. |
metric | Matches that were successfully placed into a game session since the last report. |
metric | For matchmaking configurations that require acceptance, the potential matches that were rejected by at least one player since the last report. |
metric | Players in matchmaking tickets that were added since the last report. |
metric | For matchmaking requests that were put into a potential match before the last report, the amount of time between ticket creation and potential match creation. |
to | Returns a string representation of this construct. |
static from | Import an existing matchmaking configuration from its ARN. |
static from | Import an existing matchmaking configuration from its name. |
RemovalPolicy(policy)
applypublic applyRemovalPolicy(policy: RemovalPolicy): void
Parameters
- policy
Removal
Policy
Apply the given removal policy to this resource.
The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you've removed it from the CDK application or because you've made a change that requires the resource to be replaced.
The resource can be deleted (RemovalPolicy.DESTROY
), or left in your AWS
account for data recovery and cleanup later (RemovalPolicy.RETAIN
).
metric(metricName, props?)
public metric(metricName: string, props?: MetricOptions): Metric
Parameters
- metricName
string
- props
Metric
Options
Returns
Return the given named metric for this matchmaking configuration.
CurrentTickets(props?)
metricpublic metricCurrentTickets(props?: MetricOptions): Metric
Parameters
- props
Metric
Options
Returns
Matchmaking requests currently being processed or waiting to be processed.
MatchesAccepted(props?)
metricpublic metricMatchesAccepted(props?: MetricOptions): Metric
Parameters
- props
Metric
Options
Returns
For matchmaking configurations that require acceptance, the potential matches that were accepted since the last report.
MatchesCreated(props?)
metricpublic metricMatchesCreated(props?: MetricOptions): Metric
Parameters
- props
Metric
Options
Returns
Potential matches that were created since the last report.
MatchesPlaced(props?)
metricpublic metricMatchesPlaced(props?: MetricOptions): Metric
Parameters
- props
Metric
Options
Returns
Matches that were successfully placed into a game session since the last report.
MatchesRejected(props?)
metricpublic metricMatchesRejected(props?: MetricOptions): Metric
Parameters
- props
Metric
Options
Returns
For matchmaking configurations that require acceptance, the potential matches that were rejected by at least one player since the last report.
PlayersStarted(props?)
metricpublic metricPlayersStarted(props?: MetricOptions): Metric
Parameters
- props
Metric
Options
Returns
Players in matchmaking tickets that were added since the last report.
TimeToMatch(props?)
metricpublic metricTimeToMatch(props?: MetricOptions): Metric
Parameters
- props
Metric
Options
Returns
For matchmaking requests that were put into a potential match before the last report, the amount of time between ticket creation and potential match creation.
Units: seconds
String()
topublic toString(): string
Returns
string
Returns a string representation of this construct.
StandaloneMatchmakingConfigurationArn(scope, id, matchmakingConfigurationArn)
static frompublic static fromStandaloneMatchmakingConfigurationArn(scope: Construct, id: string, matchmakingConfigurationArn: string): IMatchmakingConfiguration
Parameters
- scope
Construct
- id
string
- matchmakingConfigurationArn
string
Returns
Import an existing matchmaking configuration from its ARN.
StandaloneMatchmakingConfigurationName(scope, id, matchmakingConfigurationName)
static frompublic static fromStandaloneMatchmakingConfigurationName(scope: Construct, id: string, matchmakingConfigurationName: string): IMatchmakingConfiguration
Parameters
- scope
Construct
- id
string
- matchmakingConfigurationName
string
Returns
Import an existing matchmaking configuration from its name.