First idea for new API concept

This commit is contained in:
UnchartedBull
2019-10-09 22:39:41 +02:00
parent 11897cdbbc
commit 6c36d4b924

View File

@@ -143,34 +143,18 @@ class EnclosurePlugin(octoprint.plugin.StartupPlugin, octoprint.plugin.TemplateP
self.rpi_inputs = self._settings.get(["rpi_inputs"])
# ~~ Blueprintplugin mixin
@octoprint.plugin.BlueprintPlugin.route("/temperature", methods=["GET"])
def get_temperature_status(self):
temperature_status = []
@octoprint.plugin.BlueprintPlugin.route("/input", methods=["GET"])
def get_inputs(self):
inputs = []
for rpi_input in self.rpi_inputs:
if rpi_input['input_type'] == 'temperature_sensor':
temperature = self.to_float(rpi_input['temp_sensor_temp'])
humidity = self.to_float(rpi_input['temp_sensor_humidity'])
index = self.to_int(rpi_input['index_id'])
label = rpi_input['label']
temperature_status.append({'index_id': index, 'label': label, 'temperature': temperature, 'humidity': humidity})
return jsonify(temperature_status)
inputs.append(dict(index_id=rpi_input['index_id'], label=rpi_input['label']))
return jsonify(inputs)
@octoprint.plugin.BlueprintPlugin.route("/temperature/<int:identifier>", methods=["GET"])
def get_single_temperature_status(self, identifier):
@octoprint.plugin.BlueprintPlugin.route("/input/<int:identifier>", methods=["GET"])
def get_input_status(self, identifier):
for rpi_input in self.rpi_inputs:
if identifier == self.to_int(rpi_input['index_id']):
return jsonify({
'indexId': rpi_input['index_id'],
'gpioPin': rpi_input['gpio_pin'],
'type': rpi_input['temp_sensor_type'],
'inputType': rpi_input['input_type'],
'label': rpi_input['label'],
'address': rpi_input['temp_sensor_address'],
'humidity': self.to_float(rpi_input['temp_sensor_humidity']),
'temperature': self.to_float(rpi_input['temp_sensor_temp']),
'useFahrenheit': rpi_input['use_fahrenheit'],
'showNavbar': rpi_input['temp_sensor_navbar']
})
return jsonify(rpi_input)
return make_response('', 404)
@octoprint.plugin.BlueprintPlugin.route("/temperature/<int:identifier>", methods=["PATCH"])