openhab-scripting 4.28.0 → 4.30.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/lib/openhab/dsl/items/group_item.rb +7 -0
- data/lib/openhab/dsl/items/item_registry.rb +1 -1
- data/lib/openhab/dsl/rules/automation_rule.rb +10 -158
- data/lib/openhab/dsl/rules/rule.rb +4 -46
- data/lib/openhab/dsl/rules/rule_config.rb +4 -3
- data/lib/openhab/dsl/rules/triggers/changed.rb +51 -18
- data/lib/openhab/dsl/rules/triggers/conditions/duration.rb +158 -0
- data/lib/openhab/dsl/rules/triggers/conditions/proc.rb +150 -0
- data/lib/openhab/dsl/rules/triggers/cron.rb +118 -0
- data/lib/openhab/dsl/rules/triggers/trigger.rb +2 -1
- data/lib/openhab/dsl/rules/triggers/updated.rb +59 -16
- data/lib/openhab/dsl/rules/triggers/watch.rb +1 -3
- data/lib/openhab/dsl/types/date_time_type.rb +2 -2
- data/lib/openhab/dsl/types/decimal_type.rb +1 -1
- data/lib/openhab/dsl/types/hsb_type.rb +1 -1
- data/lib/openhab/dsl/types/increase_decrease_type.rb +1 -1
- data/lib/openhab/dsl/types/next_previous_type.rb +1 -1
- data/lib/openhab/dsl/types/on_off_type.rb +1 -1
- data/lib/openhab/dsl/types/open_closed_type.rb +1 -1
- data/lib/openhab/dsl/types/percent_type.rb +1 -1
- data/lib/openhab/dsl/types/play_pause_type.rb +1 -1
- data/lib/openhab/dsl/types/point_type.rb +1 -1
- data/lib/openhab/dsl/types/quantity_type.rb +1 -1
- data/lib/openhab/dsl/types/refresh_type.rb +1 -1
- data/lib/openhab/dsl/types/rewind_fastforward_type.rb +1 -1
- data/lib/openhab/dsl/types/stop_move_type.rb +1 -1
- data/lib/openhab/dsl/types/string_type.rb +1 -1
- data/lib/openhab/dsl/types/un_def_type.rb +1 -1
- data/lib/openhab/dsl/types/up_down_type.rb +1 -1
- data/lib/openhab/log/configuration.rb +1 -1
- data/lib/openhab/log/logger.rb +10 -0
- data/lib/openhab/version.rb +1 -1
- metadata +4 -3
- data/lib/openhab/dsl/rules/cron_trigger_rule.rb +0 -42
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: 4.
|
4
|
+
version: 4.30.0
|
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: 2022-01-
|
11
|
+
date: 2022-01-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -97,7 +97,6 @@ files:
|
|
97
97
|
- lib/openhab/dsl/openhab.rb
|
98
98
|
- lib/openhab/dsl/persistence.rb
|
99
99
|
- lib/openhab/dsl/rules/automation_rule.rb
|
100
|
-
- lib/openhab/dsl/rules/cron_trigger_rule.rb
|
101
100
|
- lib/openhab/dsl/rules/guard.rb
|
102
101
|
- lib/openhab/dsl/rules/item_event.rb
|
103
102
|
- lib/openhab/dsl/rules/property.rb
|
@@ -107,6 +106,8 @@ files:
|
|
107
106
|
- lib/openhab/dsl/rules/triggers/changed.rb
|
108
107
|
- lib/openhab/dsl/rules/triggers/channel.rb
|
109
108
|
- lib/openhab/dsl/rules/triggers/command.rb
|
109
|
+
- lib/openhab/dsl/rules/triggers/conditions/duration.rb
|
110
|
+
- lib/openhab/dsl/rules/triggers/conditions/proc.rb
|
110
111
|
- lib/openhab/dsl/rules/triggers/cron.rb
|
111
112
|
- lib/openhab/dsl/rules/triggers/generic.rb
|
112
113
|
- lib/openhab/dsl/rules/triggers/trigger.rb
|
@@ -1,42 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'java'
|
4
|
-
require 'openhab/log/logger'
|
5
|
-
|
6
|
-
module OpenHAB
|
7
|
-
module DSL
|
8
|
-
#
|
9
|
-
# Creates and manages OpenHAB Rules
|
10
|
-
#
|
11
|
-
module Rules
|
12
|
-
#
|
13
|
-
# Specialized rule for cron triggers with attachments because OpenHAB does not provide trigger UID for cron rules
|
14
|
-
#
|
15
|
-
class CronTriggerRule < Java::OrgOpenhabCoreAutomationModuleScriptRulesupportSharedSimple::SimpleRule
|
16
|
-
include OpenHAB::Log
|
17
|
-
|
18
|
-
def initialize(rule_config:, rule:, trigger:)
|
19
|
-
super()
|
20
|
-
set_name("#{rule_config.name}-cron-#{trigger.id}")
|
21
|
-
set_triggers([trigger])
|
22
|
-
@rule = rule
|
23
|
-
@trigger = trigger
|
24
|
-
logger.trace("Created Cron Trigger Rule for #{@trigger}")
|
25
|
-
end
|
26
|
-
|
27
|
-
#
|
28
|
-
# Execute the rule
|
29
|
-
#
|
30
|
-
# @param [Map] mod map provided by OpenHAB rules engine
|
31
|
-
# @param [Map] inputs map provided by OpenHAB rules engine containing event and other information
|
32
|
-
#
|
33
|
-
#
|
34
|
-
def execute(mod = nil, _inputs = nil)
|
35
|
-
logger.trace "Trigger #{@trigger} fired for base rule #{@rule.inspect}"
|
36
|
-
inputs = { 'module' => @trigger.id }
|
37
|
-
@rule.execute(mod, inputs)
|
38
|
-
end
|
39
|
-
end
|
40
|
-
end
|
41
|
-
end
|
42
|
-
end
|