# Исходный вариант функции
def get_current_values(self, device_id, subsystem, value_name_list):
    if device_id != 'gius-controller':
        return APIBase.get_current_values(self, device_id, subsystem, value_name_list)
    
    result = {}
    for value_name in value_name_list:
        try:
            if value_name.startswith("AI"):
                v = self.get_sensorman().get_sensor_value_by_alias("teploUB.adc%s"%(value_name[-1]))
            else:
                v = self.get_sensorman().get_sensor_value_by_alias("DI%s"%(value_name[-1]))
            result[value_name] = ( v, int(time.time()), OPC_QUALITY_GOOD )
        except Exception as e:
            self.logger.exception("get_current_values {0} error {1}".format(device_id, e))
            result[value_name] = (None, None, OPC_QUALITY_BAD)
    return result

# Вариант с дополнениями
def get_current_values(self, device_id, subsystem, value_name_list):
    if device_id != 'gius-controller':
        return APIBase.get_current_values(self, device_id, subsystem, value_name_list)
    
    result = {}
    for value_name in value_name_list:
        try:
            if value_name.startswith("AI"):
                v = self.get_sensorman().get_sensor_value_by_alias("teploUB.adc%s"%(value_name[-1]))
            else:
                v = self.get_sensorman().get_sensor_value_by_alias("DI%s"%(value_name[-1]))
            result[value_name] = ( v, int(time.time()), OPC_QUALITY_GOOD, "str_param" )
        except Exception as e:
            self.logger.exception("get_current_values {0} error {1}".format(device_id, e))
            result[value_name] = (None, None, OPC_QUALITY_BAD)
    return result