Class: Mushy::SenseHatEnvironmentalSensors
- Inherits:
-
SimplePythonProgram
- Object
- Flux
- Bash
- SimplePythonProgram
- Mushy::SenseHatEnvironmentalSensors
- Defined in:
- lib/mushy/fluxs/sense_hat_environmental_sensors.rb
Instance Attribute Summary
Attributes inherited from Flux
#config, #flow, #id, #masher, #parent_fluxs, #subscribed_to, #type
Class Method Summary collapse
Instance Method Summary collapse
Methods inherited from SimplePythonProgram
#adjust, default_config, #process
Methods inherited from Bash
Methods inherited from Flux
#convert_this_to_an_array, #convert_to_symbolized_hash, #execute, #execute_single_event, #group_these_results, #guard, #ignore_these_results, inherited, #initialize, #join_these_results, #limit_these_results, #merge_these_results, #model_these_results, #outgoing_split_these_results, #process, #shape_these, #sort_these_results, #standardize_these
Constructor Details
This class inherits a constructor from Mushy::Flux
Class Method Details
.default_measurements ⇒ Object
34 35 36 |
# File 'lib/mushy/fluxs/sense_hat_environmental_sensors.rb', line 34 def self.default_measurements [:humidity, :temperature, :pressure] end |
.details ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/mushy/fluxs/sense_hat_environmental_sensors.rb', line 5 def self.details { name: 'SenseHatEnvironmentalSensors', description: 'Pull values from the Sense HAT environmental sensors.', config: Mushy::SimplePythonProgram.default_config, }.tap do |c| measurements .sort_by { |x| default_measurements.include?(x) ? 0 : 1 } .each do |measurement| c[:config][measurement] = { description: "Pull #{measurement}.", type: 'boolean', shrink: true, value: default_measurements.include?(measurement) ? 'true' : '', } end end end |
.measurements ⇒ Object
24 25 26 27 28 29 30 31 32 |
# File 'lib/mushy/fluxs/sense_hat_environmental_sensors.rb', line 24 def self.measurements [ :humidity, :temperature, :temperature_from_humidity, :temperature_from_pressure, :pressure, ] end |
Instance Method Details
#python_program(event, config) ⇒ Object
38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/mushy/fluxs/sense_hat_environmental_sensors.rb', line 38 def python_program event, config values = self.class.measurements .select { |x| config[x] == 'true' } .reduce({}) { |t, i| t[i] = "get_#{i}"; t} .map { |m| "\"#{m[0]}\": sense.#{m[1]}()" } .join(',') <<PYTHON from sense_hat import SenseHat import json sense = SenseHat() value = json.dumps({#{values}}) print(value) PYTHON end |