Пример #1
0
 def send_knx_write_temp(self, json_obj, dev, hostname):
     port = self._parser.getValueFromSection('connect', 'port');
     if not port:
         sys.exit(4);
     sock = socket.create_connection((hostname, port));
     val_str = json_obj['data']['value'];
     if ',' in val_str:
         val_str = val_str.replace(',', '.')
     value = utils.convert_temperature_reverse(float(val_str));
     json_str = json.JSONEncoder().encode(
         {
             "packet_type": "knx_write_temp",
             "addr_to_send": str(dev['addr_dst']),
             "value": value[0] + ' ' + value[1]
         }
     );
     self.send_json_obj_to_slave(json_str, sock, hostname, self.aes_slave_keys[hostname]);
     sock.close();
Пример #2
0
 def send_knx_write_temp(self, hostname, json_obj):
     """
     Converts absolute value of temperature (Celsius) in 2 hexadecimal values for
     sending to KNX device
     """
     port = self._parser.getValueFromSection('connect', 'port');
     if not port:
         sys.exit(4);
     sock = socket.create_connection((hostname, port));
     val_str = json_obj['data']['value'];
     if '.' in val_str:
         val_str = val_str.split('.')[0];
     value = utils.convert_temperature_reverse(int(val_str));
     json_str = json.JSONEncoder().encode(
         {
             "packet_type": "knx_write_temp",
             "addr_to_send": json_obj['data']['addr'],
             "value": value[0] + ' ' + value[1]
         }
     );
     self.send_json_obj_to_slave(json_str, sock, hostname, self.aes_slave_keys[hostname]);