muizenval

Observe mouse traps remotely
Log | Files | Refs

remote.md (1425B)


      1 # PROTOCOL REMOTE CLIENT
      2 
      3 > Serial USB met 115200 baud!
      4 
      5 **Stuurt JSON-objecten met een newline als terminator**
      6 
      7 - **een request bevat altijd de string `'command'` ([see commands](#commands))**
      8 - **een response bevat altijd de string `'error'` ([see errors](#errors))**
      9 
     10 ## Commands
     11 
     12 ### `hello`
     13 
     14 > initialiseert de connectie
     15 
     16 ```
     17 → { "command": "hello" }
     18 ← { "error": null }
     19 ```
     20 ---
     21 
     22 ### `connect host=<string> port=<int>`
     23 
     24 > opend een remote http-client ipv. de 5g-module
     25 
     26 ```
     27 → { "command": "connect", "host": "muizenval.tk", "port": 8080 }
     28 ← { "error": null }
     29 ```
     30 ---
     31 
     32 ### `send method=<string> endpoint=<string> headers?=<object> body?=<any>`
     33 
     34 &rarr; `code=<int> headers=<object> body=<any>`
     35 > stuurt een http-request naar de server
     36 
     37 ```
     38 → { "command": "send", "method": "POST", "endpoint": "/api/update", "headers": {}, "body": { "latitude": 53.2414306640625, "longitude": 6.533237711588542, "accuracy": 58.479530859171305, "battery": 394, "temperature": 25 } }
     39 ← { "error": null, "code": 200, "headers": { "Content-Type": "application/json" }, "body": {} }
     40 ```
     41 ---
     42 
     43 ## Errors
     44 
     45 | code				| description									|
     46 | ----------------- | --------------------------------------------- |
     47 | `null`			| succes 										|
     48 | `'invalid-json'`	| request is verkeerd geformateerd 				|
     49 | `'not-available'`	| geen connectie naar de server mogelijk 		|
     50 | `'not-connected'`	| request verstuurd zonder geconnect te zijn 	|