openhab-scripting 2.19.0 → 2.20.1
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c8d7de90fee54798d88e51a4ea9f7ac6437852d7c4eb5da2b847700f0dedd5de
|
4
|
+
data.tar.gz: 9a91e9a2ee0d977f4e2a0dd9b0ba50b1db89c71554596bfd8ca86bd9ec168d68
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1d956f08c8884347de414eb9de04a69184c9d95a39c35bd0ff8685ceefb28efe64945a944a87efd11da16f5dceda77be453693b84cc816a7541e3e923b218479
|
7
|
+
data.tar.gz: ab3fd69c22c115a03848b112922f9b489d69c35a1bac3040ef40c9a73ffa8540e73318011768647fe0793a197973239e028949126a83ed233340efbeb667f490
|
@@ -101,10 +101,10 @@ module OpenHAB
|
|
101
101
|
#
|
102
102
|
# Get the string representation of the state of the item
|
103
103
|
#
|
104
|
-
# @return [String] State of the item as a string
|
104
|
+
# @return [String] State of the item as a string
|
105
105
|
#
|
106
106
|
def to_s
|
107
|
-
state
|
107
|
+
method(:state).super_method.call.to_s # call the super state to include UNDEF/NULL
|
108
108
|
end
|
109
109
|
|
110
110
|
#
|
@@ -134,6 +134,18 @@ module OpenHAB
|
|
134
134
|
end
|
135
135
|
end
|
136
136
|
|
137
|
+
#
|
138
|
+
# Implements Hash#dig-like functionaity to metadata
|
139
|
+
#
|
140
|
+
# @param [String] key The first key
|
141
|
+
# @param [Array<String, Symbol>] keys More keys to dig deeper
|
142
|
+
#
|
143
|
+
# @return [OpenHAB::DSL::MonkeyPatch::Items::MetadataItem], or nil if the namespace doesn't exist
|
144
|
+
#
|
145
|
+
def dig(key, *keys)
|
146
|
+
keys.empty? ? self[key]&.value : self[key]&.dig(*keys)
|
147
|
+
end
|
148
|
+
|
137
149
|
#
|
138
150
|
# Enumerates through all the namespaces
|
139
151
|
#
|
@@ -70,7 +70,7 @@ module OpenHAB
|
|
70
70
|
def create_queue(inputs)
|
71
71
|
case check_guards(event: inputs&.dig('event'))
|
72
72
|
when true
|
73
|
-
@run_queue.dup
|
73
|
+
@run_queue.dup.grep_v(RuleConfig::Otherwise)
|
74
74
|
when false
|
75
75
|
@run_queue.dup.grep(RuleConfig::Otherwise)
|
76
76
|
end
|
@@ -145,16 +145,14 @@ module OpenHAB
|
|
145
145
|
#
|
146
146
|
#
|
147
147
|
def process_trigger_delay(trigger_delay, mod, inputs)
|
148
|
-
if
|
148
|
+
if trigger_delay.timer_active?
|
149
|
+
process_active_timer(inputs, mod, trigger_delay)
|
150
|
+
elsif check_trigger_guards(trigger_delay, inputs)
|
149
151
|
logger.trace("Trigger Guards Matched for #{trigger_delay}, delaying rule execution")
|
150
152
|
# Add timer and attach timer to delay object, and also state being tracked to so timer can be cancelled if
|
151
153
|
# state changes
|
152
154
|
# Also another timer should not be created if changed to same value again but instead rescheduled
|
153
|
-
|
154
|
-
process_active_timer(inputs, mod, trigger_delay)
|
155
|
-
else
|
156
|
-
create_trigger_delay_timer(inputs, mod, trigger_delay)
|
157
|
-
end
|
155
|
+
create_trigger_delay_timer(inputs, mod, trigger_delay)
|
158
156
|
else
|
159
157
|
logger.trace("Trigger Guards did not match for #{trigger_delay}, ignoring trigger.")
|
160
158
|
end
|
@@ -173,7 +171,8 @@ module OpenHAB
|
|
173
171
|
trigger_delay.timer = after(trigger_delay.duration) do
|
174
172
|
logger.trace("Delay Complete for #{trigger_delay}, executing rule")
|
175
173
|
trigger_delay.timer = nil
|
176
|
-
|
174
|
+
queue = create_queue(inputs)
|
175
|
+
process_queue(queue, mod, inputs)
|
177
176
|
end
|
178
177
|
trigger_delay.tracking_to = inputs['newState']
|
179
178
|
end
|
data/lib/openhab/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: openhab-scripting
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.20.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Brian O'Connell
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-02-
|
11
|
+
date: 2021-02-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|