コード例 #1
0
ファイル: eeprom.py プロジェクト: perrys/AutoMateHome
 def toJSON(self):
   d = dict()
   utils.merge_dict_if_not_default(vars(self), d, "reserved", 0)
   utils.merge_dict_if_not_default(vars(self), d, "clauses", None)
   d["house_code"]  = codec.VALUE_TO_HOUSECODE_MAP[self.house_code]
   d["unit_code"] = codec.VALUE_TO_UNITCODE_MAP[self.unit_code]
   d["trigger_on_off"] = self.trigger_on_off and "on" or "off"
   d["macro_id"] = self.macro_ptr
   utils.convert_key_to_hex_string(d, "macro_id")
   return d
コード例 #2
0
ファイル: eeprom.py プロジェクト: perrys/AutoMateHome
  def toJSON(self):
    l = utils.merge_dict(vars(self), None, "delay_secs", "id")
    utils.convert_key_to_hex_string(l, "id")
#    l["reserved"] = utils.to_binary_string(self.reserved_1)
    elements = l["elements"] = []
    for d in self.elements:
      units = d["unit_bitmap_hi"], d["unit_bitmap_lo"]
      d["units"] = [k for k,v in codec.DEVICECODE_MASK.decode(units).iteritems() if v == 1]
      del d["unit_bitmap_lo"]
      del d["unit_bitmap_hi"]
      d["function_code"] = codec.FUNCTIONS_ZERO_OFFSET[d["function_code"]]
      d["house_code"] = codec.VALUE_TO_HOUSECODE_MAP[d["house_code"]]
      elements.append(d)
    return l
コード例 #3
0
ファイル: eeprom.py プロジェクト: perrys/AutoMateHome
 def toJSON(self):
   t = vars(self)
   tijson = utils.merge_dict(t, None, "start_macro_ptr", "stop_macro_ptr", "start_macro_id", "stop_macro_id")
   utils.convert_key_to_hex_string(tijson, "start_macro_ptr", "stop_macro_ptr", "start_macro_id", "stop_macro_id")
   if utils.merge_dict_if_not_default(t, tijson, "begin_year_day", 0):
     tijson["begin_date"] = utils.x10_year_day_to_string(t["begin_year_day"])
   if utils.merge_dict_if_not_default(t, tijson, "end_year_day", 367):
     tijson["end_date"] = utils.x10_year_day_to_string(t["end_year_day"])
   utils.merge_dict_if_not_default(t, tijson, "start_security", 0)
   utils.merge_dict_if_not_default(t, tijson, "stop_security", 0)
   tijson["start_time"] = utils.x10_time_to_string(t["start_double_hour"], t["start_min"])
   tijson["stop_time"] = utils.x10_time_to_string(t["stop_double_hour"], t["stop_min"])
   tijson["week_day_mask"] = utils.week_mask_to_string(t["week_day_mask"])
   return tijson