-
Notifications
You must be signed in to change notification settings - Fork 11
Match API
ninja03 edited this page Apr 27, 2021
·
1 revision
空いてるゲームに参加、指定したゲームIDのゲームに参加、対AI戦に参加などが出来ます。
POST /match
以下のパラメータを含んだJSONをbodyに入れて送信して下さい。
| Name | Type | Discription |
|---|---|---|
name(name又はidのいずれか必須) |
string | ユーザ名 |
id(name又はidのいずれか必須) |
string | ユーザID |
password任意 |
string | ユーザパスワード |
spec任意 |
string | 紹介文 ゲームには影響しません |
gameId任意 |
string | ゲームID 指定のゲームに参加したい場合にこのパラメータを含めてください |
useAi任意 |
boolean | AIを使うかどうか |
aiOption任意 |
object | AIのオプションaiNameやboardNameを含めたオブジェクトです。 |
aiOption.aiName必須 |
string | AI名 使用できるAI名についてはAI名をご覧ください |
aiOption.boardName任意 |
string | ボード名 使用できるボード名についてはボード名をご覧ください |
{
"id":"6463f6a3-dd36-453d-af8f-71bef04b207c",
"password":"password",
"spec":"機械学習",
"useAi":true,
"aiOption":{
"aiName":"a1",
}
}レスポンスのBodyに参加プレイヤーのJSON情報が返ってきます。
| Name | Type | Discription |
|---|---|---|
userId |
string | 参加プレイヤーのユーザID |
spec |
string | 参加プレイヤーのspec |
accessToken |
string | アクセストークン actionを送信するときに使用します。アクセストークンは試合に参加する人のみ知れる状態にしてください。 |
gameId |
string | ゲームID |
index |
string | インデックス ゲーム詳細を取得した際の、players内のどのインデックスが自分かを表しています。 |
{
"userId": "6463f6a3-dd36-453d-af8f-71bef04b207c",
"spec": "",
"accessToken": "d7028085-fccf-41a2-b038-723721938ac4",
"gameId": "833b167a-d40b-49e5-b0e2-9d3de3e8d532",
"index": 0
}以下のエラーレスポンスが返ってるくる可能性があります。エラーレスポンスについてはError Responseを見てください。
100 101 102 200 204 205
ゲームの詳細を取得することが出来ます。
GET /api/match/(gameId)
http://localhost:8880/api/match/833b167a-d40b-49e5-b0e2-9d3de3e8d532
レスポンスのBodyにGameオブジェクトが返ってきます。
以下のエラーレスポンスが返ってるくる可能性があります。エラーレスポンスについてはError Responseを見てください。
エージェントの行動を送信することができます。
POST /api/match/(gameId)/action
HTTPリクエストのヘッダに key : "Authorization" value : アクセストークン を含める必要があります。
以下のパラメータを含んだJSONをbodyに入れて送信して下さい。
| Name | Type | Discription |
|---|---|---|
actions必須 |
行動情報[] | 行動情報の配列 以下の行動情報を配列にして送信してください。 |
| Name | Type | Discription |
|---|---|---|
agentId必須 |
number | エージェントのIDです。 |
type必須 |
string | 行動の種類PUT,NONE,MOVE,REMOVEが指定できます。 |
x必須 |
number | x座標 |
y必須 |
number | y座標 |
{
"actions":[
{"agentId":0,"type":"PUT","x":0,"y":0},
{"agentId":1,"type":"MOVE","x":5,"y":6},
]
}レスポンスのBodyに以下のJSONが返ってきます。
| Name | Type | Discription |
|---|---|---|
receptionUnixTime |
number | 行動を受信したUNIX時間 |
turn |
number | 受信したときのゲームのターン |
{
"receptionUnixTime": 1616655464,
"turn": 0
}以下のエラーレスポンスが返ってるくる可能性があります。エラーレスポンスについてはError Responseを見てください。
103 104