YAMCS Plugin - Multiple Instance Support #7704
Unanswered
GUI-Botox
asked this question in
Community Q&A
Replies: 1 comment 1 reply
-
Hi @GUI-Botox , Apologies for the sparse documentation in this area, and thank you for bringing it to our attention. Here's some documentation on how to set up YAMCS MDB and roles to support Mission Status. The process for setting up operator status is very similar to mission status. We use YAMCS aliases to signify which parameters are relevant to which feature. Below I've provided an example MDB that defines everything needed for the Mission Status and Operator Status features: <?xml version="1.0" encoding="UTF-8"?>
<SpaceSystem name="OpenMCTTest" shortDescription="Open MCT Test Parameters"
xmlns="http://www.omg.org/spec/XTCE/20180204"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xi="http://www.w3.org/2001/XInclude">
<LongDescription>
Parameters that are used for Open MCT testing only.
</LongDescription>
<Header validationStatus="Draft" classification="none" />
<TelemetryMetaData>
<ParameterTypeSet>
<!-- Enumerated parameter type for defining mission status with possible values -->
<EnumeratedParameterType name="MissionStatus">
<IntegerDataEncoding sizeInBits="8" encoding="unsigned" />
<EnumerationList>
<Enumeration value="0" label="NO GO" shortDescription="No Go" />
<Enumeration value="1" label="GO" shortDescription="Go" />
</EnumerationList>
</EnumeratedParameterType>
<!-- Enumerated parameter type for defining operator status with possible values -->
<EnumeratedParameterType name="OperatorStatus">
<IntegerDataEncoding sizeInBits="8" encoding="unsigned" />
<EnumerationList>
<Enumeration value="0" label="NO GO" shortDescription="No Go" />
<Enumeration value="1" label="GO" shortDescription="Go" />
</EnumerationList>
</EnumeratedParameterType>
<!-- String parameter type for poll questions, allowing for a string of up to 256 bits -->
<StringParameterType name="PollQuestion">
<StringDataEncoding sizeInBits="256" />
</StringParameterType>
</ParameterTypeSet>
<!-- Set of parameters referencing the defined parameter types -->
<ParameterSet>
<!-- Parameter definition for 'Driving' mission status -->
<Parameter parameterTypeRef="MissionStatus" name="Driving">
<AliasSet>
<!-- Alias defining the parameter type context in OpenMCT -->
<Alias nameSpace="OpenMCT:type" alias="yamcs.missionStatus" />
<!-- Alias defining the specific action this parameter represents -->
<Alias nameSpace="OpenMCT:action" alias="drivingStatus" />
</AliasSet>
<ParameterProperties dataSource="local" />
</Parameter>
<!-- Parameter definition for 'Imagery' mission status -->
<Parameter parameterTypeRef="MissionStatus" name="Imagery">
<AliasSet>
<Alias nameSpace="OpenMCT:type" alias="yamcs.missionStatus" />
<Alias nameSpace="OpenMCT:action" alias="imageryStatus" />
</AliasSet>
<ParameterProperties dataSource="local" />
</Parameter>
<!-- Parameter definition for 'Driver' operator status -->
<Parameter parameterTypeRef="OperatorStatus" name="Driver">
<AliasSet>
<Alias nameSpace="OpenMCT:type" alias="yamcs.operatorStatus" />
<Alias nameSpace="OpenMCT:role" alias="driverStatus" />
</AliasSet>
<ParameterProperties dataSource="local" />
</Parameter>
<!-- Parameter definition for 'Flight' operator status -->
<Parameter parameterTypeRef="OperatorStatus" name="Flight">
<AliasSet>
<Alias nameSpace="OpenMCT:type" alias="yamcs.operatorStatus" />
<Alias nameSpace="OpenMCT:role" alias="flightStatus" />
</AliasSet>
<ParameterProperties dataSource="local" />
</Parameter>
<!-- Parameter definition for 'Science' operator status -->
<Parameter parameterTypeRef="OperatorStatus" name="Science">
<AliasSet>
<Alias nameSpace="OpenMCT:type" alias="yamcs.operatorStatus" />
<Alias nameSpace="OpenMCT:role" alias="scienceStatus" />
</AliasSet>
<ParameterProperties dataSource="local" />
</Parameter>
<!-- Parameter definition for the current poll question -->
<Parameter parameterTypeRef="PollQuestion" name="CurrentPollQuestion">
<AliasSet>
<Alias nameSpace="OpenMCT:type" alias="yamcs.pollQuestion" />
</AliasSet>
<ParameterProperties dataSource="local" />
</Parameter>
</ParameterSet>
</TelemetryMetaData>
</SpaceSystem>
Description
Usage
Notes:
I will update our documentation with the info provided above. Hope this helps! Cheers, |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
We're in the process of refactoring the YAMCS plugin to support multiple instances, however, we could use some additional information on the functionality of the user-provider. We've already successfully connected to multiple YAMCS instances to display telemetry and can access the user roles in the first YAMCS instance.
Aside from the exampleUser plugin, we can't find much documentation on the YAMCS integration with poll questions, operator status, and mission status. Although user roles are now selectable once we created them in the first YAMCS instance, mission status isn't populating. Assuming it has something to do with telemetry parameters of types: 'yamcs.operatorStatus', 'yamcs.missionStatus', and 'yamcs.pollQuestion', how should we setup these parameters in YAMCS so that we can complete integration and thoroughly test the providers?
Any thoughts or guidance would be greatly appreciated.
Beta Was this translation helpful? Give feedback.
All reactions