rsmp 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (102) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/lib/rsmp/version.rb +1 -1
  4. data/lib/rsmp_schema/schema/core/aggregated_status.json +25 -0
  5. data/lib/rsmp_schema/schema/core/alarm.json +55 -0
  6. data/lib/rsmp_schema/schema/core/command_request.json +24 -0
  7. data/lib/rsmp_schema/schema/core/command_response.json +34 -0
  8. data/lib/rsmp_schema/schema/core/core.json +35 -0
  9. data/lib/rsmp_schema/schema/core/definitions.json +47 -0
  10. data/lib/rsmp_schema/schema/core/message_ack.json +11 -0
  11. data/lib/rsmp_schema/schema/core/message_not_ack.json +15 -0
  12. data/lib/rsmp_schema/schema/core/rsmp.json +124 -0
  13. data/lib/rsmp_schema/schema/core/status.json +21 -0
  14. data/lib/rsmp_schema/schema/core/status_request.json +5 -0
  15. data/lib/rsmp_schema/schema/core/status_response.json +30 -0
  16. data/lib/rsmp_schema/schema/core/status_subscribe.json +27 -0
  17. data/lib/rsmp_schema/schema/core/status_unsubscribe.json +5 -0
  18. data/lib/rsmp_schema/schema/core/status_update.json +30 -0
  19. data/lib/rsmp_schema/schema/core/version.json +47 -0
  20. data/lib/rsmp_schema/schema/core/watchdog.json +9 -0
  21. data/lib/rsmp_schema/schema/tlc/alarms/A0001.json +7 -0
  22. data/lib/rsmp_schema/schema/tlc/alarms/A0002.json +7 -0
  23. data/lib/rsmp_schema/schema/tlc/alarms/A0003.json +7 -0
  24. data/lib/rsmp_schema/schema/tlc/alarms/A0004.json +7 -0
  25. data/lib/rsmp_schema/schema/tlc/alarms/A0005.json +7 -0
  26. data/lib/rsmp_schema/schema/tlc/alarms/A0006.json +7 -0
  27. data/lib/rsmp_schema/schema/tlc/alarms/A0007.json +7 -0
  28. data/lib/rsmp_schema/schema/tlc/alarms/A0008.json +19 -0
  29. data/lib/rsmp_schema/schema/tlc/alarms/A0009.json +7 -0
  30. data/lib/rsmp_schema/schema/tlc/alarms/A0101.json +7 -0
  31. data/lib/rsmp_schema/schema/tlc/alarms/A0201.json +20 -0
  32. data/lib/rsmp_schema/schema/tlc/alarms/A0202.json +20 -0
  33. data/lib/rsmp_schema/schema/tlc/alarms/A0301.json +48 -0
  34. data/lib/rsmp_schema/schema/tlc/alarms/A0302.json +58 -0
  35. data/lib/rsmp_schema/schema/tlc/alarms/alarms.json +68 -0
  36. data/lib/rsmp_schema/schema/tlc/commands/M0001.json +48 -0
  37. data/lib/rsmp_schema/schema/tlc/commands/M0002.json +38 -0
  38. data/lib/rsmp_schema/schema/tlc/commands/M0003.json +38 -0
  39. data/lib/rsmp_schema/schema/tlc/commands/M0004.json +29 -0
  40. data/lib/rsmp_schema/schema/tlc/commands/M0005.json +38 -0
  41. data/lib/rsmp_schema/schema/tlc/commands/M0006.json +38 -0
  42. data/lib/rsmp_schema/schema/tlc/commands/M0007.json +29 -0
  43. data/lib/rsmp_schema/schema/tlc/commands/M0008.json +38 -0
  44. data/lib/rsmp_schema/schema/tlc/commands/M0010.json +29 -0
  45. data/lib/rsmp_schema/schema/tlc/commands/M0011.json +29 -0
  46. data/lib/rsmp_schema/schema/tlc/commands/M0012.json +29 -0
  47. data/lib/rsmp_schema/schema/tlc/commands/M0013.json +29 -0
  48. data/lib/rsmp_schema/schema/tlc/commands/M0014.json +38 -0
  49. data/lib/rsmp_schema/schema/tlc/commands/M0015.json +38 -0
  50. data/lib/rsmp_schema/schema/tlc/commands/M0016.json +29 -0
  51. data/lib/rsmp_schema/schema/tlc/commands/M0017.json +29 -0
  52. data/lib/rsmp_schema/schema/tlc/commands/M0018.json +38 -0
  53. data/lib/rsmp_schema/schema/tlc/commands/M0019.json +47 -0
  54. data/lib/rsmp_schema/schema/tlc/commands/M0103.json +39 -0
  55. data/lib/rsmp_schema/schema/tlc/commands/command_requests.json +7 -0
  56. data/lib/rsmp_schema/schema/tlc/commands/command_responses.json +7 -0
  57. data/lib/rsmp_schema/schema/tlc/commands/commands.json +85 -0
  58. data/lib/rsmp_schema/schema/tlc/statuses/S0001.json +44 -0
  59. data/lib/rsmp_schema/schema/tlc/statuses/S0002.json +17 -0
  60. data/lib/rsmp_schema/schema/tlc/statuses/S0003.json +26 -0
  61. data/lib/rsmp_schema/schema/tlc/statuses/S0004.json +26 -0
  62. data/lib/rsmp_schema/schema/tlc/statuses/S0005.json +17 -0
  63. data/lib/rsmp_schema/schema/tlc/statuses/S0006.json +26 -0
  64. data/lib/rsmp_schema/schema/tlc/statuses/S0007.json +26 -0
  65. data/lib/rsmp_schema/schema/tlc/statuses/S0008.json +26 -0
  66. data/lib/rsmp_schema/schema/tlc/statuses/S0009.json +26 -0
  67. data/lib/rsmp_schema/schema/tlc/statuses/S0010.json +26 -0
  68. data/lib/rsmp_schema/schema/tlc/statuses/S0011.json +26 -0
  69. data/lib/rsmp_schema/schema/tlc/statuses/S0012.json +26 -0
  70. data/lib/rsmp_schema/schema/tlc/statuses/S0013.json +26 -0
  71. data/lib/rsmp_schema/schema/tlc/statuses/S0014.json +17 -0
  72. data/lib/rsmp_schema/schema/tlc/statuses/S0015.json +17 -0
  73. data/lib/rsmp_schema/schema/tlc/statuses/S0016.json +17 -0
  74. data/lib/rsmp_schema/schema/tlc/statuses/S0017.json +17 -0
  75. data/lib/rsmp_schema/schema/tlc/statuses/S0018.json +17 -0
  76. data/lib/rsmp_schema/schema/tlc/statuses/S0019.json +17 -0
  77. data/lib/rsmp_schema/schema/tlc/statuses/S0020.json +27 -0
  78. data/lib/rsmp_schema/schema/tlc/statuses/S0021.json +17 -0
  79. data/lib/rsmp_schema/schema/tlc/statuses/S0022.json +17 -0
  80. data/lib/rsmp_schema/schema/tlc/statuses/S0023.json +17 -0
  81. data/lib/rsmp_schema/schema/tlc/statuses/S0024.json +17 -0
  82. data/lib/rsmp_schema/schema/tlc/statuses/S0025.json +80 -0
  83. data/lib/rsmp_schema/schema/tlc/statuses/S0026.json +17 -0
  84. data/lib/rsmp_schema/schema/tlc/statuses/S0027.json +17 -0
  85. data/lib/rsmp_schema/schema/tlc/statuses/S0028.json +17 -0
  86. data/lib/rsmp_schema/schema/tlc/statuses/S0029.json +17 -0
  87. data/lib/rsmp_schema/schema/tlc/statuses/S0091.json +28 -0
  88. data/lib/rsmp_schema/schema/tlc/statuses/S0092.json +28 -0
  89. data/lib/rsmp_schema/schema/tlc/statuses/S0095.json +17 -0
  90. data/lib/rsmp_schema/schema/tlc/statuses/S0096.json +62 -0
  91. data/lib/rsmp_schema/schema/tlc/statuses/S0201.json +26 -0
  92. data/lib/rsmp_schema/schema/tlc/statuses/S0202.json +26 -0
  93. data/lib/rsmp_schema/schema/tlc/statuses/S0203.json +26 -0
  94. data/lib/rsmp_schema/schema/tlc/statuses/S0204.json +98 -0
  95. data/lib/rsmp_schema/schema/tlc/statuses/S0205.json +26 -0
  96. data/lib/rsmp_schema/schema/tlc/statuses/S0206.json +26 -0
  97. data/lib/rsmp_schema/schema/tlc/statuses/S0207.json +26 -0
  98. data/lib/rsmp_schema/schema/tlc/statuses/S0208.json +98 -0
  99. data/lib/rsmp_schema/schema/tlc/statuses/statuses.json +177 -0
  100. data/lib/rsmp_schema/schema/tlc/sxl.json +24 -0
  101. data/rsmp.gemspec +13 -0
  102. metadata +98 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 250eabe3e6427dd2032d46756055c93175383c5a32c5ca13d56a9b237bd9d033
4
- data.tar.gz: 34d1ce845bbb2029b1bb00165d66c4e1181c8479ab99953b4d1687d51180d50c
3
+ metadata.gz: 4008335a554fe48c0d8b0fa808480add7107c083bfa3a5ef22fea6817dae2fe6
4
+ data.tar.gz: 3ea6c89c329fe4cff1a0f05466139a5da5e46609dfccb64a8b428a1d3039bb2a
5
5
  SHA512:
6
- metadata.gz: a12e73c1c5a98c557cb733ce2ed1251ece7ade05763fb3f657846d12120413b020aa3a716b48d3c76aa4a913898732b0f87add636a790052390777d54308ed14
7
- data.tar.gz: 449d24617bc74cafab1f314fba2297fcb17fcfba74743c69a2720ba9ca9297e3d61798be49d4303c0294b5215262382b8eb570d91f04e1318e570094739b7455
6
+ metadata.gz: 29f9a064d6bbc6589d113a7d31351fdfc65d0ea50b585769c2bbcb86a9920e0187d0e9afc589c250d7a83dada5b65aeaff9740f38377b268b9c3736773cdff76
7
+ data.tar.gz: 0e419993a2db66a8b815f896a0e121bc26fe25272263e34ee33bf716426f432ca2cbb5bde4e09a4705162e8be3d4ee3eaabf83729d67cfc0b5dc839281cb7dd8
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rsmp (0.1.0)
4
+ rsmp (0.1.1)
5
5
  async (~> 1.23.0)
6
6
  async-io (~> 1.27.0)
7
7
  colorize (~> 0.8.1)
data/lib/rsmp/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module RSMP
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
@@ -0,0 +1,25 @@
1
+ {
2
+ "title" : "Aggregated Status",
3
+ "description" : "Aggregated status message",
4
+ "properties" : {
5
+ "mId" : { "$ref": "definitions.json#/message_id" },
6
+ "aSTS" : { "$ref": "definitions.json#/timestamp" },
7
+ "fP" : {
8
+ "description" : "Functional position",
9
+ "type" : "string, null"
10
+ },
11
+ "fS" : {
12
+ "description" : "Functional position",
13
+ "type" : "string, null"
14
+ },
15
+ "se" : {
16
+ "type" : "array",
17
+ "minItems": 8,
18
+ "maxItems": 8,
19
+ "items" : {
20
+ "type" : "boolean"
21
+ }
22
+ }
23
+ },
24
+ "required" : [ "mId", "aSTS", "fP", "fS", "se" ]
25
+ }
@@ -0,0 +1,55 @@
1
+ {
2
+ "title" : "Alarm",
3
+ "description" : "Alarm messsage",
4
+ "properties" : {
5
+ "mId" : { "$ref": "definitions.json#/message_id" },
6
+ "cId" : { "$ref": "definitions.json#/component_id" },
7
+ "aCId" : { "$ref": "definitions.json#/alarm_code" },
8
+ "xACId" : { "description" : "External alarm code id", "type" : "string" },
9
+ "aSp" : {
10
+ "description" : "Alarm message variant",
11
+ "type" : "string",
12
+ "enum" : [ "Issue", "Acknowledge", "Suspend", "Resume" ]
13
+ },
14
+ "ack" : {
15
+ "description" : "Acknowledgement",
16
+ "type" : "string",
17
+ "enum" : [ "Acknowledged", "notAcknowledged" ]
18
+ },
19
+ "aS" : {
20
+ "description" : "Status",
21
+ "type" : "string",
22
+ "enum" : [ "inActive", "Active" ]
23
+ },
24
+ "sS" : {
25
+ "description" : "Suspended",
26
+ "type" : "string",
27
+ "enum" : [ "suspended", "notSuspended" ]
28
+ },
29
+ "aTs" : { "$ref": "definitions.json#/timestamp" },
30
+ "cat" : {
31
+ "description" : "Category",
32
+ "type" : "string",
33
+ "enum" : [ "T", "D" ]
34
+ },
35
+ "pri" : {
36
+ "description" : "Priority",
37
+ "type" : "string",
38
+ "enum" : [ "1", "2", "3" ]
39
+ },
40
+ "rvs" : {
41
+ "description" : "Return values",
42
+ "type" : "array",
43
+ "items" : {
44
+ "type" : "object",
45
+ "properties": {
46
+ "n" : { "description" : "Unique reference of the value", "type" : "string" },
47
+ "v" : { "description" : "Value", "type" : "string" }
48
+ },
49
+ "required" : [ "n", "v" ],
50
+ "additionProperties": false
51
+ }
52
+ }
53
+ },
54
+ "required" : [ "mId", "cId", "aCId", "xACId", "aSp", "ack", "aS", "aTs", "sS", "cat", "pri", "rvs" ]
55
+ }
@@ -0,0 +1,24 @@
1
+ {
2
+ "title" : "CommandRequest",
3
+ "description" : "Command request",
4
+ "properties" : {
5
+ "mId" : { "$ref": "definitions.json#/message_id" },
6
+ "cId" : { "$ref": "definitions.json#/component_id" },
7
+ "arg" : {
8
+ "description" : "Command arguments",
9
+ "type" : "array",
10
+ "minItems": 1,
11
+ "items" : {
12
+ "type" : "object",
13
+ "properties": {
14
+ "cCI" : { "$ref": "definitions.json#/command_code" },
15
+ "n" : { "description" : "Unique reference of the value", "type" : "string" },
16
+ "cO" : { "description" : "Command", "type" : "string" },
17
+ "v" : { "description" : "Value" }
18
+ },
19
+ "required" : [ "cCI", "n", "cO", "v" ]
20
+ }
21
+ }
22
+ },
23
+ "required" : [ "mId", "cId", "arg"]
24
+ }
@@ -0,0 +1,34 @@
1
+ {
2
+ "title" : "CommandRequest",
3
+ "description" : "Command request",
4
+ "properties" : {
5
+ "mId" : { "$ref": "definitions.json#/message_id" },
6
+ "cId" : { "$ref": "definitions.json#/component_id" },
7
+ "cTS" : { "$ref": "definitions.json#/timestamp" },
8
+ "rvs" : {
9
+ "description" : "Command arguments",
10
+ "type" : "array",
11
+ "items" : {
12
+ "type" : "object",
13
+ "properties": {
14
+ "cCI" : { "$ref": "definitions.json#/command_code" },
15
+ "n" : {
16
+ "description" : "Unique reference of the value",
17
+ "type" : "string"
18
+ },
19
+ "v" : {
20
+ "description" : "Value"
21
+ },
22
+ "age" : {
23
+ "description" : "Age of the value",
24
+ "type" : "string",
25
+ "enum" : [ "recent", "old", "undefined", "unknown" ]
26
+ }
27
+ },
28
+ "required" : [ "cCI", "n", "v", "age" ],
29
+ "additionProperties": false
30
+ }
31
+ }
32
+ },
33
+ "required" : [ "mId", "cId", "cTS", "rvs" ]
34
+ }
@@ -0,0 +1,35 @@
1
+ {
2
+ "$schema" : "http://json-schema.org/draft-07/schema#",
3
+ "type" : "object",
4
+ "allOf" : [
5
+ {
6
+ "properties" : {
7
+ "mType" : {
8
+ "description" : "Supported RSMP versions",
9
+ "type" : "string",
10
+ "const" : "rSMsg"
11
+ },
12
+ "type" : {
13
+ "description" : "Type of RMSP message",
14
+ "type" : "string",
15
+ "enum" : [
16
+ "MessageAck",
17
+ "MessageNotAck",
18
+ "Version",
19
+ "AggregatedStatus",
20
+ "Watchdog",
21
+ "Alarm",
22
+ "CommandRequest",
23
+ "CommandResponse",
24
+ "StatusRequest",
25
+ "StatusResponse",
26
+ "StatusSubscribe",
27
+ "StatusUnsubscribe",
28
+ "StatusUpdate"
29
+ ]
30
+ }
31
+ },
32
+ "required" : [ "mType", "type" ]
33
+ }
34
+ ]
35
+ }
@@ -0,0 +1,47 @@
1
+ {
2
+ "message_id": {
3
+ "description" : "Message Id",
4
+ "type": "string",
5
+ "$comment" : "Example: 1.2.3 or 1.2",
6
+ "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-4[a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
7
+ },
8
+ "timestamp" : {
9
+ "description" : "Timestamp",
10
+ "type": "string",
11
+ "$comment" : "Example: 2015-06-08T11:49:03.293Z",
12
+ "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\\.[0-9]{3}Z$"
13
+ },
14
+ "integer" : {
15
+ "description" : "Integer as string",
16
+ "type": "string",
17
+ "$comment" : "Example: 123",
18
+ "pattern": "^[0-9]+$"
19
+ },
20
+ "version": {
21
+ "description" : "Version",
22
+ "type": "string",
23
+ "$comment" : "Example: 1.2.3 or 1.2",
24
+ "pattern" : "^[0-9]{1,2}\\.[0-9]{1,2}(\\.[0-9]{1,2})?$"
25
+ },
26
+ "command_code": {
27
+ "description" : "Command code id",
28
+ "type" : "string",
29
+ "pattern" : "^M"
30
+ },
31
+ "status_code": {
32
+ "description" : "Status code id",
33
+ "type" : "string",
34
+ "pattern" : "^S"
35
+ },
36
+ "alarm_code": {
37
+ "description" : "Alarm code id",
38
+ "type" : "string",
39
+ "pattern" : "^A"
40
+ }, "component_id": {
41
+ "description" : "Compoment id",
42
+ "type" : "string"
43
+ }
44
+ }
45
+
46
+
47
+
@@ -0,0 +1,11 @@
1
+ {
2
+ "title" : "MessageAck",
3
+ "description" : "Message acknowledged",
4
+ "properties" : {
5
+ "oMId" : {
6
+ "$ref": "definitions.json#/message_id",
7
+ "description" : "Old message id"
8
+ }
9
+ },
10
+ "required" : [ "oMId" ]
11
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "title" : "MessageNotAck",
3
+ "description" : "Message not acknowledgeded",
4
+ "properties" : {
5
+ "oMId" : {
6
+ "$ref": "definitions.json#/message_id",
7
+ "description" : "Old message id"
8
+ },
9
+ "rea" : {
10
+ "description" : "Reason / Error message",
11
+ "type" : "string"
12
+ }
13
+ },
14
+ "required" : [ "oMId" ]
15
+ }
@@ -0,0 +1,124 @@
1
+ {
2
+ "allOf": [
3
+ {
4
+ "$ref": "core.json"
5
+ },
6
+ {
7
+ "if": {
8
+ "required" : ["type"],
9
+ "properties": { "type": { "const": "MessageAck" } }
10
+ },
11
+ "then": {
12
+ "$ref": "message_ack.json"
13
+ }
14
+ },
15
+ {
16
+ "if": {
17
+ "required" : ["type"],
18
+ "properties": { "type": { "const": "MessageNotAck" } }
19
+ },
20
+ "then": {
21
+ "$ref": "message_not_ack.json"
22
+ }
23
+ },
24
+ {
25
+ "if": {
26
+ "required" : ["type"],
27
+ "properties": { "type": { "const": "Version" } }
28
+ },
29
+ "then": {
30
+ "$ref": "version.json"
31
+ }
32
+ },
33
+ {
34
+ "if": {
35
+ "required" : ["type"],
36
+ "properties": { "type": { "const": "AggregatedStatus" } }
37
+ },
38
+ "then": {
39
+ "$ref": "aggregated_status.json"
40
+ }
41
+ },
42
+ {
43
+ "if": {
44
+ "required" : ["type"],
45
+ "properties": { "type": { "const": "Watchdog" } }
46
+ },
47
+ "then": {
48
+ "$ref": "watchdog.json"
49
+ }
50
+ },
51
+ {
52
+ "if": {
53
+ "required" : ["type"],
54
+ "properties": { "type": { "const": "Alarm" } }
55
+ },
56
+ "then": {
57
+ "$ref": "alarm.json"
58
+ }
59
+ },
60
+ {
61
+ "if": {
62
+ "required" : ["type"],
63
+ "properties": { "type": { "const": "CommandRequest" } }
64
+ },
65
+ "then": {
66
+ "$ref": "command_request.json"
67
+ }
68
+ },
69
+ {
70
+ "if": {
71
+ "required" : ["type"],
72
+ "properties": { "type": { "const": "CommandResponse" } }
73
+ },
74
+ "then": {
75
+ "$ref": "command_response.json"
76
+ }
77
+ },
78
+ {
79
+ "if": {
80
+ "required" : ["type"],
81
+ "properties": { "type": { "const": "StatusRequest" } }
82
+ },
83
+ "then": {
84
+ "$ref": "status_request.json"
85
+ }
86
+ },
87
+ {
88
+ "if": {
89
+ "required" : ["type"],
90
+ "properties": { "type": { "const": "StatusResponse" } }
91
+ },
92
+ "then": {
93
+ "$ref": "status_response.json"
94
+ }
95
+ },
96
+ {
97
+ "if": {
98
+ "required" : ["type"],
99
+ "properties": { "type": { "const": "StatusSubscribe" } }
100
+ },
101
+ "then": {
102
+ "$ref": "status_subscribe.json"
103
+ }
104
+ },
105
+ {
106
+ "if": {
107
+ "required" : ["type"],
108
+ "properties": { "type": { "const": "StatusUnsubscribe" } }
109
+ },
110
+ "then": {
111
+ "$ref": "status_unsubscribe.json"
112
+ }
113
+ },
114
+ {
115
+ "if": {
116
+ "required" : ["type"],
117
+ "properties": { "type": { "const": "StatusUpdate" } }
118
+ },
119
+ "then": {
120
+ "$ref": "status_update.json"
121
+ }
122
+ }
123
+ ]
124
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "properties" : {
3
+ "mId" : { "$ref": "definitions.json#/message_id" },
4
+ "cId" : { "$ref": "definitions.json#/component_id" },
5
+ "sS" : {
6
+ "description" : "Status request arguments",
7
+ "type" : "array",
8
+ "minItems": 1,
9
+ "items" : {
10
+ "type" : "object",
11
+ "properties": {
12
+ "sCI" : { "$ref": "definitions.json#/status_code" },
13
+ "n" : { "description" : "Unique reference of the value", "type" : "string" }
14
+ },
15
+ "required" : [ "sCI", "n" ],
16
+ "additionalProperties": false
17
+ }
18
+ }
19
+ },
20
+ "required" : [ "mId", "cId", "sS"]
21
+ }
@@ -0,0 +1,5 @@
1
+ {
2
+ "title" : "StatusRequest",
3
+ "description" : "Status request",
4
+ "$ref": "status.json"
5
+ }
@@ -0,0 +1,30 @@
1
+ {
2
+ "title" : "StatusResponse",
3
+ "description" : "Status response",
4
+ "properties" : {
5
+ "mId" : { "$ref": "definitions.json#/message_id" },
6
+ "cId" : { "$ref": "definitions.json#/component_id" },
7
+ "sTs" : { "$ref": "definitions.json#/timestamp" },
8
+ "sS" : {
9
+ "description" : "Status response arguments",
10
+ "type" : "array",
11
+ "minItems": 1,
12
+ "items" : {
13
+ "type" : "object",
14
+ "properties": {
15
+ "sCI" : { "$ref": "definitions.json#/status_code" },
16
+ "n" : { "description" : "Unique reference of the value", "type" : "string" },
17
+ "s" : { "description" : "Value", "type" : "string" },
18
+ "q" : {
19
+ "description" : "Value",
20
+ "type" : "string",
21
+ "enum" : [ "recent", "old", "undefined", "unknown" ]
22
+ }
23
+ },
24
+ "required" : [ "sCI", "n", "s", "q" ],
25
+ "additionProperties": false
26
+ }
27
+ }
28
+ },
29
+ "required" : [ "mId", "cId", "sTs", "sS" ]
30
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "title" : "StatusSubscribe",
3
+ "description" : "Status subscribe",
4
+ "properties" : {
5
+ "mId" : { "$ref": "definitions.json#/message_id" },
6
+ "cId" : { "$ref": "definitions.json#/component_id" },
7
+ "sS" : {
8
+ "description" : "Status request arguments",
9
+ "type" : "array",
10
+ "minItems": 1,
11
+ "items" : {
12
+ "type" : "object",
13
+ "properties": {
14
+ "sCI" : { "$ref": "definitions.json#/status_code" },
15
+ "n" : { "description" : "Unique reference of the value", "type" : "string" },
16
+ "uRt" : {
17
+ "$ref": "definitions.json#/integer",
18
+ "description" : "Update interval in seconds, 0 means send when value changes"
19
+ }
20
+ },
21
+ "required" : [ "sCI", "n", "uRt" ],
22
+ "additionalProperties": false
23
+ }
24
+ }
25
+ },
26
+ "required" : [ "mId", "cId", "sS"]
27
+ }
@@ -0,0 +1,5 @@
1
+ {
2
+ "title" : "StatusUnsubscribe",
3
+ "description" : "Status unsubscribe",
4
+ "$ref": "status.json"
5
+ }
@@ -0,0 +1,30 @@
1
+ {
2
+ "title" : "StatusUpdate",
3
+ "description" : "Status update",
4
+ "properties" : {
5
+ "mId" : { "$ref": "definitions.json#/message_id" },
6
+ "cId" : { "$ref": "definitions.json#/component_id" },
7
+ "sTs" : { "$ref": "definitions.json#/timestamp" },
8
+ "sS" : {
9
+ "description" : "Status update arguments",
10
+ "type" : "array",
11
+ "minItems": 1,
12
+ "items" : {
13
+ "type" : "object",
14
+ "properties": {
15
+ "sCI" : { "$ref": "definitions.json#/status_code" },
16
+ "n" : { "description" : "Unique reference of the value", "type" : "string" },
17
+ "s" : { "description" : "Value", "type" : "string" },
18
+ "q" : {
19
+ "description" : "Value",
20
+ "type" : "string",
21
+ "enum" : [ "recent", "old", "undefined", "unknown" ]
22
+ }
23
+ },
24
+ "required" : [ "sCI", "n", "s", "q" ],
25
+ "additionProperties": false
26
+ }
27
+ }
28
+ },
29
+ "required" : [ "mId", "cId", "sTs", "sS" ]
30
+ }
@@ -0,0 +1,47 @@
1
+ {
2
+ "title" : "Version",
3
+ "description" : "Version message",
4
+ "properties" : {
5
+ "mId" : { "$ref": "definitions.json#/message_id" },
6
+ "RSMP" : {
7
+ "description" : "Supported RSMP versions",
8
+ "type" : "array",
9
+ "items" : {
10
+ "type" : "object",
11
+ "properties" : {
12
+ "vers" : {
13
+ "$ref": "definitions.json#/version",
14
+ "description" : "RSMP version"
15
+ }
16
+ },
17
+ "required" : ["vers"],
18
+ "additionalProperties" : false
19
+ },
20
+ "minItems" : 1,
21
+ "uniqueItems" : true
22
+ },
23
+ "SXL" : {
24
+ "$ref": "definitions.json#/version",
25
+ "description" : "SXL version"
26
+ },
27
+ "siteId" : {
28
+ "description" : "Site ids",
29
+ "type" : "array",
30
+ "items" : {
31
+ "type" : "object",
32
+ "properties" : {
33
+ "sId" : {
34
+ "type" : "string",
35
+ "minLength": 1
36
+ }
37
+ },
38
+ "required" : [ "sId" ],
39
+ "additionalProperties" : false
40
+ },
41
+ "minItems" : 1,
42
+ "uniqueItems" : true,
43
+ "additionalProperties" : false
44
+ }
45
+ },
46
+ "required" : [ "mId", "RSMP", "SXL", "siteId" ]
47
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "title" : "Watchdog",
3
+ "description" : "Watchdog message",
4
+ "properties" : {
5
+ "mId" : { "$ref": "definitions.json#/message_id" },
6
+ "wTs" : { "$ref": "definitions.json#/timestamp" }
7
+ },
8
+ "required" : [ "mId", "wTs" ]
9
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "allOf" : [
3
+ {
4
+ "description": "Serious hardware error",
5
+ }
6
+ ]
7
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "allOf" : [
3
+ {
4
+ "description": "Less serious hardware error",
5
+ }
6
+ ]
7
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "allOf" : [
3
+ {
4
+ "description": "Serious configuration error",
5
+ }
6
+ ]
7
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "allOf" : [
3
+ {
4
+ "description": "Less serious configuration error",
5
+ }
6
+ ]
7
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "allOf" : [
3
+ {
4
+ "description": "Communication error between traffic controllers / synchronisation error",
5
+ }
6
+ ]
7
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "allOf" : [
3
+ {
4
+ "description": "Safety error",
5
+ }
6
+ ]
7
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "allOf" : [
3
+ {
4
+ "description": "Communication error between one or multiple traffic controllers and central control system",
5
+ }
6
+ ]
7
+ }