|
1 | 1 | # Agones Game Server Client SDKs |
2 | 2 |
|
| 3 | + |
| 4 | +Table of Contents |
| 5 | +================= |
| 6 | + |
| 7 | + * [Overview](#overview) |
| 8 | + * [Function Reference](#function-reference) |
| 9 | + * [Ready()](#ready) |
| 10 | + * [Health()](#health) |
| 11 | + * [Shutdown()](#shutdown) |
| 12 | + * [SetLabel(key, value)](#setlabelkey-value) |
| 13 | + * [SetAnnotation(key, value)](#setannotationkey-value) |
| 14 | + * [GameServer()](#gameserver) |
| 15 | + * [WatchGameServer(function(gameserver){...})](#watchgameserverfunctiongameserver) |
| 16 | + * [Local Development](#local-development) |
| 17 | + * [Providing your own GameServer configuration for local development](#providing-your-own-gameserver-configuration-for-local-development) |
| 18 | + * [Writing your own SDK](#writing-your-own-sdk) |
| 19 | + * [gRPC Client Generation](#grpc-client-generation) |
| 20 | + * [REST API Implementation](#rest-api-implementation) |
| 21 | + * [Building the Local Tools](#building-the-local-tools) |
| 22 | + |
| 23 | +## Overview |
| 24 | + |
3 | 25 | The SDKs are integration points for game servers with Agones itself. |
4 | 26 |
|
5 | 27 | They are required for a game server to work with Agones. |
@@ -148,25 +170,25 @@ $ ./sdk-server.linux.amd64 --local -f ../../../examples/simple-udp/gameserver.ya |
148 | 170 | {"level":"info","msg":"Starting SDKServer grpc-gateway...","source":"main","time":"2018-08-25T17:56:39-07:00"} |
149 | 171 | ``` |
150 | 172 |
|
151 | | -### Writing your own SDK |
| 173 | +## Writing your own SDK |
152 | 174 |
|
153 | 175 | If there isn't a SDK for the language and platform you are looking for, you have several options: |
154 | 176 |
|
155 | | -#### gRPC Client Generation |
| 177 | +### gRPC Client Generation |
156 | 178 |
|
157 | 179 | If client generation is well supported by [gRPC](https://grpc.io/docs/), then generate a client from the |
158 | 180 | [sdk.proto](../sdk.proto), and look at the current [sdks](.) to see how the wrappers are implemented to make interaction |
159 | 181 | with the SDK server simpler for the user. |
160 | 182 |
|
161 | | -#### REST API Implementation |
| 183 | +### REST API Implementation |
162 | 184 |
|
163 | 185 | If client generation is not well supported by gRPC, or if there are other complicating factors, implement the SDK through |
164 | 186 | the [REST](../docs/sdk_rest_api.md) HTTP+JSON interface. This could be written by hand, or potentially generated from |
165 | 187 | the [Swagger/OpenAPI Spec](../sdk.swagger.json). |
166 | 188 |
|
167 | 189 | Finally, if you build something that would be usable by the community, please submit a pull request! |
168 | 190 |
|
169 | | -### Building the Local Tools |
| 191 | +## Building the Local Tools |
170 | 192 |
|
171 | 193 | If you wish to build the binaries for local development from source |
172 | 194 | the `make` target `build-agones-sdk-binary` will compile the necessary binaries |
|
0 commit comments