rsmp 0.17.4 → 0.18.1
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/Gemfile.lock +1 -1
- data/lib/rsmp/alarm_state.rb +11 -1
- data/lib/rsmp/component.rb +10 -0
- data/lib/rsmp/site.rb +5 -0
- data/lib/rsmp/supervisor_proxy.rb +10 -0
- data/lib/rsmp/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: c13ff840a61dbc75246df268480d7951f4ca33df2428029a57447e6fb22ea8f9
|
|
4
|
+
data.tar.gz: a1aa8675badf8c95bc50dba84a214a06a15192fb8fb6ff8b4b6bc0e023cc1277
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: de8156a19d3d090deb7c44bdd915141a615dd405ad82e0c0ac5612097bffaf89f0986d379a83787b0ed2bb9c3bae67ff98108c4b42879ed7d5edac0e067294af
|
|
7
|
+
data.tar.gz: 9c41f6118a666513e778fe549cd44b7ac22b94dc98dfe4ae9ae64a5b2583aa505b7addf65cd18afa5290449005c3ef9558f54a09bd7565b7faf51364d43812ef
|
data/Gemfile.lock
CHANGED
data/lib/rsmp/alarm_state.rb
CHANGED
|
@@ -30,6 +30,13 @@ module RSMP
|
|
|
30
30
|
'rvs' => rvs
|
|
31
31
|
}
|
|
32
32
|
end
|
|
33
|
+
|
|
34
|
+
def acknowledge
|
|
35
|
+
change, @acknowledged = !@acknowledged, true
|
|
36
|
+
update_timestamp if change
|
|
37
|
+
change
|
|
38
|
+
end
|
|
39
|
+
|
|
33
40
|
def suspend
|
|
34
41
|
change, @suspended = !@suspended, true
|
|
35
42
|
update_timestamp if change
|
|
@@ -42,8 +49,11 @@ module RSMP
|
|
|
42
49
|
change
|
|
43
50
|
end
|
|
44
51
|
|
|
52
|
+
# according to the rsmp core spec, the only time an alarm changes to unanknowledged,
|
|
53
|
+
# is when it's activated. See:
|
|
54
|
+
# https://rsmp-nordic.org/rsmp_specifications/core/3.2/applicability/basic_structure.html#alarm-status
|
|
45
55
|
def activate
|
|
46
|
-
change, @active = !@active, true
|
|
56
|
+
change, @active, @acknowledged = !@active, true, false
|
|
47
57
|
update_timestamp if change
|
|
48
58
|
change
|
|
49
59
|
end
|
data/lib/rsmp/component.rb
CHANGED
|
@@ -13,6 +13,16 @@ module RSMP
|
|
|
13
13
|
raise UnknownStatus.new "Status #{status_code}/#{status_name} not implemented by #{self.class}"
|
|
14
14
|
end
|
|
15
15
|
|
|
16
|
+
def acknowledge_alarm alarm_code
|
|
17
|
+
alarm = get_alarm_state alarm_code
|
|
18
|
+
if alarm.acknowledge
|
|
19
|
+
log "Acknowledging alarm #{alarm_code}", level: :info
|
|
20
|
+
@node.alarm_acknowledged alarm
|
|
21
|
+
else
|
|
22
|
+
log "Alarm #{alarm_code} already acknowledged", level: :info
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
|
|
16
26
|
def suspend_alarm alarm_code
|
|
17
27
|
alarm = get_alarm_state alarm_code
|
|
18
28
|
if alarm.suspend
|
data/lib/rsmp/site.rb
CHANGED
|
@@ -96,6 +96,11 @@ module RSMP
|
|
|
96
96
|
end
|
|
97
97
|
end
|
|
98
98
|
|
|
99
|
+
def alarm_acknowledged alarm_state
|
|
100
|
+
alarm = AlarmIssue.new( alarm_state.to_hash.merge('aSp' => 'Issue') )
|
|
101
|
+
send_alarm alarm
|
|
102
|
+
end
|
|
103
|
+
|
|
99
104
|
def alarm_suspended_or_resumed alarm_state
|
|
100
105
|
alarm = AlarmIssue.new( alarm_state.to_hash.merge('aSp' => 'Suspend') )
|
|
101
106
|
send_alarm alarm
|
|
@@ -210,6 +210,16 @@ module RSMP
|
|
|
210
210
|
end
|
|
211
211
|
end
|
|
212
212
|
|
|
213
|
+
# handle incoming alarm acknowledge
|
|
214
|
+
def handle_alarm_acknowledge message
|
|
215
|
+
component_id = message.attributes["cId"]
|
|
216
|
+
component = @site.find_component component_id
|
|
217
|
+
alarm_code = message.attribute("aCId")
|
|
218
|
+
log "Received #{message.type} #{alarm_code} acknowledgement", message: message, level: :log
|
|
219
|
+
acknowledge message
|
|
220
|
+
component.acknowledge_alarm alarm_code
|
|
221
|
+
end
|
|
222
|
+
|
|
213
223
|
# handle incoming alarm suspend
|
|
214
224
|
def handle_alarm_suspend message
|
|
215
225
|
component_id = message.attributes["cId"]
|
data/lib/rsmp/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rsmp
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.18.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Emil Tin
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2023-04-
|
|
11
|
+
date: 2023-04-27 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: async
|