azurermOrbitalContactProfile
Manages a Contact profile.
Example Usage
/*Provider bindings are generated by running cdktf get.
See https://cdk.tf/provider-generation for more details.*/
import * as azurerm from "./.gen/providers/azurerm";
/*The following providers are missing schema information and might need manual adjustments to synthesize correctly: azurerm.
For a more precise conversion please use the --provider flag in convert.*/
const azurermResourceGroupExample = new azurerm.resourceGroup.ResourceGroup(
this,
"example",
{
location: "West Europe",
name: "rg-example",
}
);
const azurermVirtualNetworkExample = new azurerm.virtualNetwork.VirtualNetwork(
this,
"example_1",
{
address_space: ["10.0.0.0/16"],
location: "${azurerm_resource_group.test.location}",
name: "testvnet",
resource_group_name: "${azurerm_resource_group.test.name}",
}
);
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
azurermVirtualNetworkExample.overrideLogicalId("example");
const azurermSubnetExample = new azurerm.subnet.Subnet(this, "example_2", {
address_prefixes: ["10.0.1.0/24"],
delegation: [
{
name: "orbitalgateway",
service_delegation: [
{
actions: [
"Microsoft.Network/publicIPAddresses/join/action",
"Microsoft.Network/virtualNetworks/subnets/join/action",
"Microsoft.Network/virtualNetworks/read",
"Microsoft.Network/publicIPAddresses/read",
],
name: "Microsoft.Orbital/orbitalGateways",
},
],
},
],
name: "testsubnet",
resource_group_name: azurermResourceGroupExample.name,
virtual_network_name: azurermVirtualNetworkExample.name,
});
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
azurermSubnetExample.overrideLogicalId("example");
const azurermOrbitalContactProfileExample =
new azurerm.orbitalContactProfile.OrbitalContactProfile(this, "example_3", {
auto_tracking: "disabled",
links: [
{
channels: [
{
bandwidth_mhz: 100,
center_frequency_mhz: 101,
end_point: [
{
end_point_name: "AQUA_command",
ip_address: "10.0.1.0",
port: "49513",
protocol: "TCP",
},
],
name: "channelname",
},
],
direction: "Uplink",
name: "RHCP_UL",
polarization: "RHCP",
},
],
location: "${azurerm_resource_group.test.location}",
minimum_variable_contact_duration: "PT1M",
name: "example-contact-profile",
network_configuration_subnet_id: azurermSubnetExample.id,
resource_group_name: "${azurerm_resource_group.test.name}",
});
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
azurermOrbitalContactProfileExample.overrideLogicalId("example");
Arguments Reference
The following arguments are supported:
-
name
- (Required) The name of the contact profile. Changing this forces a new resource to be created. -
resourceGroupName
- (Required) The name of the Resource Group where the contact profile exists. Changing this forces a new resource to be created. -
location
- (Required) The location where the contact profile exists. Changing this forces a new resource to be created. -
minimumVariableContactDuration
- (Required) Minimum viable contact duration in ISO 8601 format. Used for listing the available contacts with a spacecraft at a given ground station. -
autoTracking
- (Required) Auto-tracking configurations for a spacecraft. Possible values aredisabled
,xBand
andsBand
. -
networkConfigurationSubnetId
- (Required) ARM resource identifier of the subnet delegated to the Microsoft.Orbital/orbitalGateways. Needs to be at least a class C subnet, and should not have any IP created in it. Changing this forces a new resource to be created. -
links
- (Required) A list of spacecraft links. Alinks
block as defined below. Changing this forces a new resource to be created. -
eventHubUri
- (Optional) ARM resource identifier of the Event Hub used for telemetry. Requires granting Orbital Resource Provider the rights to send telemetry into the hub. -
minimumElevationDegrees
- (Optional) Maximum elevation of the antenna during the contact in decimal degrees. -
tags
- (Optional) A mapping of tags to assign to the resource.
A links
block supports the following:
-
channels
- (Required) A list of contact profile link channels. Achannels
block as defined below. Changing this forces a new resource to be created. -
direction
- (Required) Direction of the link. Possible values areuplink
anddownlink
. -
name
- (Required) Name of the link. -
polarization
- (Required) Polarization of the link. Possible values arelhcp
,rhcp
,linearVertical
andlinearHorizontal
.
A channels
block supports the following:
-
name
- (Required) Name of the channel. -
centerFrequencyMhz
- (Required) Center frequency in MHz. -
bandwidthMhz
- (Required) Bandwidth in MHz. -
endPoint
- (Required) Customer End point to store/retrieve data during a contact. AnendPoint
block as defined below. -
modulationConfiguration
- (Optional) Copy of the modem configuration file such as Kratos QRadio. Only valid for uplink directions. If provided, the modem connects to the customer endpoint and accepts commands from the customer instead of a VITA.49 stream. -
demodulationConfiguration
- (Optional) Copy of the modem configuration file such as Kratos QRadio or Kratos QuantumRx. Only valid for downlink directions. If provided, the modem connects to the customer endpoint and sends demodulated data instead of a VITA.49 stream.
An endPoint
block supports the following:
-
endPointName
- (Required) Name of an end point. -
ipAddress
- (Required) IP address of an end point. -
port
- (Required) TCP port to listen on to receive data. -
protocol
- (Required) Protocol of an end point. Possible values aretcp
andudp
.
Attribute Reference
In addition to the Arguments listed above - the following attributes are exported:
id
- The ID of the contact profile.
Timeouts
The timeouts
block allows you to specify timeouts for certain actions:
create
- (Defaults to 30 minutes) Used when creating the Contact profile.read
- (Defaults to 5 minutes) Used when retrieving the Contact profile.update
- (Defaults to 30 minutes) Used when updating the Contact profile.delete
- (Defaults to 30 minutes) Used when deleting the Contact profile.
Import
Contact profile can be imported using the resourceId
, e.g.