예제 #1
0
 def test_temperature_conversion(self):
     original_C = 25.5
     f = misc_utils.celsius_to_fahrenheit(original_C)        
     back_to_C = misc_utils.fahrenheit_to_celsius(f)        
     assert(str(original_C) == str(back_to_C))
     
     original_F = 93.2
     c = misc_utils.fahrenheit_to_celsius(original_F)
     back_to_F = misc_utils.celsius_to_fahrenheit(c)
     assert(original_F == back_to_F)
예제 #2
0
 def __init__(self, probe_id, temperature_C, timestamp=None):
     self.probe_id = str(probe_id)
     self.temperature_C = temperature_C
     self.temperature_F = misc_utils.celsius_to_fahrenheit(temperature_C)
     if timestamp is None:
         self.timestamp = _get_new_timestamp()
     else:
         self.timestamp = int(timestamp)
예제 #3
0
def get_target_temperature_json():
    """ returns information about the current "target" temperature """
    is_overriden = False    
    if brew_logic.temperature_override_C is not None:
        actual_target_C = brew_logic.temperature_override_C
        is_overriden = True
    elif brew_logic.instruction_target_temperature_C is not None: actual_target_C = brew_logic.instruction_target_temperature_C
    elif (brew_logic.instruction_target_temperature_C is None) & (not is_overriden): return 
    if actual_target_C is None: return
    current_instruction_json = ""
    actual_target_F = misc_utils.celsius_to_fahrenheit(actual_target_C)
    if brew_logic.current_instruction_id is not None: current_instruction_json = ',\n"current_instruction_id" : "' + brew_logic.current_instruction_id + '" '
    return '{\n  "target_temperature_C" : ' + str(actual_target_C) + ',\n  "target_temperature_F" : ' + str(actual_target_F) + ',\n  "overridden" : "' + str(is_overriden).lower() + '"' + current_instruction_json + '\n}' 
예제 #4
0
def set_temperature_directly():   
    if _check_for_temperature_override_removal(): return  
    target_temperature_C = _get_parameter_value("target_temperature_C")    
    target_temperature_F = _get_parameter_value("target_temperature_F")
    if (target_temperature_C is not None) & (target_temperature_F is not None):
        abort(400, 'Either set the temperature in Celsius or Fahrenheit, but not both.')    
    if target_temperature_F is not None: target_temperature_C = misc_utils.fahrenheit_to_celsius(float(target_temperature_F))
    brew_logic.set_temperature_overwrite(float(target_temperature_C))
    print 'Target temperature override set to ' + str(target_temperature_C) + 'C/' + str(misc_utils.celsius_to_fahrenheit(float(target_temperature_C))) + 'F'
    response.status = 204