Patent ID: 8094731

Claim:
A non-transitory computer-readable medium storing instructions for coordinating communications between a ground station, a control center, and a spacecraft, the instructions comprising: receiving instructions as a call and arguments to a simple, unified application programmer interface implementing communications protocols related to outer space; determining an instruction type of the received instructions; when the determined instruction type relates to receiving a first command at the control center for the ground station: (1) translating the first command to generate a first abstract message by agreeing upon a format for each type of abstract message with the ground station and using a discrete set of abstract message definitions to configure the first command in the agreed upon format; (2) encoding the first abstract message using an encoding layer to generate a first encoded message; (3) transferring the first encoded message to the ground station using a transport mapping layer; when the determined instruction type relates to receiving a second command as a second encoded message at the ground station from the control center: (1) decoding the second encoded message using a decoding layer to generate a second abstract message; (2) translating the second abstract message to generate a second command by agreeing upon the format for each type of abstract message with the control center and using the discrete set of abstract message definitions to configure the second abstract message in the agreed upon format; (3) executing the second command; when the determined instruction type relates to transmitting information to the control center, the information being received at the ground station from the spacecraft: (1) translating the information to generate a third abstract message by agreeing upon the format for each type of abstract message with the control center and using the discrete set of abstract message definitions to configure the information in the agreed upon format; (2) encoding the third abstract message using the encoding layer to generate a third encoded message; and (3) transferring the third encoded message to the control center using the transport mapping layer.