atrea_control 1.2.1 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/workflows/main.yml +1 -1
- data/.gitignore +1 -0
- data/CHANGELOG.md +24 -0
- data/Gemfile.lock +22 -15
- data/README.md +50 -16
- data/atrea_control.gemspec +16 -12
- data/config/locales/cs.yml +269 -0
- data/config/locales/de.yml +269 -0
- data/config/locales/en.yml +269 -0
- data/lib/atrea_control/duplex/login.rb +107 -0
- data/lib/atrea_control/duplex/request.rb +29 -0
- data/lib/atrea_control/duplex/unit.rb +93 -0
- data/lib/atrea_control/duplex/user_ctrl.rb +138 -0
- data/lib/atrea_control/duplex.rb +6 -197
- data/lib/atrea_control/logger.rb +11 -0
- data/lib/atrea_control/sensor_parser.rb +63 -0
- data/lib/atrea_control/version.rb +3 -1
- data/lib/atrea_control.rb +6 -11
- metadata +28 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 01f3c707897b8cd1626855caaa5cd4758ebeae0497881dd5164c2fb67a610327
|
4
|
+
data.tar.gz: f567bde666512960777679842366f249b0eff130e5a3fd1c487d5d652ef11687
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6f4a7ef12bbfde071d91b350e6b100d4528c3275a2642680cf26117ace31ef9ca9ed3072aaad9cb38189f336ec563d4b764db13238248295fc84ecbfe6977f65
|
7
|
+
data.tar.gz: d933b73a8afe23d567aba8f56d1d58060f53699fc5fadaa2eb897e9ff1a6f2e9aa1ed314b2f805a4923d08038c8db8924b7dfc2e5e155c6219a376e2fe05f84e
|
data/.github/workflows/main.yml
CHANGED
data/.gitignore
CHANGED
data/CHANGELOG.md
CHANGED
@@ -1,4 +1,28 @@
|
|
1
1
|
## [Unreleased]
|
2
|
+
### Changed
|
3
|
+
- refactored codebase to more readable classes
|
4
|
+
- selenium used only for login and then close => obtain SID (and user with unit)
|
5
|
+
- login waiting mechanism
|
6
|
+
### Added
|
7
|
+
- found way how to change mode & power (tell unit to change)
|
8
|
+
|
9
|
+
## [1.4.1] - 2021-12-18
|
10
|
+
### Changed
|
11
|
+
- little refactor
|
12
|
+
|
13
|
+
## [1.4.0] - 2021-12-12
|
14
|
+
### Changed
|
15
|
+
- founded way to get config and data from Atrea server
|
16
|
+
|
17
|
+
## [1.3.1] - 2021-12-11
|
18
|
+
### Changed
|
19
|
+
- version of selenium
|
20
|
+
|
21
|
+
## [1.3.0] - 2021-12-11
|
22
|
+
### Changed
|
23
|
+
- store auth tokens outside
|
24
|
+
- minimize selenium only for login
|
25
|
+
|
2
26
|
## [1.2.1] - 2021-10-30
|
3
27
|
### Changed
|
4
28
|
- login procedure
|
data/Gemfile.lock
CHANGED
@@ -1,10 +1,11 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
atrea_control (
|
4
|
+
atrea_control (2.0.0)
|
5
|
+
i18n (~> 1.8)
|
5
6
|
nokogiri (~> 1.12)
|
6
7
|
rest-client (~> 2.1)
|
7
|
-
selenium-webdriver (~>
|
8
|
+
selenium-webdriver (~> 4.1)
|
8
9
|
|
9
10
|
GEM
|
10
11
|
remote: https://rubygems.org/
|
@@ -12,11 +13,12 @@ GEM
|
|
12
13
|
addressable (2.8.0)
|
13
14
|
public_suffix (>= 2.0.2, < 5.0)
|
14
15
|
ast (2.4.2)
|
15
|
-
childprocess (
|
16
|
+
childprocess (4.1.0)
|
16
17
|
coderay (1.1.3)
|
18
|
+
concurrent-ruby (1.1.9)
|
17
19
|
crack (0.4.5)
|
18
20
|
rexml
|
19
|
-
diff-lcs (1.
|
21
|
+
diff-lcs (1.5.0)
|
20
22
|
docile (1.4.0)
|
21
23
|
domain_name (0.5.20190701)
|
22
24
|
unf (>= 0.0.5, < 1.0.0)
|
@@ -24,15 +26,19 @@ GEM
|
|
24
26
|
http-accept (1.7.0)
|
25
27
|
http-cookie (1.0.4)
|
26
28
|
domain_name (~> 0.5)
|
29
|
+
i18n (1.8.11)
|
30
|
+
concurrent-ruby (~> 1.0)
|
27
31
|
method_source (1.0.0)
|
28
|
-
mime-types (3.
|
32
|
+
mime-types (3.4.1)
|
29
33
|
mime-types-data (~> 3.2015)
|
30
|
-
mime-types-data (3.2021.
|
34
|
+
mime-types-data (3.2021.1115)
|
31
35
|
netrc (0.11.0)
|
32
36
|
nokogiri (1.12.5-x86_64-darwin)
|
33
37
|
racc (~> 1.4)
|
38
|
+
nokogiri (1.12.5-x86_64-linux)
|
39
|
+
racc (~> 1.4)
|
34
40
|
parallel (1.21.0)
|
35
|
-
parser (3.0.2
|
41
|
+
parser (3.0.3.2)
|
36
42
|
ast (~> 2.4.1)
|
37
43
|
pry (0.14.1)
|
38
44
|
coderay (~> 1.1)
|
@@ -41,7 +47,7 @@ GEM
|
|
41
47
|
racc (1.6.0)
|
42
48
|
rainbow (3.0.0)
|
43
49
|
rake (13.0.6)
|
44
|
-
regexp_parser (2.
|
50
|
+
regexp_parser (2.2.0)
|
45
51
|
rest-client (2.1.0)
|
46
52
|
http-accept (>= 1.7.0, < 2.0)
|
47
53
|
http-cookie (>= 1.0.2, < 2.0)
|
@@ -60,24 +66,25 @@ GEM
|
|
60
66
|
rspec-mocks (3.10.2)
|
61
67
|
diff-lcs (>= 1.2.0, < 2.0)
|
62
68
|
rspec-support (~> 3.10.0)
|
63
|
-
rspec-support (3.10.
|
64
|
-
rubocop (1.
|
69
|
+
rspec-support (3.10.3)
|
70
|
+
rubocop (1.24.0)
|
65
71
|
parallel (~> 1.10)
|
66
72
|
parser (>= 3.0.0.0)
|
67
73
|
rainbow (>= 2.2.2, < 4.0)
|
68
74
|
regexp_parser (>= 1.8, < 3.0)
|
69
75
|
rexml
|
70
|
-
rubocop-ast (>= 1.
|
76
|
+
rubocop-ast (>= 1.15.0, < 2.0)
|
71
77
|
ruby-progressbar (~> 1.7)
|
72
78
|
unicode-display_width (>= 1.4.0, < 3.0)
|
73
|
-
rubocop-ast (1.
|
79
|
+
rubocop-ast (1.15.0)
|
74
80
|
parser (>= 3.0.1.1)
|
75
|
-
rubocop-rspec (2.
|
81
|
+
rubocop-rspec (2.6.0)
|
76
82
|
rubocop (~> 1.19)
|
77
83
|
ruby-progressbar (1.11.0)
|
78
84
|
rubyzip (2.3.2)
|
79
|
-
selenium-webdriver (
|
80
|
-
childprocess (>= 0.5, <
|
85
|
+
selenium-webdriver (4.1.0)
|
86
|
+
childprocess (>= 0.5, < 5.0)
|
87
|
+
rexml (~> 3.2, >= 3.2.5)
|
81
88
|
rubyzip (>= 1.2.2)
|
82
89
|
simplecov (0.21.2)
|
83
90
|
docile (~> 1.1)
|
data/README.md
CHANGED
@@ -10,7 +10,9 @@ This gem provide simple DSL by parsing content of https://control.atrea.eu with
|
|
10
10
|
* temperature
|
11
11
|
* fan power
|
12
12
|
* power mode
|
13
|
-
|
13
|
+
* allow change
|
14
|
+
* power
|
15
|
+
* mode
|
14
16
|
|
15
17
|
## Installation
|
16
18
|
|
@@ -30,27 +32,59 @@ Or install it yourself as:
|
|
30
32
|
|
31
33
|
## Usage
|
32
34
|
|
33
|
-
|
34
|
-
|
35
|
-
Default sensor map:
|
35
|
+
At the begin you need obtain `user_id`, `unit_id` and `sid` (auth token). For this use "Login"
|
36
36
|
```ruby
|
37
|
-
|
38
|
-
|
39
|
-
outdoor_temperature: "I10208",
|
40
|
-
current_power: "H10704",
|
41
|
-
current_mode: "H10705",
|
42
|
-
}
|
43
|
-
end
|
37
|
+
tokens = AtreaControl::Duplex::Login.user_tokens login: "myhome", password: "sup3r-S3CR3T-kocicka"
|
38
|
+
tokens # => { user_id: "1234", unit_id: "85425324672", sid: 4012 }
|
44
39
|
```
|
40
|
+
I recommend to store then somewhere...
|
41
|
+
Then you can call Unit for data...
|
42
|
+
|
45
43
|
Example usage:
|
46
44
|
```ruby
|
47
|
-
control = AtreaControl::Duplex.new
|
48
|
-
control.
|
49
|
-
control.
|
50
|
-
|
45
|
+
control = AtreaControl::Duplex::Unit.new user_id: "1234", unit_id: "85425324672", sid: 4012
|
46
|
+
control.values # => { current_power: 88.0, current_mode: "CO2" }
|
47
|
+
control.power # => 88.0
|
48
|
+
```
|
49
|
+
### Dig deeper
|
50
|
+
`AtreaControl::Duplex::Unit` expect optional argument `user_ctrl` which should be object respond to
|
51
|
+
|
52
|
+
`name` (String) = Name of unit
|
53
|
+
`sensors` (Hash) = Map of sensors, for example: `{ outdoor_temperature: "HI10208", current_power: "H10704" }`
|
54
|
+
`modes` (Hash) = Is a map of "changable" modes - in unit its something like "builtin?" modes. They are translated by unit lang - `{ "0" => "Vypnuto", "1" => "Automat" }`
|
55
|
+
`user_modes` (Hash) = Is a map user specific modes, based on home switches / devices (D1, D2, D3, IN1, IN2 ...). They are translated by user texts - `{ "D1" => "Koupelna", "D2" => "CO2", "IN1" => "ovladač" }`
|
56
|
+
|
57
|
+
__Please check [lib/atrea_control/duplex/user_ctrl.rb](./lib/atrea_control/duplex/user_ctrl.rb) for more details !__
|
58
|
+
|
59
|
+
## Development / TODO
|
60
|
+
Login is currently done by selenium - fill login form.
|
61
|
+
I found that Atre submit form to BE, generate some "empty" HTML and JS which onLoad start doing request to queue for "login".
|
62
|
+
|
63
|
+
Re-login user, add login procedure into queue:
|
64
|
+
```bash
|
65
|
+
curl -X POST -d "comm=config%2Flogin.cgi" "https://control.atrea.eu/apps/rd5Control/handle.php?action=unitLogin&user=XXXX&unit=NNNNNNN&table=userUnits&idPwd=YYYYYYY&NFP"
|
66
|
+
```
|
67
|
+
Response is time in seconds when login will ready:
|
68
|
+
```xml
|
69
|
+
<root><sended time="264"/></root>
|
70
|
+
```
|
71
|
+
Based it su shown countdown ...
|
72
|
+
|
73
|
+
|
74
|
+
Request for current queue status
|
75
|
+
```bash
|
76
|
+
curl 'https://control.atrea.eu/apps/rd5Control/handle.php?Sync=1&action=unitQuery&query=loged&user=XXXX&unit=NNNNNNN'
|
77
|
+
```
|
78
|
+
if queue is processed:
|
79
|
+
```xml
|
80
|
+
<root><login uconn="16395889" sid="010101" ver="3001009"/></root>
|
81
|
+
```
|
82
|
+
else
|
83
|
+
```xml
|
84
|
+
<root><login uconn="16390480" sid="0"/></root>
|
51
85
|
```
|
52
86
|
|
53
|
-
|
87
|
+
Goal is to obtain "SID".
|
54
88
|
|
55
89
|
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
56
90
|
|
data/atrea_control.gemspec
CHANGED
@@ -3,14 +3,14 @@
|
|
3
3
|
require_relative "lib/atrea_control/version"
|
4
4
|
|
5
5
|
Gem::Specification.new do |spec|
|
6
|
-
spec.name
|
7
|
-
spec.version
|
8
|
-
spec.authors
|
9
|
-
spec.email
|
10
|
-
|
11
|
-
spec.summary
|
12
|
-
spec.description
|
13
|
-
spec.homepage
|
6
|
+
spec.name = "atrea_control"
|
7
|
+
spec.version = AtreaControl::VERSION
|
8
|
+
spec.authors = ["Lukáš Pokorný"]
|
9
|
+
spec.email = ["pokorny@luk4s.cz"]
|
10
|
+
|
11
|
+
spec.summary = "Get data control.atrea.eu"
|
12
|
+
spec.description = "Read data from web controller of RD5 duplex by Atrea."
|
13
|
+
spec.homepage = "https://github.com/luk4s/atrea_control"
|
14
14
|
spec.required_ruby_version = Gem::Requirement.new(">= 2.7.2")
|
15
15
|
|
16
16
|
spec.metadata["allowed_push_host"] = "https://rubygems.org"
|
@@ -18,14 +18,16 @@ Gem::Specification.new do |spec|
|
|
18
18
|
spec.metadata["homepage_uri"] = spec.homepage
|
19
19
|
spec.metadata["source_code_uri"] = "https://github.com/luk4s/atrea_control"
|
20
20
|
spec.metadata["changelog_uri"] = "https://github.com/luk4s/atrea_control/CHANGELOG.md"
|
21
|
-
|
21
|
+
spec.metadata = {
|
22
|
+
"rubygems_mfa_required" => "true",
|
23
|
+
}
|
22
24
|
# Specify which files should be added to the gem when it is released.
|
23
25
|
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
24
26
|
spec.files = Dir.chdir(File.expand_path(__dir__)) do
|
25
27
|
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{\A(?:test|spec|features)/}) }
|
26
28
|
end
|
27
|
-
spec.bindir
|
28
|
-
spec.executables
|
29
|
+
spec.bindir = "exe"
|
30
|
+
spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
29
31
|
spec.require_paths = ["lib"]
|
30
32
|
|
31
33
|
# Uncomment to register a new dependency of your gem
|
@@ -34,7 +36,9 @@ Gem::Specification.new do |spec|
|
|
34
36
|
# For more information and examples about making a new gem, checkout our
|
35
37
|
# guide at: https://bundler.io/guides/creating_gem.html
|
36
38
|
|
39
|
+
spec.add_dependency "i18n", "~> 1.8"
|
37
40
|
spec.add_dependency "nokogiri", "~> 1.12"
|
38
41
|
spec.add_dependency "rest-client", "~> 2.1"
|
39
|
-
spec.add_dependency "selenium-webdriver", "~>
|
42
|
+
spec.add_dependency "selenium-webdriver", "~> 4.1"
|
43
|
+
|
40
44
|
end
|
@@ -0,0 +1,269 @@
|
|
1
|
+
---
|
2
|
+
cs:
|
3
|
+
mainTitle: Váš specialista na rekuperaci tepla a ekonomii vzduchotechnických systémů
|
4
|
+
save: Uložit
|
5
|
+
cancel: Storno
|
6
|
+
copy: Kopírovat
|
7
|
+
refresh: Obnovit
|
8
|
+
change: Změnit
|
9
|
+
pleaseWait: Prosím, čekejte ...
|
10
|
+
backToHome: Návrat na hlavní stranu
|
11
|
+
mainPage: Hlavní strana
|
12
|
+
serviceMenu: Servisní menu
|
13
|
+
activeFrom: Aktivní od
|
14
|
+
hours: Hodiny
|
15
|
+
minutes: Minuty
|
16
|
+
record: Záznam
|
17
|
+
allowed: Povoleno
|
18
|
+
netSetup: Nastavení sítě
|
19
|
+
getFromDHCP: Načíst hodnoty ze serveru DHCP
|
20
|
+
useNextValues: Použít následující hodnoty
|
21
|
+
addressIP: IP adresa
|
22
|
+
subnetMask: Maska podsítě
|
23
|
+
defaultGW: Výchozí brána
|
24
|
+
serverDNS: DNS server
|
25
|
+
FTPsetup: Nastavení hesla FTP serveru
|
26
|
+
passwordOld: Původní heslo
|
27
|
+
passwordNew: Nové heslo
|
28
|
+
passwordConfirm: Potvrzení nového hesla
|
29
|
+
airCond: Vzduchotechnika
|
30
|
+
airCondSetup: Nastavení vzduchotechniky
|
31
|
+
temperature: Teplota
|
32
|
+
tempSetup: Nastavení teploty
|
33
|
+
notInDemo: V demo verzi není podporováno
|
34
|
+
thisTimeExist: Zadaný čas již existuje
|
35
|
+
serviceSetup: Servisní nastavení
|
36
|
+
activeAlarms: Aktivní alarmy
|
37
|
+
alarmHistory: Historie alarmů
|
38
|
+
unitStarted: Start jednotky
|
39
|
+
active: Aktivní
|
40
|
+
noAlarmDefined: Není definován žádný alarm
|
41
|
+
noAlarmDetected: Není detekován žádný alarm
|
42
|
+
values: Hodnoty
|
43
|
+
parameters: Parametry
|
44
|
+
badInput: Chybné zadání
|
45
|
+
allowedRange: Povolený rozsah
|
46
|
+
start: Start
|
47
|
+
stop: Stop
|
48
|
+
text: Text
|
49
|
+
digiVer: Verze DIGI modulu
|
50
|
+
rdVer: Verze RD modulu
|
51
|
+
unitAddress: Adresa jednotky
|
52
|
+
currentMode: Aktuální mód provozu
|
53
|
+
damageWarning: Pozor nastavením těchto parametrů lze způsobit neadekvátní reakci
|
54
|
+
větrací jednotky, což může zapříčinit její poruchu či poškození. Za neuvážené
|
55
|
+
změny v nastavení výstupů nenese výrobce zařízení žádnou zodpovědnost!
|
56
|
+
parameter: Parametr
|
57
|
+
value: Hodnota
|
58
|
+
minimum: Minimum
|
59
|
+
maximum: Maximum
|
60
|
+
defValue: Výchozí hodnota
|
61
|
+
warning: Varování
|
62
|
+
error: Nastav
|
63
|
+
accessPrompt: Kontrola přístupu, zadejte přístupový kód
|
64
|
+
accessDenied: Přístup odepřen, chybný kód nebo příliš mnoho přihlášených!
|
65
|
+
swVer: Verze software
|
66
|
+
orderNum: Číslo zakázky
|
67
|
+
userSetup: Uživatelské nastavení
|
68
|
+
switchman: Manuál
|
69
|
+
valueOutOfRange: Hodnota leží mimo rozsah
|
70
|
+
fwStep1: Krok 1. - Uložení nastavení
|
71
|
+
fwStep2: Krok 2. - Update firmware
|
72
|
+
fwSTep3: Krok 3. - Obnova nastavení
|
73
|
+
saveSettings: Uložit nastavení
|
74
|
+
updateIt: Provést update
|
75
|
+
restoreSettings: Obnovit nastavení
|
76
|
+
parsNotSaved: Parametry nebyly dosud uloženy
|
77
|
+
errLengthCoo: Chyba dat, použijte jiný prohlížeč
|
78
|
+
parsSaved: Parametry uloženy
|
79
|
+
updateInProcess: Probíhá update, prosím čekejte
|
80
|
+
updateNoFile: Nebyl nalezen žádný soubor pro update
|
81
|
+
updateSucess: UPDATE dokončen
|
82
|
+
updateError: Chyba při updatu
|
83
|
+
manControlOn: Ruční řízení povoleno
|
84
|
+
manControlOff: Ruční řízení neaktivní
|
85
|
+
notConnected: Nepřipojeno
|
86
|
+
PgFW_FS1: Obnova/Záloha nastavení
|
87
|
+
PgFW_S1: Provedení zálohy servisního nastavení
|
88
|
+
PgFW_SB1: Zálohovat
|
89
|
+
PgFW_S2: Obnova servisního nastavení ze zálohy
|
90
|
+
PgFW_SB2: Obnovit
|
91
|
+
PgFW_S3: Obnova nastavení do výrobních hodnot
|
92
|
+
PgFW_SB3: Obnovit
|
93
|
+
PgFW_FS2: Update
|
94
|
+
PgFW_U2: Stažení aplikace pro update
|
95
|
+
PgFW_UB1: Otevřít
|
96
|
+
PgFW_SB1c: 'Přejete si vytvořit zálohu servisního nastavení? '
|
97
|
+
PgFW_SB2c: Opravdu si přejete obnovit servisní nastavení ze zálohy?
|
98
|
+
PgFW_SB3c: Opravdu si přejete obnovit výrobní nastavení?
|
99
|
+
fwUnit: FW Jednotky
|
100
|
+
fwAvail: Dostupný FW
|
101
|
+
restInProgress: Probíhá obnova nastavení
|
102
|
+
restart: Restart
|
103
|
+
activate: Aktivovat
|
104
|
+
deactivate: Deaktivovat
|
105
|
+
badTimeZone: Nesprávné časové pásmo
|
106
|
+
badTime: Nesprávné nastavení času
|
107
|
+
setByPC: Nastavit podle PC
|
108
|
+
msgFindAddr: Zadejte novou adresu jednotky.
|
109
|
+
dtFilterChange: Datum výměny filtru
|
110
|
+
confirmFilter: Potvrdit výměnu
|
111
|
+
confFilterQuest: Opravdu byl filtr vyměněn?
|
112
|
+
'off': Vypnuto
|
113
|
+
'on': Zapnuto
|
114
|
+
dayOfWeek: Den v týdnu
|
115
|
+
monday: Pondělí
|
116
|
+
tuesday: Úterý
|
117
|
+
wednesday: Středa
|
118
|
+
thursday: Čtvrtek
|
119
|
+
friday: Pátek
|
120
|
+
saturday: Sobota
|
121
|
+
sunday: Neděle
|
122
|
+
medium: Střední
|
123
|
+
night: Noc
|
124
|
+
day: Den
|
125
|
+
power: Výkon
|
126
|
+
automatic: Týdenní program
|
127
|
+
manual: Ruční
|
128
|
+
temporary: Dočasné
|
129
|
+
non: Není
|
130
|
+
mode: Režim
|
131
|
+
perVentilation: Periodické větrání
|
132
|
+
ventilation: Větrání
|
133
|
+
circulation: Cirkulace
|
134
|
+
startUp: Náběh
|
135
|
+
runDown: Doběh
|
136
|
+
defrosting: Odtávání rekuperátoru
|
137
|
+
external: Externě
|
138
|
+
inactive: Vypnuto
|
139
|
+
zone: Zóna
|
140
|
+
heating: Topná
|
141
|
+
nonHeating: Netopná
|
142
|
+
dateTime: Datum a čas
|
143
|
+
filterChange: Výměna filtru
|
144
|
+
notWhenAuto: Řízení teploty je nastaveno na automatiku, změna je platná pouze do
|
145
|
+
příští změny režimu.
|
146
|
+
heatingSched: Rozvrh topná sezóna
|
147
|
+
nonHeatingSched: Rozvrh netopná sezóna
|
148
|
+
userSetting: Uživatelské nastavení
|
149
|
+
season: Sezóna
|
150
|
+
modeAC: Režim VZT
|
151
|
+
modeTemp: Režim teploty
|
152
|
+
controlSetting: Nastavení regulace
|
153
|
+
tempSenzorDev: Korekce čidla teploty ovladače
|
154
|
+
inputBlock: Blokování vstupu
|
155
|
+
personsCount: Počet osob
|
156
|
+
thermostatFcn: Funkce termostatu
|
157
|
+
holidayParty: Dovolená / párty
|
158
|
+
texts: Texty
|
159
|
+
txtZone1: Text pro zónu 1
|
160
|
+
txtZone2: Text pro zónu 2
|
161
|
+
txtZone12: Text pro zónu 1 2
|
162
|
+
swInfo: Informace o SW
|
163
|
+
alarms: Alarmy
|
164
|
+
controlAC: Řízení VZT
|
165
|
+
controlTemp: Řízení teploty
|
166
|
+
currentPower: Aktuální výkon
|
167
|
+
requiredPower: Požadovaný výkon
|
168
|
+
requiredTemp: Požadovaná teplota
|
169
|
+
requiredMode: Požadovaný režim
|
170
|
+
indoorTemp: Vnitřní teplota
|
171
|
+
inletTemp: Teplota přívodu
|
172
|
+
czech: Česky
|
173
|
+
german: Německy
|
174
|
+
english: Anglicky
|
175
|
+
eqVent: Rovnotlaké větrání
|
176
|
+
ventCirc: Větrání s cirkulací
|
177
|
+
circDepend: Cirkulace závislá
|
178
|
+
overPrVent: Přetlakové větrání
|
179
|
+
devHeating: Odchylka pro topení
|
180
|
+
devCooling: Odchylka pro chlazení
|
181
|
+
devCoolMax: Odchylka pro chlazení na max.
|
182
|
+
productNumber: Výrobní číslo
|
183
|
+
unitType: Typ jednotky
|
184
|
+
polish: Polsky
|
185
|
+
bySens: Auto - větrání
|
186
|
+
hpDefrosting: Odmražení TČ
|
187
|
+
userLogin: Přihlášení uživatele
|
188
|
+
passwordInput: Zadejte heslo
|
189
|
+
loginCmd: Přihlásit
|
190
|
+
weeklyProgram: Týdenní program
|
191
|
+
italiano: Italsky
|
192
|
+
nightBefCool: Noční předchlazení
|
193
|
+
passwordMenu: Změna hesla
|
194
|
+
enterAllFields: Zadejte všechny údaje!
|
195
|
+
passwordNoChk: Nové heslo a jeho potvrzeni se neshoduje!
|
196
|
+
passwordBad: Heslo může obsahovat pouze znaky a-z, A-Z a číslice!
|
197
|
+
passwordSaved: Heslo bylo uloženo.
|
198
|
+
passwordSaveErr: Chyba při ukládání hesla.
|
199
|
+
unavail: Nedostupná
|
200
|
+
disabledRange: Nepovolený rozsah
|
201
|
+
emergMode: Nouzový režim
|
202
|
+
outdoorTemp: Venkovní teplota
|
203
|
+
currentZone: Aktuální zóna
|
204
|
+
components: Komponenty
|
205
|
+
all: Vše
|
206
|
+
modeAuto: Automat
|
207
|
+
disbalance: Rozvážení
|
208
|
+
saveActive: Uložit / Aktivovat
|
209
|
+
holidays: Svátky
|
210
|
+
vacations: Prázdniny
|
211
|
+
unitDesign: Provedení
|
212
|
+
unitSpec: Specifikace
|
213
|
+
partyStart: Spustit v
|
214
|
+
partyEnd: Ukončit v
|
215
|
+
tsNtsSwitch: Přepnutí TS/NTS
|
216
|
+
tsNtsTemp: Teplota TS/NTS
|
217
|
+
in1Block: Blokace cidla IN1
|
218
|
+
in2Block: Blokace cidla IN2
|
219
|
+
hystHeat: Hystereze topení
|
220
|
+
hystCool: Hystereze chlazení
|
221
|
+
set: Nastavit
|
222
|
+
timeZone: Časové pásmo
|
223
|
+
settingTZ: Nastavení časového pásma
|
224
|
+
producer: Výrobce
|
225
|
+
unitLine: Řada
|
226
|
+
unitSize: Velikost jednotky
|
227
|
+
unitIntDesign: Vnitřní uspořádání
|
228
|
+
currentConfig: Aktuální nastavení
|
229
|
+
monthName1: Leden
|
230
|
+
monthName2: Únor
|
231
|
+
monthName3: Březen
|
232
|
+
monthName4: Duben
|
233
|
+
monthName5: Květen
|
234
|
+
monthName6: Červen
|
235
|
+
monthName7: Červenec
|
236
|
+
monthName8: Srpen
|
237
|
+
monthName9: Září
|
238
|
+
monthName10: Říjen
|
239
|
+
monthName11: Listopad
|
240
|
+
monthName12: Prosinec
|
241
|
+
holidayTip: Svátek / Prázdniny
|
242
|
+
prodCodeInput: Zadejte kód výrobce
|
243
|
+
logType: Typ logu
|
244
|
+
current: Aktuální
|
245
|
+
week: Týden
|
246
|
+
month: Měsíc
|
247
|
+
selectDay: Vyberte den
|
248
|
+
show: Zobrazit
|
249
|
+
dataNotFound: Data nenalezena
|
250
|
+
logLive: On-line
|
251
|
+
holidayVacation: Svátky a prázdniny
|
252
|
+
timeAutoSwitch: Automatické přepnutí na letní čas
|
253
|
+
timeSyncInet: Synchronizace času s Internetem
|
254
|
+
unitTime: Čas jednotky
|
255
|
+
inputs: Vstupy
|
256
|
+
outputs: Výstupy
|
257
|
+
others: Ostatní
|
258
|
+
heatIconTip: Aktivní topení
|
259
|
+
coolIconTip: Aktivní chlazení
|
260
|
+
partyIconTip: Aktivní režim Párty/Dovolená
|
261
|
+
alarmIconTip: Aktivní alarm
|
262
|
+
PgFW_S2A: Záloha z
|
263
|
+
reset: Reset
|
264
|
+
commun: Komunikace
|
265
|
+
serverPing: Služba "Connect server"
|
266
|
+
acsService: Přístup servisu
|
267
|
+
acsDistr: Přístup distributora
|
268
|
+
lastCommun: Poslední komunikace
|
269
|
+
unitName: Jméno jednotky
|