openc3 5.2.0 → 5.4.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of openc3 might be problematic. Click here for more details.

Files changed (72) hide show
  1. checksums.yaml +4 -4
  2. data/bin/openc3cli +108 -105
  3. data/data/config/interface_modifiers.yaml +22 -4
  4. data/data/config/item_modifiers.yaml +4 -2
  5. data/data/config/microservice.yaml +18 -0
  6. data/data/config/table_manager.yaml +2 -2
  7. data/data/config/tool.yaml +1 -1
  8. data/ext/openc3/ext/config_parser/config_parser.c +17 -2
  9. data/lib/openc3/api/api.rb +1 -0
  10. data/lib/openc3/api/interface_api.rb +12 -0
  11. data/lib/openc3/api/metrics_api.rb +97 -0
  12. data/lib/openc3/api/router_api.rb +14 -2
  13. data/lib/openc3/api/target_api.rb +24 -3
  14. data/lib/openc3/api/tlm_api.rb +5 -4
  15. data/lib/openc3/config/config_parser.rb +29 -4
  16. data/lib/openc3/core_ext/time.rb +6 -1
  17. data/lib/openc3/interfaces/interface.rb +27 -26
  18. data/lib/openc3/interfaces/mqtt_interface.rb +240 -0
  19. data/lib/openc3/interfaces/protocols/override_protocol.rb +2 -61
  20. data/lib/openc3/interfaces/protocols/protocol.rb +6 -1
  21. data/lib/openc3/interfaces/simulated_target_interface.rb +1 -3
  22. data/lib/openc3/interfaces/tcpip_server_interface.rb +0 -11
  23. data/lib/openc3/interfaces.rb +2 -3
  24. data/lib/openc3/logs/buffered_packet_log_reader.rb +2 -2
  25. data/lib/openc3/microservices/cleanup_microservice.rb +17 -1
  26. data/lib/openc3/microservices/decom_microservice.rb +12 -9
  27. data/lib/openc3/microservices/interface_microservice.rb +93 -9
  28. data/lib/openc3/microservices/log_microservice.rb +11 -5
  29. data/lib/openc3/microservices/microservice.rb +10 -9
  30. data/lib/openc3/microservices/periodic_microservice.rb +7 -0
  31. data/lib/openc3/microservices/reaction_microservice.rb +0 -33
  32. data/lib/openc3/microservices/reducer_microservice.rb +14 -10
  33. data/lib/openc3/microservices/text_log_microservice.rb +12 -3
  34. data/lib/openc3/microservices/timeline_microservice.rb +0 -6
  35. data/lib/openc3/microservices/trigger_group_microservice.rb +0 -20
  36. data/lib/openc3/models/cvt_model.rb +103 -47
  37. data/lib/openc3/models/interface_model.rb +23 -0
  38. data/lib/openc3/models/metric_model.rb +53 -6
  39. data/lib/openc3/models/microservice_model.rb +15 -1
  40. data/lib/openc3/models/model.rb +1 -1
  41. data/lib/openc3/models/plugin_model.rb +6 -1
  42. data/lib/openc3/models/secret_model.rb +53 -0
  43. data/lib/openc3/models/target_model.rb +2 -2
  44. data/lib/openc3/models/tool_model.rb +17 -8
  45. data/lib/openc3/operators/microservice_operator.rb +25 -0
  46. data/lib/openc3/operators/operator.rb +5 -1
  47. data/lib/openc3/packets/packet.rb +21 -7
  48. data/lib/openc3/packets/packet_item.rb +3 -2
  49. data/lib/openc3/script/api_shared.rb +18 -2
  50. data/lib/openc3/script/script.rb +8 -0
  51. data/lib/openc3/script/script_runner.rb +1 -2
  52. data/lib/openc3/script/storage.rb +2 -1
  53. data/lib/openc3/script/suite.rb +15 -11
  54. data/lib/openc3/system/system.rb +6 -3
  55. data/lib/openc3/topics/interface_topic.rb +17 -1
  56. data/lib/openc3/topics/router_topic.rb +17 -1
  57. data/lib/openc3/utilities/aws_bucket.rb +20 -3
  58. data/lib/openc3/utilities/bucket.rb +1 -1
  59. data/lib/openc3/utilities/bucket_file_cache.rb +1 -1
  60. data/lib/openc3/utilities/bucket_utilities.rb +1 -1
  61. data/lib/openc3/utilities/local_mode.rb +1 -0
  62. data/lib/openc3/utilities/metric.rb +77 -101
  63. data/lib/openc3/utilities/redis_secrets.rb +46 -0
  64. data/lib/openc3/utilities/s3_autoload.rb +19 -9
  65. data/lib/openc3/utilities/secrets.rb +63 -0
  66. data/lib/openc3/utilities/target_file.rb +3 -1
  67. data/lib/openc3/version.rb +5 -5
  68. data/templates/plugin-template/LICENSE.txt +7 -0
  69. data/templates/plugin-template/README.md +4 -3
  70. data/templates/plugin-template/plugin.gemspec +4 -4
  71. metadata +22 -3
  72. data/data/config/_interfaces.yaml.err +0 -1017
@@ -1,1017 +0,0 @@
1
- ---
2
- tcpip_client_interface.rb:
3
- parameters:
4
- - name: Host
5
- required: true
6
- description: Machine name to connect to. Can be either a named
7
- machine (DNS entry) or IP address.
8
- values: .+
9
- - name: Write Port
10
- required: true
11
- description: Port which OpenC3 writes commands to
12
- values: \d{2,5}
13
- - name: Read Port
14
- required: true
15
- description: Port which OpenC3 reads telemetry from
16
- values: \d{2,5}
17
- - name: Write Timeout
18
- required: true
19
- description: Number of seconds to wait before aborting the write.
20
- Pass 'nil' to block on write.
21
- values: .+
22
- - name: Read Timeout
23
- required: true
24
- description: Number of seconds to wait before aborting the read.
25
- Pass 'nil' to block on read.
26
- values: .+
27
- - name: Protocol Type
28
- required: true
29
- description: Protocol to apply on the interface data
30
- values:
31
- - BURST:
32
- description: The Burst Stream Protocol simply reads as much data as it can from
33
- the stream before returning the data as a OpenC3 Packet. This Protocol relies
34
- on regular bursts of data delimited by time and thus is not very robust. However
35
- it can utilize a sync pattern which does allow it to re-sync from the stream if
36
- necessary.
37
- parameters:
38
- - name: Discard Leading Bytes
39
- required: false
40
- description: The number of bytes to discard from the binary data after reading
41
- from the stream. Note that this applies to bytes starting with the sync pattern
42
- if the sync pattern is being used. Default is 0 (don't discard bytes).
43
- values: "\\d+"
44
- - name: Sync Pattern
45
- required: false
46
- description: Hex string representing a byte pattern that will be searched for
47
- in the raw stream. This pattern represents a packet delimiter and all data found
48
- including the sync pattern will be returned. Default is 'nil' (no sync pattern).
49
- values: ".+"
50
- - name: Fill Sync Pattern
51
- required: false
52
- description: Whether or not to fill in the sync pattern on outgoing packets Default
53
- is false.
54
- values:
55
- - 'true'
56
- - 'false'
57
- FIXED:
58
- description: The Fixed Stream Protocol reads a preset minimum amount of data from
59
- the stream which is necessary to properly identify all the defined packets using
60
- the interface. It then identifies the packet and proceeds to read as much data
61
- from the stream as necessary to create the packet which it then returns. This
62
- stream relies on all the packets on the interface being fixed in length. For example,
63
- all the packets using the interface are a fixed size and contain a simple header
64
- with a 32 bit sync pattern followed by a 16 bit ID. The Fixed Stream Protocol
65
- would elegantly handle this case with a minimum read size of 6 bytes.
66
- parameters:
67
- - name: Minimum ID Size
68
- required: true
69
- description: The minimum amount of bytes needed to identify a packet. All the
70
- packet definitions must declare their ID_ITEM(s) within this given amount of
71
- bytes.
72
- values: "\\d+"
73
- - name: Discard Leading Bytes
74
- required: false
75
- description: The number of bytes to discard from the binary data after reading
76
- from the stream. Note that this applies to bytes starting with the sync pattern
77
- if the sync pattern is being used. Default is 0 (do not discard bytes).
78
- values: "\\d+"
79
- - name: Sync Pattern
80
- required: false
81
- description: Hex string representing a byte pattern that will be searched for
82
- in the raw stream. This pattern represents a packet delimiter and all data found
83
- including the sync pattern will be returned. Default is 'nil' (no sync pattern).
84
- values: ".+"
85
- - name: Telemetry Stream
86
- required: false
87
- description: Whether the stream is returning telemetry. Default is true.
88
- values:
89
- - 'true'
90
- - 'false'
91
- - name: Fill Sync Pattern
92
- required: false
93
- description: Whether or not to fill in the sync pattern on outgoing packets. Default
94
- is false.
95
- values:
96
- - 'false'
97
- - 'true'
98
- LENGTH:
99
- description: The Length Stream Protocol depends on a length field at a fixed location
100
- in the defined packets using the interface. It then reads enough data to grab
101
- the length field, decodes it, and reads the remaining length of the packet. For
102
- example, all the packets using the interface contain a CCSDS header with a length
103
- field. The Length Stream Protocol can be set up to handle the length field and
104
- even the "length - 1" offset the CCSDS header uses.
105
- parameters:
106
- - name: Length Bit Offset
107
- required: false
108
- description: The bit offset of the length field. Every packet using this interface
109
- must have the same structure such that the length field is the same size at
110
- the same location. Be sure to account for the length of the Sync Pattern in
111
- this value (if present). Default is 0.
112
- values: "\\d+"
113
- - name: Length Bit Size
114
- required: false
115
- description: The size in bits of the length field. Default is 16.
116
- values: "\\d+"
117
- - name: Length Value Offset
118
- required: false
119
- description: The offset to apply to the length field value. For example if the
120
- length field indicates packet length minus one, this value should be one. Be
121
- sure to account for the length of the Sync Pattern in this value (if present).
122
- Default is 0.
123
- values: "\\d+"
124
- - name: Bytes per Count
125
- required: false
126
- description: The number of bytes per each length field 'count'. This is used if
127
- the units of the length field is something other than bytes, for example if
128
- the length field count is in words. Default is 1.
129
- values: "\\d+"
130
- - name: Length Endianness
131
- required: false
132
- description: The endianness of the length field.
133
- values:
134
- - BIG_ENDIAN
135
- - LITTLE_ENDIAN
136
- - name: Discard Leading Bytes
137
- required: false
138
- description: The number of bytes to discard from the binary data after reading
139
- from the stream. Note that this applies to bytes including the sync pattern
140
- if the sync pattern is being used. Discarding is one of the very last steps
141
- so any size and offsets above need to account for all the data before discarding.
142
- Default is 0 (do not discard bytes).
143
- values: "\\d+"
144
- - name: Sync Pattern
145
- required: false
146
- description: Hex string representing a byte pattern that will be searched for
147
- in the raw stream. This pattern represents a packet delimiter and all data found
148
- including the sync pattern will be returned. Default is nil (no sync pattern)
149
- values: ".+"
150
- - name: Max Length
151
- required: false
152
- description: The maximum allowed value in the length field. Default is nil (no
153
- maximum length)
154
- values: ".+"
155
- - name: Fill Length and Sync Pattern
156
- required: false
157
- description: Setting this flag to true causes the length field and sync pattern
158
- (if present) to be filled automatically on outgoing packets. Default is false
159
- values:
160
- - 'false'
161
- - 'true'
162
- TERMINATED:
163
- description: The Terminated Stream Protocol delineates packets using termination
164
- characters found at the end of every packet. It continuously reads data from the
165
- stream until the termination characters are found at which point it returns the
166
- packet data. For example, all the packets using the interface are followed by
167
- 0xABCD. This data can either be a part of each packet that is kept or something
168
- which is known only by the Terminated Stream Protocol and simply thrown away.
169
- parameters:
170
- - name: Write Termination Characters
171
- required: true
172
- description: The data to write to the stream after writing a command packet. Given
173
- as a hex string such as 0xABCD.
174
- values: ".+"
175
- - name: Read Termination Characters
176
- required: true
177
- description: The characters at the end of the stream which delineate the end of
178
- a telemetry packet. Given as a hex string such as 0xABCD.
179
- values: ".+"
180
- - name: Strip Read Termination
181
- required: false
182
- description: Whether to remove the read termination characters from the stream
183
- before returning the telemetry packet. Default is true.
184
- values:
185
- - 'true'
186
- - 'false'
187
- - name: Discard Leading Bytes
188
- required: false
189
- description: The number of bytes to discard from the binary data after reading
190
- from the stream. Note that this applies to bytes including the sync pattern
191
- if the sync pattern is being used. Default is 0 (do not discard bytes)
192
- values: "\\d+"
193
- - name: Sync Pattern
194
- required: false
195
- description: Hex string representing a byte pattern that will be searched for
196
- in the raw stream. This pattern represents a packet delimiter and all data found
197
- including the sync pattern will be returned. Default is nil (no sync pattern)
198
- values: ".+"
199
- - name: Fill Sync Pattern
200
- required: false
201
- description: Whether or not to fill in the sync pattern on outgoing packets Default
202
- is false
203
- values:
204
- - 'false'
205
- - 'true'
206
- PREIDENTIFIED:
207
- description: The Preidentified Stream Protocol is used internally by the OpenC3
208
- Command and Telemetry Server only and delineates packets using a custom OpenC3
209
- header. This stream Protocol is configured by default on port 7779 and is created
210
- by the Command and Telemetry Server to allow tools to connect and receive the
211
- entire packet stream. The Telemetry Grapher uses this port to receive all the
212
- packets following through the Command and Telemetry Server in case any need to
213
- be graphed.
214
- parameters:
215
- - name: Sync Pattern
216
- required: false
217
- description: Hex string representing a byte pattern that will be searched for
218
- in the raw stream. This pattern represents a packet delimiter and all data found
219
- AFTER the sync pattern will be returned. The sync pattern itself is discarded.
220
- Default is nil (no sync pattern)
221
- values: ".+"
222
- - name: Max Length
223
- required: false
224
- description: The maximum allowed value in the length field. Default is nil (no
225
- maximum length)
226
- values: ".+"
227
- TEMPLATE:
228
- description: !binary |-
229
- VGhlIFRlbXBsYXRlIFN0cmVhbSBQcm90b2NvbCB3b3JrcyBtdWNoIGxpa2UgdGhlIFRlcm1pbmF0ZWQgU3RyZWFtIFByb3RvY29sIGV4Y2VwdCBpdCBkZXNpZ25lZCBmb3IgdGV4dC1iYXNlZCBjb21tYW5kIGFuZCByZXNwb25zZSB0eXBlIGludGVyZmFjZXMgc3VjaCBhcyBTQ1BJIChTdGFuZGFyZCBDb21tYW5kcyBmb3IgUHJvZ3JhbW1hYmxlIEluc3RydW1lbnRzKS4gSXQgZGVsaW5lYXRlcyBwYWNrZXRzIGluIHRoZSBzYW1lIHdheSBhcyB0aGUgdGVybWluYXRlZCBzdHJlYW0gcHJvdG9jb2wgZXhjZXB0IGVhY2ggcGFja2V0IGlzIHJlZmVycmVkIHRvIGFzIGEgbGluZSAoYmVjYXVzZSBlYWNoIHVzdWFsbHkgY29udGFpbnMgYSBsaW5lIG9mIHRleHQpLiBGb3Igb3V0Z29pbmcgcGFja2V0cyBhIENNRF9URU1QTEFURSBmaWVsZCBpcyBleHBlY3RlZCB0byBleGlzdCBpbiB0aGUgcGFja2V0LiBUaGlzIGZpZWxkIGNvbnRhaW5zIGEgdGVtcGxhdGUgc3RyaW5nIHdpdGggaXRlbXMgdG8gYmUgZmlsbGVkIGluIGRlbGluaWF0ZWQgd2l0aGluIEhUTUwgdGFnIHN0eWxlIGJyYWNrZXRzIOKAnCIuIFRoZSBUZW1wbGF0ZSBTdHJlYW0gUHJvdG9jb2wgd2lsbCByZWFkIHRoZSBuYW1lZCBpdGVtcyBmcm9tIHdpdGhpbiB0aGUgcGFja2V0IGZpbGwgaW4gdGhlIENNRF9URU1QTEFURS4gVGhpcyBmaWxsZWQgaW4gc3RyaW5nIGlzIHRoZW4gc2VudCBvdXQgcmF0aGVyIHRoYW4gdGhlIG9yaWdpbmFsbHkgcGFzc2VkIGluIHBhY2tldC4gQ29ycmVzcG9uZGluZ2x5LCBpZiBhIHJlc3BvbnNlIGlzIGV4cGVjdGVkIHRoZSBvdXRnb2luZyBwYWNrZXQgc2hvdWxkIGluY2x1ZGUgYSBSU1BfVEVNUExBVEUgYW5kIFJTUF9QQUNLRVQgZmllbGQuIFRoZSBSU1BfVEVNUExBVEUgaXMgdXNlZCB0byBleHRyYWN0IGRhdGEgZnJvbSB0aGUgcmVzcG9uc2Ugc3RyaW5nIGFuZCBidWlsZCBhIGNvcnJlc3BvbmRpbmcgUlNQX1BBQ0tFVC4gU2VlIHRoZSBURU1QTEFURSB0YXJnZXQgd2l0aGluIHRoZSBPcGVuQzMgRGVtbyBjb25maWd1cmF0aW9uIGZvciBhbiBleGFtcGxlIG9mIHVzYWdlLg==
230
- parameters:
231
- - name: Write Termination Characters
232
- required: true
233
- description: The data to write to the stream after writing a command packet. Given
234
- as a hex string such as 0xABCD.
235
- values: ".+"
236
- - name: Read Termination Characters
237
- required: true
238
- description: The characters at the end of the stream which delineate the end of
239
- a telemetry packet. Given as a hex string such as 0xABCD.
240
- values: ".+"
241
- - name: Ignore Lines
242
- required: false
243
- description: Number of response lines to ignore (completely drop). Default is
244
- 0.
245
- values: "\\d+"
246
- - name: Initial Read Delay
247
- required: false
248
- description: An initial delay after connecting after which the stream will be
249
- read till empty and data dropped. Useful for discarding connect headers and
250
- initial prompts. Default is nil (no initial read).
251
- values: ".+"
252
- - name: Response Lines
253
- required: false
254
- description: The number of lines that make up expected responses. Default is 1.
255
- values: "\\d+"
256
- - name: Strip Read Termination
257
- required: false
258
- description: Whether to remove the read termination characters from the stream
259
- before returning the telemetry packet. Default is true.
260
- values:
261
- - 'true'
262
- - 'false'
263
- - name: Discard Leading Bytes
264
- required: false
265
- description: The number of bytes to discard from the binary data after reading
266
- from the stream. Note that this applies to bytes including the sync pattern
267
- if the sync pattern is being used. Default is 0 (do not discard bytes).
268
- values: "\\d+"
269
- - name: Sync Pattern
270
- required: false
271
- description: Hex string representing a byte pattern that will be searched for
272
- in the raw stream. This pattern represents a packet delimiter and all data found
273
- including the sync pattern will be returned. Default is nil (no sync pattern).
274
- values: ".+"
275
- - name: Fill Sync Pattern
276
- required: false
277
- description: Whether or not to fill in the sync pattern on outgoing packets. Default
278
- is false.
279
- values:
280
- - 'false'
281
- - 'true'
282
- - name: Response Timeout
283
- required: false
284
- description: Number of seconds to wait before timing out when waiting for a response.
285
- Default is 5 seconds.
286
- values: ".+"
287
- - name: Response Polling Period
288
- required: false
289
- description: Number of seconds to wait between polling for a response. Default
290
- is 0.02 seconds.
291
- values: ".+"
292
- - name: Error Action
293
- required: false
294
- description: How to handle errors in the protocol like unexpected responses or
295
- response timeouts. 'DISCONNECT' to disconnect after errors. The default is 'LOG'
296
- to log an error and continue.
297
- values:
298
- - LOG
299
- - DISCONNECT
300
- tcpip_server_interface.rb:
301
- parameters:
302
- - name: Write Port
303
- required: true
304
- description: Port which OpenC3 writes commands to
305
- values: \d{2,5}
306
- - name: Read Port
307
- required: true
308
- description: Port which OpenC3 reads telemetry from
309
- values: \d{2,5}
310
- - name: Write Timeout
311
- required: true
312
- description: Number of seconds to wait before aborting the write.
313
- Pass 'nil' to block on write.
314
- values: .+
315
- - name: Read Timeout
316
- required: true
317
- description: Number of seconds to wait before aborting the read.
318
- Pass 'nil' to block on read.
319
- values: .+
320
- - name: Protocol Type
321
- required: true
322
- description: Protocol to apply on the interface data
323
- values:
324
- - BURST:
325
- description: The Burst Stream Protocol simply reads as much data as it can from
326
- the stream before returning the data as a OpenC3 Packet. This Protocol relies
327
- on regular bursts of data delimited by time and thus is not very robust. However
328
- it can utilize a sync pattern which does allow it to re-sync from the stream if
329
- necessary.
330
- parameters:
331
- - name: Discard Leading Bytes
332
- required: false
333
- description: The number of bytes to discard from the binary data after reading
334
- from the stream. Note that this applies to bytes starting with the sync pattern
335
- if the sync pattern is being used. Default is 0 (don't discard bytes).
336
- values: "\\d+"
337
- - name: Sync Pattern
338
- required: false
339
- description: Hex string representing a byte pattern that will be searched for
340
- in the raw stream. This pattern represents a packet delimiter and all data found
341
- including the sync pattern will be returned. Default is 'nil' (no sync pattern).
342
- values: ".+"
343
- - name: Fill Sync Pattern
344
- required: false
345
- description: Whether or not to fill in the sync pattern on outgoing packets Default
346
- is false.
347
- values:
348
- - 'true'
349
- - 'false'
350
- FIXED:
351
- description: The Fixed Stream Protocol reads a preset minimum amount of data from
352
- the stream which is necessary to properly identify all the defined packets using
353
- the interface. It then identifies the packet and proceeds to read as much data
354
- from the stream as necessary to create the packet which it then returns. This
355
- stream relies on all the packets on the interface being fixed in length. For example,
356
- all the packets using the interface are a fixed size and contain a simple header
357
- with a 32 bit sync pattern followed by a 16 bit ID. The Fixed Stream Protocol
358
- would elegantly handle this case with a minimum read size of 6 bytes.
359
- parameters:
360
- - name: Minimum ID Size
361
- required: true
362
- description: The minimum amount of bytes needed to identify a packet. All the
363
- packet definitions must declare their ID_ITEM(s) within this given amount of
364
- bytes.
365
- values: "\\d+"
366
- - name: Discard Leading Bytes
367
- required: false
368
- description: The number of bytes to discard from the binary data after reading
369
- from the stream. Note that this applies to bytes starting with the sync pattern
370
- if the sync pattern is being used. Default is 0 (do not discard bytes).
371
- values: "\\d+"
372
- - name: Sync Pattern
373
- required: false
374
- description: Hex string representing a byte pattern that will be searched for
375
- in the raw stream. This pattern represents a packet delimiter and all data found
376
- including the sync pattern will be returned. Default is 'nil' (no sync pattern).
377
- values: ".+"
378
- - name: Telemetry Stream
379
- required: false
380
- description: Whether the stream is returning telemetry. Default is true.
381
- values:
382
- - 'true'
383
- - 'false'
384
- - name: Fill Sync Pattern
385
- required: false
386
- description: Whether or not to fill in the sync pattern on outgoing packets. Default
387
- is false.
388
- values:
389
- - 'false'
390
- - 'true'
391
- LENGTH:
392
- description: The Length Stream Protocol depends on a length field at a fixed location
393
- in the defined packets using the interface. It then reads enough data to grab
394
- the length field, decodes it, and reads the remaining length of the packet. For
395
- example, all the packets using the interface contain a CCSDS header with a length
396
- field. The Length Stream Protocol can be set up to handle the length field and
397
- even the "length - 1" offset the CCSDS header uses.
398
- parameters:
399
- - name: Length Bit Offset
400
- required: false
401
- description: The bit offset of the length field. Every packet using this interface
402
- must have the same structure such that the length field is the same size at
403
- the same location. Be sure to account for the length of the Sync Pattern in
404
- this value (if present). Default is 0.
405
- values: "\\d+"
406
- - name: Length Bit Size
407
- required: false
408
- description: The size in bits of the length field. Default is 16.
409
- values: "\\d+"
410
- - name: Length Value Offset
411
- required: false
412
- description: The offset to apply to the length field value. For example if the
413
- length field indicates packet length minus one, this value should be one. Be
414
- sure to account for the length of the Sync Pattern in this value (if present).
415
- Default is 0.
416
- values: "\\d+"
417
- - name: Bytes per Count
418
- required: false
419
- description: The number of bytes per each length field 'count'. This is used if
420
- the units of the length field is something other than bytes, for example if
421
- the length field count is in words. Default is 1.
422
- values: "\\d+"
423
- - name: Length Endianness
424
- required: false
425
- description: The endianness of the length field.
426
- values:
427
- - BIG_ENDIAN
428
- - LITTLE_ENDIAN
429
- - name: Discard Leading Bytes
430
- required: false
431
- description: The number of bytes to discard from the binary data after reading
432
- from the stream. Note that this applies to bytes including the sync pattern
433
- if the sync pattern is being used. Discarding is one of the very last steps
434
- so any size and offsets above need to account for all the data before discarding.
435
- Default is 0 (do not discard bytes).
436
- values: "\\d+"
437
- - name: Sync Pattern
438
- required: false
439
- description: Hex string representing a byte pattern that will be searched for
440
- in the raw stream. This pattern represents a packet delimiter and all data found
441
- including the sync pattern will be returned. Default is nil (no sync pattern)
442
- values: ".+"
443
- - name: Max Length
444
- required: false
445
- description: The maximum allowed value in the length field. Default is nil (no
446
- maximum length)
447
- values: ".+"
448
- - name: Fill Length and Sync Pattern
449
- required: false
450
- description: Setting this flag to true causes the length field and sync pattern
451
- (if present) to be filled automatically on outgoing packets. Default is false
452
- values:
453
- - 'false'
454
- - 'true'
455
- TERMINATED:
456
- description: The Terminated Stream Protocol delineates packets using termination
457
- characters found at the end of every packet. It continuously reads data from the
458
- stream until the termination characters are found at which point it returns the
459
- packet data. For example, all the packets using the interface are followed by
460
- 0xABCD. This data can either be a part of each packet that is kept or something
461
- which is known only by the Terminated Stream Protocol and simply thrown away.
462
- parameters:
463
- - name: Write Termination Characters
464
- required: true
465
- description: The data to write to the stream after writing a command packet. Given
466
- as a hex string such as 0xABCD.
467
- values: ".+"
468
- - name: Read Termination Characters
469
- required: true
470
- description: The characters at the end of the stream which delineate the end of
471
- a telemetry packet. Given as a hex string such as 0xABCD.
472
- values: ".+"
473
- - name: Strip Read Termination
474
- required: false
475
- description: Whether to remove the read termination characters from the stream
476
- before returning the telemetry packet. Default is true.
477
- values:
478
- - 'true'
479
- - 'false'
480
- - name: Discard Leading Bytes
481
- required: false
482
- description: The number of bytes to discard from the binary data after reading
483
- from the stream. Note that this applies to bytes including the sync pattern
484
- if the sync pattern is being used. Default is 0 (do not discard bytes)
485
- values: "\\d+"
486
- - name: Sync Pattern
487
- required: false
488
- description: Hex string representing a byte pattern that will be searched for
489
- in the raw stream. This pattern represents a packet delimiter and all data found
490
- including the sync pattern will be returned. Default is nil (no sync pattern)
491
- values: ".+"
492
- - name: Fill Sync Pattern
493
- required: false
494
- description: Whether or not to fill in the sync pattern on outgoing packets Default
495
- is false
496
- values:
497
- - 'false'
498
- - 'true'
499
- PREIDENTIFIED:
500
- description: The Preidentified Stream Protocol is used internally by the OpenC3
501
- Command and Telemetry Server only and delineates packets using a custom OpenC3
502
- header. This stream Protocol is configured by default on port 7779 and is created
503
- by the Command and Telemetry Server to allow tools to connect and receive the
504
- entire packet stream. The Telemetry Grapher uses this port to receive all the
505
- packets following through the Command and Telemetry Server in case any need to
506
- be graphed.
507
- parameters:
508
- - name: Sync Pattern
509
- required: false
510
- description: Hex string representing a byte pattern that will be searched for
511
- in the raw stream. This pattern represents a packet delimiter and all data found
512
- AFTER the sync pattern will be returned. The sync pattern itself is discarded.
513
- Default is nil (no sync pattern)
514
- values: ".+"
515
- - name: Max Length
516
- required: false
517
- description: The maximum allowed value in the length field. Default is nil (no
518
- maximum length)
519
- values: ".+"
520
- TEMPLATE:
521
- description: !binary |-
522
- VGhlIFRlbXBsYXRlIFN0cmVhbSBQcm90b2NvbCB3b3JrcyBtdWNoIGxpa2UgdGhlIFRlcm1pbmF0ZWQgU3RyZWFtIFByb3RvY29sIGV4Y2VwdCBpdCBkZXNpZ25lZCBmb3IgdGV4dC1iYXNlZCBjb21tYW5kIGFuZCByZXNwb25zZSB0eXBlIGludGVyZmFjZXMgc3VjaCBhcyBTQ1BJIChTdGFuZGFyZCBDb21tYW5kcyBmb3IgUHJvZ3JhbW1hYmxlIEluc3RydW1lbnRzKS4gSXQgZGVsaW5lYXRlcyBwYWNrZXRzIGluIHRoZSBzYW1lIHdheSBhcyB0aGUgdGVybWluYXRlZCBzdHJlYW0gcHJvdG9jb2wgZXhjZXB0IGVhY2ggcGFja2V0IGlzIHJlZmVycmVkIHRvIGFzIGEgbGluZSAoYmVjYXVzZSBlYWNoIHVzdWFsbHkgY29udGFpbnMgYSBsaW5lIG9mIHRleHQpLiBGb3Igb3V0Z29pbmcgcGFja2V0cyBhIENNRF9URU1QTEFURSBmaWVsZCBpcyBleHBlY3RlZCB0byBleGlzdCBpbiB0aGUgcGFja2V0LiBUaGlzIGZpZWxkIGNvbnRhaW5zIGEgdGVtcGxhdGUgc3RyaW5nIHdpdGggaXRlbXMgdG8gYmUgZmlsbGVkIGluIGRlbGluaWF0ZWQgd2l0aGluIEhUTUwgdGFnIHN0eWxlIGJyYWNrZXRzIOKAnCIuIFRoZSBUZW1wbGF0ZSBTdHJlYW0gUHJvdG9jb2wgd2lsbCByZWFkIHRoZSBuYW1lZCBpdGVtcyBmcm9tIHdpdGhpbiB0aGUgcGFja2V0IGZpbGwgaW4gdGhlIENNRF9URU1QTEFURS4gVGhpcyBmaWxsZWQgaW4gc3RyaW5nIGlzIHRoZW4gc2VudCBvdXQgcmF0aGVyIHRoYW4gdGhlIG9yaWdpbmFsbHkgcGFzc2VkIGluIHBhY2tldC4gQ29ycmVzcG9uZGluZ2x5LCBpZiBhIHJlc3BvbnNlIGlzIGV4cGVjdGVkIHRoZSBvdXRnb2luZyBwYWNrZXQgc2hvdWxkIGluY2x1ZGUgYSBSU1BfVEVNUExBVEUgYW5kIFJTUF9QQUNLRVQgZmllbGQuIFRoZSBSU1BfVEVNUExBVEUgaXMgdXNlZCB0byBleHRyYWN0IGRhdGEgZnJvbSB0aGUgcmVzcG9uc2Ugc3RyaW5nIGFuZCBidWlsZCBhIGNvcnJlc3BvbmRpbmcgUlNQX1BBQ0tFVC4gU2VlIHRoZSBURU1QTEFURSB0YXJnZXQgd2l0aGluIHRoZSBPcGVuQzMgRGVtbyBjb25maWd1cmF0aW9uIGZvciBhbiBleGFtcGxlIG9mIHVzYWdlLg==
523
- parameters:
524
- - name: Write Termination Characters
525
- required: true
526
- description: The data to write to the stream after writing a command packet. Given
527
- as a hex string such as 0xABCD.
528
- values: ".+"
529
- - name: Read Termination Characters
530
- required: true
531
- description: The characters at the end of the stream which delineate the end of
532
- a telemetry packet. Given as a hex string such as 0xABCD.
533
- values: ".+"
534
- - name: Ignore Lines
535
- required: false
536
- description: Number of response lines to ignore (completely drop). Default is
537
- 0.
538
- values: "\\d+"
539
- - name: Initial Read Delay
540
- required: false
541
- description: An initial delay after connecting after which the stream will be
542
- read till empty and data dropped. Useful for discarding connect headers and
543
- initial prompts. Default is nil (no initial read).
544
- values: ".+"
545
- - name: Response Lines
546
- required: false
547
- description: The number of lines that make up expected responses. Default is 1.
548
- values: "\\d+"
549
- - name: Strip Read Termination
550
- required: false
551
- description: Whether to remove the read termination characters from the stream
552
- before returning the telemetry packet. Default is true.
553
- values:
554
- - 'true'
555
- - 'false'
556
- - name: Discard Leading Bytes
557
- required: false
558
- description: The number of bytes to discard from the binary data after reading
559
- from the stream. Note that this applies to bytes including the sync pattern
560
- if the sync pattern is being used. Default is 0 (do not discard bytes).
561
- values: "\\d+"
562
- - name: Sync Pattern
563
- required: false
564
- description: Hex string representing a byte pattern that will be searched for
565
- in the raw stream. This pattern represents a packet delimiter and all data found
566
- including the sync pattern will be returned. Default is nil (no sync pattern).
567
- values: ".+"
568
- - name: Fill Sync Pattern
569
- required: false
570
- description: Whether or not to fill in the sync pattern on outgoing packets. Default
571
- is false.
572
- values:
573
- - 'false'
574
- - 'true'
575
- - name: Response Timeout
576
- required: false
577
- description: Number of seconds to wait before timing out when waiting for a response.
578
- Default is 5 seconds.
579
- values: ".+"
580
- - name: Response Polling Period
581
- required: false
582
- description: Number of seconds to wait between polling for a response. Default
583
- is 0.02 seconds.
584
- values: ".+"
585
- - name: Error Action
586
- required: false
587
- description: How to handle errors in the protocol like unexpected responses or
588
- response timeouts. 'DISCONNECT' to disconnect after errors. The default is 'LOG'
589
- to log an error and continue.
590
- values:
591
- - LOG
592
- - DISCONNECT
593
- udp_interface.rb:
594
- description: The UDP interface uses UDP packets to send and receive telemetry
595
- from the target
596
- parameters:
597
- - name: Host
598
- required: true
599
- description: Machine name to connect to. Can be either a named
600
- machine (DNS entry) or IP address.
601
- values: .+
602
- - name: Write Port
603
- required: true
604
- description: Port which OpenC3 writes commands to
605
- values: \d{2,5}
606
- - name: Read Port
607
- required: true
608
- description: Port which OpenC3 reads telemetry from
609
- values: \d{2,5}
610
- - name: Write Source Port
611
- required: false
612
- description: Port on the local machine to send commands from. Default is
613
- 'nil' (socket is not bound to an outgoing port).
614
- values: \d{2,5}
615
- - name: Inteface Address
616
- required: false
617
- description:
618
- If the remote machine supports multicast the interface address
619
- is used to configure the outgoing multicast address
620
- values: .+
621
- - name: Time To Live
622
- required: false
623
- description: The number of intermediate routers allowed before dropping the packet
624
- values: .+
625
- - name: Write Timeout
626
- required: false
627
- description:
628
- Number of seconds to wait before aborting the write. Default is
629
- 'nil' (block on write).
630
- values: .+
631
- - name: Read Timeout
632
- required: false
633
- description:
634
- Number of seconds to wait before aborting the read. Default is
635
- 'nil' (block on read).
636
- values: .+
637
- - name: Bind Address
638
- required: false
639
- description: Address to bind UDP ports to
640
- values: .+
641
- serial_interface.rb:
642
- description: Connects to a target over a serial port. OpenC3 provides drivers
643
- for both Windows and POSIX drivers for UNIX based systems.
644
- parameters:
645
- - name: Write Port
646
- required: true
647
- description:
648
- Name of the serial port to write, e.g. 'COM1' or '/dev/ttyS0'.
649
- Pass 'nil' to disable writing.
650
- values: \d{2,5}
651
- - name: Read Port
652
- required: true
653
- description: Name of the serial port to read, e.g. 'COM1' or '/dev/ttyS0'.
654
- Pass 'nil' to disable reading.
655
- values: \d{2,5}
656
- - name: Baud Rate
657
- required: true
658
- description: Baud rate to read and write
659
- values: .+
660
- - name: Parity
661
- required: true
662
- description: Serial port parity
663
- values: ["NONE", "EVENT", "ODD"]
664
- - name: Stop Bits
665
- required: true
666
- description: Number of stop bits
667
- values: .+
668
- - name: Write Timeout
669
- required: true
670
- description: Number of seconds to wait before aborting the write.
671
- Pass 'nil' to block on write.
672
- values: .+
673
- - name: Read Timeout
674
- required: true
675
- description: Number of seconds to wait before aborting the read.
676
- Pass 'nil' to block on read.
677
- values: .+
678
- - name: Protocol Type
679
- required: true
680
- description: Protocol to apply on the interface data
681
- values: BURST:
682
- description: The Burst Stream Protocol simply reads as much data as it can from
683
- the stream before returning the data as a OpenC3 Packet. This Protocol relies
684
- on regular bursts of data delimited by time and thus is not very robust. However
685
- it can utilize a sync pattern which does allow it to re-sync from the stream if
686
- necessary.
687
- parameters:
688
- - name: Discard Leading Bytes
689
- required: false
690
- description: The number of bytes to discard from the binary data after reading
691
- from the stream. Note that this applies to bytes starting with the sync pattern
692
- if the sync pattern is being used. Default is 0 (don't discard bytes).
693
- values: "\\d+"
694
- - name: Sync Pattern
695
- required: false
696
- description: Hex string representing a byte pattern that will be searched for
697
- in the raw stream. This pattern represents a packet delimiter and all data found
698
- including the sync pattern will be returned. Default is 'nil' (no sync pattern).
699
- values: ".+"
700
- - name: Fill Sync Pattern
701
- required: false
702
- description: Whether or not to fill in the sync pattern on outgoing packets Default
703
- is false.
704
- values:
705
- - 'true'
706
- - 'false'
707
- FIXED:
708
- description: The Fixed Stream Protocol reads a preset minimum amount of data from
709
- the stream which is necessary to properly identify all the defined packets using
710
- the interface. It then identifies the packet and proceeds to read as much data
711
- from the stream as necessary to create the packet which it then returns. This
712
- stream relies on all the packets on the interface being fixed in length. For example,
713
- all the packets using the interface are a fixed size and contain a simple header
714
- with a 32 bit sync pattern followed by a 16 bit ID. The Fixed Stream Protocol
715
- would elegantly handle this case with a minimum read size of 6 bytes.
716
- parameters:
717
- - name: Minimum ID Size
718
- required: true
719
- description: The minimum amount of bytes needed to identify a packet. All the
720
- packet definitions must declare their ID_ITEM(s) within this given amount of
721
- bytes.
722
- values: "\\d+"
723
- - name: Discard Leading Bytes
724
- required: false
725
- description: The number of bytes to discard from the binary data after reading
726
- from the stream. Note that this applies to bytes starting with the sync pattern
727
- if the sync pattern is being used. Default is 0 (do not discard bytes).
728
- values: "\\d+"
729
- - name: Sync Pattern
730
- required: false
731
- description: Hex string representing a byte pattern that will be searched for
732
- in the raw stream. This pattern represents a packet delimiter and all data found
733
- including the sync pattern will be returned. Default is 'nil' (no sync pattern).
734
- values: ".+"
735
- - name: Telemetry Stream
736
- required: false
737
- description: Whether the stream is returning telemetry. Default is true.
738
- values:
739
- - 'true'
740
- - 'false'
741
- - name: Fill Sync Pattern
742
- required: false
743
- description: Whether or not to fill in the sync pattern on outgoing packets. Default
744
- is false.
745
- values:
746
- - 'false'
747
- - 'true'
748
- LENGTH:
749
- description: The Length Stream Protocol depends on a length field at a fixed location
750
- in the defined packets using the interface. It then reads enough data to grab
751
- the length field, decodes it, and reads the remaining length of the packet. For
752
- example, all the packets using the interface contain a CCSDS header with a length
753
- field. The Length Stream Protocol can be set up to handle the length field and
754
- even the "length - 1" offset the CCSDS header uses.
755
- parameters:
756
- - name: Length Bit Offset
757
- required: false
758
- description: The bit offset of the length field. Every packet using this interface
759
- must have the same structure such that the length field is the same size at
760
- the same location. Be sure to account for the length of the Sync Pattern in
761
- this value (if present). Default is 0.
762
- values: "\\d+"
763
- - name: Length Bit Size
764
- required: false
765
- description: The size in bits of the length field. Default is 16.
766
- values: "\\d+"
767
- - name: Length Value Offset
768
- required: false
769
- description: The offset to apply to the length field value. For example if the
770
- length field indicates packet length minus one, this value should be one. Be
771
- sure to account for the length of the Sync Pattern in this value (if present).
772
- Default is 0.
773
- values: "\\d+"
774
- - name: Bytes per Count
775
- required: false
776
- description: The number of bytes per each length field 'count'. This is used if
777
- the units of the length field is something other than bytes, for example if
778
- the length field count is in words. Default is 1.
779
- values: "\\d+"
780
- - name: Length Endianness
781
- required: false
782
- description: The endianness of the length field.
783
- values:
784
- - BIG_ENDIAN
785
- - LITTLE_ENDIAN
786
- - name: Discard Leading Bytes
787
- required: false
788
- description: The number of bytes to discard from the binary data after reading
789
- from the stream. Note that this applies to bytes including the sync pattern
790
- if the sync pattern is being used. Discarding is one of the very last steps
791
- so any size and offsets above need to account for all the data before discarding.
792
- Default is 0 (do not discard bytes).
793
- values: "\\d+"
794
- - name: Sync Pattern
795
- required: false
796
- description: Hex string representing a byte pattern that will be searched for
797
- in the raw stream. This pattern represents a packet delimiter and all data found
798
- including the sync pattern will be returned. Default is nil (no sync pattern)
799
- values: ".+"
800
- - name: Max Length
801
- required: false
802
- description: The maximum allowed value in the length field. Default is nil (no
803
- maximum length)
804
- values: ".+"
805
- - name: Fill Length and Sync Pattern
806
- required: false
807
- description: Setting this flag to true causes the length field and sync pattern
808
- (if present) to be filled automatically on outgoing packets. Default is false
809
- values:
810
- - 'false'
811
- - 'true'
812
- TERMINATED:
813
- description: The Terminated Stream Protocol delineates packets using termination
814
- characters found at the end of every packet. It continuously reads data from the
815
- stream until the termination characters are found at which point it returns the
816
- packet data. For example, all the packets using the interface are followed by
817
- 0xABCD. This data can either be a part of each packet that is kept or something
818
- which is known only by the Terminated Stream Protocol and simply thrown away.
819
- parameters:
820
- - name: Write Termination Characters
821
- required: true
822
- description: The data to write to the stream after writing a command packet. Given
823
- as a hex string such as 0xABCD.
824
- values: ".+"
825
- - name: Read Termination Characters
826
- required: true
827
- description: The characters at the end of the stream which delineate the end of
828
- a telemetry packet. Given as a hex string such as 0xABCD.
829
- values: ".+"
830
- - name: Strip Read Termination
831
- required: false
832
- description: Whether to remove the read termination characters from the stream
833
- before returning the telemetry packet. Default is true.
834
- values:
835
- - 'true'
836
- - 'false'
837
- - name: Discard Leading Bytes
838
- required: false
839
- description: The number of bytes to discard from the binary data after reading
840
- from the stream. Note that this applies to bytes including the sync pattern
841
- if the sync pattern is being used. Default is 0 (do not discard bytes)
842
- values: "\\d+"
843
- - name: Sync Pattern
844
- required: false
845
- description: Hex string representing a byte pattern that will be searched for
846
- in the raw stream. This pattern represents a packet delimiter and all data found
847
- including the sync pattern will be returned. Default is nil (no sync pattern)
848
- values: ".+"
849
- - name: Fill Sync Pattern
850
- required: false
851
- description: Whether or not to fill in the sync pattern on outgoing packets Default
852
- is false
853
- values:
854
- - 'false'
855
- - 'true'
856
- PREIDENTIFIED:
857
- description: The Preidentified Stream Protocol is used internally by the OpenC3
858
- Command and Telemetry Server only and delineates packets using a custom OpenC3
859
- header. This stream Protocol is configured by default on port 7779 and is created
860
- by the Command and Telemetry Server to allow tools to connect and receive the
861
- entire packet stream. The Telemetry Grapher uses this port to receive all the
862
- packets following through the Command and Telemetry Server in case any need to
863
- be graphed.
864
- parameters:
865
- - name: Sync Pattern
866
- required: false
867
- description: Hex string representing a byte pattern that will be searched for
868
- in the raw stream. This pattern represents a packet delimiter and all data found
869
- AFTER the sync pattern will be returned. The sync pattern itself is discarded.
870
- Default is nil (no sync pattern)
871
- values: ".+"
872
- - name: Max Length
873
- required: false
874
- description: The maximum allowed value in the length field. Default is nil (no
875
- maximum length)
876
- values: ".+"
877
- TEMPLATE:
878
- description: !binary |-
879
- VGhlIFRlbXBsYXRlIFN0cmVhbSBQcm90b2NvbCB3b3JrcyBtdWNoIGxpa2UgdGhlIFRlcm1pbmF0ZWQgU3RyZWFtIFByb3RvY29sIGV4Y2VwdCBpdCBkZXNpZ25lZCBmb3IgdGV4dC1iYXNlZCBjb21tYW5kIGFuZCByZXNwb25zZSB0eXBlIGludGVyZmFjZXMgc3VjaCBhcyBTQ1BJIChTdGFuZGFyZCBDb21tYW5kcyBmb3IgUHJvZ3JhbW1hYmxlIEluc3RydW1lbnRzKS4gSXQgZGVsaW5lYXRlcyBwYWNrZXRzIGluIHRoZSBzYW1lIHdheSBhcyB0aGUgdGVybWluYXRlZCBzdHJlYW0gcHJvdG9jb2wgZXhjZXB0IGVhY2ggcGFja2V0IGlzIHJlZmVycmVkIHRvIGFzIGEgbGluZSAoYmVjYXVzZSBlYWNoIHVzdWFsbHkgY29udGFpbnMgYSBsaW5lIG9mIHRleHQpLiBGb3Igb3V0Z29pbmcgcGFja2V0cyBhIENNRF9URU1QTEFURSBmaWVsZCBpcyBleHBlY3RlZCB0byBleGlzdCBpbiB0aGUgcGFja2V0LiBUaGlzIGZpZWxkIGNvbnRhaW5zIGEgdGVtcGxhdGUgc3RyaW5nIHdpdGggaXRlbXMgdG8gYmUgZmlsbGVkIGluIGRlbGluaWF0ZWQgd2l0aGluIEhUTUwgdGFnIHN0eWxlIGJyYWNrZXRzIOKAnCIuIFRoZSBUZW1wbGF0ZSBTdHJlYW0gUHJvdG9jb2wgd2lsbCByZWFkIHRoZSBuYW1lZCBpdGVtcyBmcm9tIHdpdGhpbiB0aGUgcGFja2V0IGZpbGwgaW4gdGhlIENNRF9URU1QTEFURS4gVGhpcyBmaWxsZWQgaW4gc3RyaW5nIGlzIHRoZW4gc2VudCBvdXQgcmF0aGVyIHRoYW4gdGhlIG9yaWdpbmFsbHkgcGFzc2VkIGluIHBhY2tldC4gQ29ycmVzcG9uZGluZ2x5LCBpZiBhIHJlc3BvbnNlIGlzIGV4cGVjdGVkIHRoZSBvdXRnb2luZyBwYWNrZXQgc2hvdWxkIGluY2x1ZGUgYSBSU1BfVEVNUExBVEUgYW5kIFJTUF9QQUNLRVQgZmllbGQuIFRoZSBSU1BfVEVNUExBVEUgaXMgdXNlZCB0byBleHRyYWN0IGRhdGEgZnJvbSB0aGUgcmVzcG9uc2Ugc3RyaW5nIGFuZCBidWlsZCBhIGNvcnJlc3BvbmRpbmcgUlNQX1BBQ0tFVC4gU2VlIHRoZSBURU1QTEFURSB0YXJnZXQgd2l0aGluIHRoZSBPcGVuQzMgRGVtbyBjb25maWd1cmF0aW9uIGZvciBhbiBleGFtcGxlIG9mIHVzYWdlLg==
880
- parameters:
881
- - name: Write Termination Characters
882
- required: true
883
- description: The data to write to the stream after writing a command packet. Given
884
- as a hex string such as 0xABCD.
885
- values: ".+"
886
- - name: Read Termination Characters
887
- required: true
888
- description: The characters at the end of the stream which delineate the end of
889
- a telemetry packet. Given as a hex string such as 0xABCD.
890
- values: ".+"
891
- - name: Ignore Lines
892
- required: false
893
- description: Number of response lines to ignore (completely drop). Default is
894
- 0.
895
- values: "\\d+"
896
- - name: Initial Read Delay
897
- required: false
898
- description: An initial delay after connecting after which the stream will be
899
- read till empty and data dropped. Useful for discarding connect headers and
900
- initial prompts. Default is nil (no initial read).
901
- values: ".+"
902
- - name: Response Lines
903
- required: false
904
- description: The number of lines that make up expected responses. Default is 1.
905
- values: "\\d+"
906
- - name: Strip Read Termination
907
- required: false
908
- description: Whether to remove the read termination characters from the stream
909
- before returning the telemetry packet. Default is true.
910
- values:
911
- - 'true'
912
- - 'false'
913
- - name: Discard Leading Bytes
914
- required: false
915
- description: The number of bytes to discard from the binary data after reading
916
- from the stream. Note that this applies to bytes including the sync pattern
917
- if the sync pattern is being used. Default is 0 (do not discard bytes).
918
- values: "\\d+"
919
- - name: Sync Pattern
920
- required: false
921
- description: Hex string representing a byte pattern that will be searched for
922
- in the raw stream. This pattern represents a packet delimiter and all data found
923
- including the sync pattern will be returned. Default is nil (no sync pattern).
924
- values: ".+"
925
- - name: Fill Sync Pattern
926
- required: false
927
- description: Whether or not to fill in the sync pattern on outgoing packets. Default
928
- is false.
929
- values:
930
- - 'false'
931
- - 'true'
932
- - name: Response Timeout
933
- required: false
934
- description: Number of seconds to wait before timing out when waiting for a response.
935
- Default is 5 seconds.
936
- values: ".+"
937
- - name: Response Polling Period
938
- required: false
939
- description: Number of seconds to wait between polling for a response. Default
940
- is 0.02 seconds.
941
- values: ".+"
942
- - name: Error Action
943
- required: false
944
- description: How to handle errors in the protocol like unexpected responses or
945
- response timeouts. 'DISCONNECT' to disconnect after errors. The default is 'LOG'
946
- to log an error and continue.
947
- values:
948
- - LOG
949
- - DISCONNECT
950
- cmd_tlm_server_interface.rb:
951
- description: Provides a connection to the OpenC3 Command and Telemetry Server.
952
- This allows scripts and other OpenC3 tools to send commands to the CmdTlmServer
953
- to enable and disable logging. It also allows scripts and other tools to
954
- receive a OpenC3 version information packet and a limits change packet which
955
- is sent when any telemetry items change limits states. The CmdTlmServer
956
- interface can be used by any OpenC3 configuration.
957
- linc_interface.rb:
958
- description: The LINC interface uses a single TCPIP socket to talk to a Ball
959
- Aerospace LINC Labview target.
960
- parameters:
961
- - name: Host
962
- required: true
963
- description: Machine name to connect to. Can be either a named
964
- machine (DNS entry) or IP address.
965
- values: .+
966
- - name: Port
967
- required: true
968
- description: Port to write commands to and read telemetry from
969
- values: \d{2,5}
970
- - name: Handshake Enabled
971
- required: false
972
- description: Enable command handshaking where commands block until the
973
- corresponding handshake message is received. Default is true.
974
- values: ["true", "false"]
975
- - name: Response Timeout
976
- required: false
977
- description: Number of seconds to wait for a handshaking response.
978
- Default is 5 seconds
979
- values: \d+
980
- - name: Read Timeout
981
- required: true
982
- description: Number of seconds to wait before aborting the read.
983
- Pass 'nil' to block on read. Default is nil.
984
- values: .+
985
- - name: Write Timeout
986
- required: true
987
- description: Number of seconds to wait before aborting the write.
988
- Pass 'nil' to block on write. Default is 5 seconds.
989
- values: .+
990
- - name: Length Bit Offset
991
- required: false
992
- description: The bit offset of the length field. Every packet using this
993
- interface must have the same structure such that the length field is the
994
- same size at the same location. Default is 0.
995
- values: \d+
996
- - name: Length Bit Size
997
- required: false
998
- description: The size in bits of the length field. Default is 16 bits.
999
- values: \d+
1000
- - name: Length Value Offset
1001
- required: false
1002
- description: The offset to apply to the length field value. For example if
1003
- the length field indicates packet length minus one, this value should be one.
1004
- Default is 4.
1005
- values: \d+
1006
- - name: GUID Fieldname
1007
- required: false
1008
- description: Fieldname of the GUID field. Default is 'HDR_GUID'.
1009
- values: .+
1010
- - name: Length Endianness
1011
- required: false
1012
- description: The endianness of the length field. Default is BIG_ENDIAN.
1013
- values: ["BIG_ENDIAN", "LITTLE_ENDIAN"]
1014
- - name: Length Fieldname
1015
- required: false
1016
- description: Fieldname of the length field. Defaults is 'HDR_LENGTH'.
1017
- values: .+