blob: 278611f74c36195b7e2f1f22485727876d7c87f2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
/**
* Traccar
* Traccar GPS tracking server API documentation. To use the API you need to have a server instance. For testing purposes you can use one of free [demo servers](https://www.traccar.org/demo-server/). For production use you can install your own server or get a [subscription service](https://www.traccar.org/product/tracking-server/).
*
* OpenAPI spec version: 4.14
* Contact: support@traccar.org
*
* NOTE: This class is auto generated by the swagger code generator program.
* https://github.com/swagger-api/swagger-codegen.git
* Do not edit the class manually.
*/
package mx.trackermap.TrackerMap.client.apis
import mx.trackermap.TrackerMap.client.models.Position
import mx.trackermap.TrackerMap.client.infrastructure.*
class PositionsApi(basePath: kotlin.String = "https://demo.traccar.org/api") : ApiClient(basePath) {
/**
* Fetches a list of Positions
* We strongly recommend using [Traccar WebSocket API](https://www.traccar.org/traccar-api/) instead of periodically polling positions endpoint. Without any params, it returns a list of last known positions for all the user's Devices. _from_ and _to_ fields are not required with _id_.
* @param deviceId _deviceId_ is optional, but requires the _from_ and _to_ parameters when used (optional)
* @param from in IS0 8601 format. eg. `1963-11-22T18:30:00Z` (optional)
* @param to in IS0 8601 format. eg. `1963-11-22T18:30:00Z` (optional)
* @param id To fetch one or more positions. Multiple params can be passed like `id=31&id=42` (optional)
* @return kotlin.Array<Position>
*/
@Suppress("UNCHECKED_CAST")
suspend fun positionsGet(deviceId: kotlin.Int? = null, from: LocalDateTimeAdapter? = null, to: LocalDateTimeAdapter? = null, id: kotlin.Int? = null): kotlin.Array<Position> {
val query: MutableMap<String, List<String>> = mutableMapOf()
deviceId?.let { query["deviceId"] = listOf("$it") }
from?.let { query["from"] = listOf("$it") }
to?.let { query["to"] = listOf("$it") }
id?.let { query["id"] = listOf("$it") }
val localVariableQuery: MultiValueMap = query
val localVariableConfig = RequestConfig(
RequestMethod.GET,
"/positions", query = localVariableQuery
)
val response = request<kotlin.Array<Position>>(
localVariableConfig
)
return when (response.responseType) {
ResponseType.Success -> (response as Success<*>).data as kotlin.Array<Position>
ResponseType.Informational -> TODO()
ResponseType.Redirection -> TODO()
ResponseType.ClientError -> throw ClientException((response as ClientError<*>).body as? String ?: "Client error")
ResponseType.ServerError -> throw ServerException((response as ServerError<*>).message ?: "Server error")
}
}
}
|