FindPlayersWithAttributesUsingFilter
Finds matchmaking enabled players using a cloud code filter and additional attributes.
Additional information of filters can be found under Matchmaking Filters.
Service | Operation |
---|---|
matchMaking | FIND_PLAYERS_USING_FILTER |
Method Parameters
Parameter | Description |
---|---|
rangeDelta | How close an opponents rating must be to yours |
numMatches | The maximum number of matches to return |
jsonAttributes | Attributes match criteria |
jsonExtraParms | Parameters to be passed to the filter |
Usage
http://localhost:3000
- C#
- C++
- Objective-C
- Java
- JavaScript
- Dart
- Cloud Code
- Raw
int rangeDelta = 10;
int numMatches = 1;
string jsonAttributes = "{\"key\":\"value\"}";
string jsonExtraParms = "{\"parm1\":10}";
SuccessCallback successCallback = (response, cbObject) =>
{
Debug.Log(string.Format("Success | {0}", response));
};
FailureCallback failureCallback = (status, code, error, cbObject) =>
{
Debug.Log(string.Format("Failed | {0} {1} {2}", status, code, error));
};
_bc.MatchMakingService.FindPlayersWithAttributesUsingFilter(rangeDelta, numMatches, jsonAttributes, jsonExtraParms, successCallback, failureCallback);
int rangeDelta = 10;
int numMatches = 1;
const char *jsonAttributes = "{\"key\":\"value\"}";
const char *jsonExtraParms = "{\"parm1\":10}";
_bc->getMatchMakingService()->findPlayersWithAttributesUsingFilter(rangeDelta, numMatches, jsonAttributes, jsonExtraParms, this);
int rangeDelta = 10;
int numMatches = 1;
NSString *jsonAttributes = @"{\"key\":\"value\"}";
NSString *jsonExtraParms = @"{\"parm1\":10}";
BCCompletionBlock successBlock; // define callback
BCErrorCompletionBlock failureBlock; // define callback
[[_bc matchMakingService] findPlayersWithAttributesUsingFilter:rangeDelta
numMatches:numMatches
jsonAttributes:jsonAttributes
jsonExtraParms:jsonExtraParms
completionBlock:successBlock
errorCompletionBlock:failureBlock
cbObject:nil];
int rangeDelta = 10;
int numMatches = 1;
String jsonAttributes = "{\"key\":\"value\"}";
String jsonExtraParms = "{\"parm1\":10}";
this; // implements IServerCallback
_bc.getMatchMakingService().findPlayersWithAttributesUsingFilter(rangeDelta, numMatches, jsonAttributes, jsonExtraParms, this);
public void serverCallback(ServiceName serviceName, ServiceOperation serviceOperation, JSONObject jsonData)
{
System.out.print(String.format("Success | %s", jsonData.toString()));
}
public void serverError(ServiceName serviceName, ServiceOperation serviceOperation, int statusCode, int reasonCode, String jsonError)
{
System.out.print(String.format("Failed | %d %d %s", statusCode, reasonCode, jsonError.toString()));
}
var rangeDelta = 10;
var numMatches = 1;
var jsonAttributes = {
"key": "value"
};
var jsonExtraParms = {
"parm1": 10
};
_bc.matchMaking.findPlayersWithAttributesUsingFilter(rangeDelta, numMatches, jsonAttributes, jsonExtraParms, result =>
{
var status = result.status;
console.log(status + " : " + JSON.stringify(result, null, 2));
});
var rangeDelta = 10;
var numMatches = 1;
var jsonAttributes = {
"key": "value"
};
var jsonExtraParms = {
"parm1": 10
};
ServerResponse result = await _bc.matchMakingService.findPlayersWithAttributesUsingFilter(rangeDelta:rangeDelta, numMatches:numMatches, jsonAttributes:jsonAttributes, jsonExtraParms:jsonExtraParms);
if (result.statusCode == 200) {
print("Success");
} else {
print("Failed ${result.error['status_message'] ?? result.error}");
}
var rangeDelta = 10;
var numMatches = 1;
var jsonAttributes = {
"key": "value"
};
var jsonExtraParms = {
"parm1": 10
};
var matchMakingProxy = bridge.getMatchMakingServiceProxy();
var postResult = matchMakingProxy.findPlayersWithAttributesUsingFilter(rangeDelta, numMatches, jsonAttributes, jsonExtraParms);
if (postResult.status == 200) {
// Success!
}
{
"rangeDelta": 10,
"numMatches": 1,
"attributes": {
"key": "value"
},
"extraParms": {
"parm1": 10
}
}