License | MIT |
---|---|
Safe Haskell | None |
Language | Haskell2010 |
- type WebApi = "v1a" :> (("client" :> (("auth" :> (ReqBody '[JSON] ClientAuthRequest :> Post '[JSON] ClientAuthResponse)) :<|> (("match" :> ((ReqBody '[JSON] MatchRequest :> Post '[JSON] MatchResponse) :<|> (Capture "matchToken" (InternalToken MatchToken) :> Get '[JSON] MatchStatusResponse))) :<|> ("session" :> (Capture "sessionToken" (InternalToken SessionToken) :> ("result" :> (ReqBody '[JSON] SessionResultRequest :> Post '[JSON] ()))))))) :<|> ("server" :> (("match" :> (ReqBody '[JSON] ServerMatchRequest :> Post '[JSON] ServerMatchResponse)) :<|> ("session" :> (Capture "serverSessionToken" (InternalToken ServerSessionToken) :> ("result" :> (ReqBody '[JSON] ServerSessionResultRequest :> Post '[JSON] ())))))))
- data ClientAuthRequest = ClientAuthRequest {}
- data ClientAuthResponse
- data MatchRequest = MatchRequest {}
- data MatchResponse = MatchResponse {}
- data MatchStatusResponse
- data MatchStatusReason
- newtype MatchTeam = MatchTeam (Vector MatchPlayer)
- data MatchPlayer = MatchPlayer {}
- data MatchServer = MatchServer {}
- newtype MatchServerInfo = MatchServerInfo Text
- data SessionResultRequest
- data ServerMatchRequest = ServerMatchRequest {}
- data ServerMatchResponse = ServerMatchResponse {}
- data ServerSessionResultRequest
- data ServerSession = ServerSession {}
Documentation
type WebApi = "v1a" :> (("client" :> (("auth" :> (ReqBody '[JSON] ClientAuthRequest :> Post '[JSON] ClientAuthResponse)) :<|> (("match" :> ((ReqBody '[JSON] MatchRequest :> Post '[JSON] MatchResponse) :<|> (Capture "matchToken" (InternalToken MatchToken) :> Get '[JSON] MatchStatusResponse))) :<|> ("session" :> (Capture "sessionToken" (InternalToken SessionToken) :> ("result" :> (ReqBody '[JSON] SessionResultRequest :> Post '[JSON] ()))))))) :<|> ("server" :> (("match" :> (ReqBody '[JSON] ServerMatchRequest :> Post '[JSON] ServerMatchResponse)) :<|> ("session" :> (Capture "serverSessionToken" (InternalToken ServerSessionToken) :> ("result" :> (ReqBody '[JSON] ServerSessionResultRequest :> Post '[JSON] ()))))))) Source #
data ClientAuthRequest Source #
data ClientAuthResponse Source #
data MatchResponse Source #
data MatchStatusResponse Source #
MatchStatusResponse_notFound | |
MatchStatusResponse_inProgress | |
MatchStatusResponse_matched | |
MatchStatusResponse_failed | |
MatchStatusResponse_cleaned | Match status was cleaned. Normallly this status should not be visible to clients, it's here just in case. |
data MatchStatusReason Source #
Reason of match failure.
MatchStatusReason_timedOut | Failed to make a match in a specified time. |
MatchStatusReason_noServer | Match was made, but no server is available (and use of server is mandatory). |
MatchStatusReason_cancelled | Matching was explicitly cancelled by user. |
newtype MatchServerInfo Source #
data ServerMatchResponse Source #