Requisição de Escrita

Para realizar a escrita nos dados do dispositivo, basta enviar uma String contendo um objeto JSON serializado com o comando *setDevice* e *incluindo no item *argument as modificações desejadas nos estados das saídas:

{
  "command": "setDevice",
  "argument": {
    "leds": {
      "led0": {
        "on": true,
        "effect": 255,
        "brightness": 48,
        "speed": 50,
        "saturation": 66,
        "color": [
          163,
          255,
          40
        ]
      }
    },
    "outputs": {
      "out0": {
        "on": false
      },
      "out1": {
        "on": true
      },
      "out2": {
        "on": true
      },
      "out3": {
        "on": true
      }
    }
  }
}

Resposta

Imediatamente após receber o comando, o produto aplicará as alterações solicitadas e retornará como resposta uma String contendo um objeto JSON serializado no seguinte formato (contendo o estado final das saídas do produto):

{
  "command": "setDevice",
  "response": {
    "leds": {
      "led0": {
        "on": true,
        "onAut": false,
        "effect": 255,
        "brightness": 48,
        "speed": 50,
        "type": 2,
        "saturation": 66,
        "color": [
          163,
          255,
          40
        ]
      }
    },
    "outputs": {
      "out0": {
        "id": 0,
        "on": false,
        "onAut": true
      },
      "out1": {
        "id": 10,
        "on": true,
        "onAut": true
      },
      "out2": {
        "id": 11,
        "on": true,
        "onAut": true
      },
      "out3": {
        "id": 12,
        "on": true,
        "onAut": true
      },
      "out4": null
    }
  }
}