Skip to content
GitHubXDiscord

StateTemplate

The StateTemplate resource lets you create and manage AWS IoTFleetWise StateTemplates for vehicle state data collection and analysis.

Create a basic StateTemplate with required properties and a description:

import AWS from "alchemy/aws/control";
const basicStateTemplate = await AWS.IoTFleetWise.StateTemplate("basicStateTemplate", {
Name: "BasicStateTemplate",
StateTemplateProperties: ["property1", "property2"],
Description: "A basic state template for vehicle data collection",
SignalCatalogArn: "arn:aws:iotfleetwise:us-west-2:123456789012:signal-catalog:example-signal-catalog"
});

Configure a StateTemplate with additional optional properties such as extra dimensions and tags:

const advancedStateTemplate = await AWS.IoTFleetWise.StateTemplate("advancedStateTemplate", {
Name: "AdvancedStateTemplate",
StateTemplateProperties: ["property1", "property2", "property3"],
Description: "An advanced state template with extra dimensions",
SignalCatalogArn: "arn:aws:iotfleetwise:us-west-2:123456789012:signal-catalog:example-signal-catalog",
DataExtraDimensions: ["dimension1", "dimension2"],
MetadataExtraDimensions: ["metadata1"],
Tags: [
{ Key: "Environment", Value: "Production" },
{ Key: "Owner", Value: "FleetManager" }
]
});

Adopt an existing StateTemplate if it already exists instead of failing:

const updateStateTemplate = await AWS.IoTFleetWise.StateTemplate("updateStateTemplate", {
Name: "ExistingStateTemplate",
StateTemplateProperties: ["updatedProperty1", "updatedProperty2"],
SignalCatalogArn: "arn:aws:iotfleetwise:us-west-2:123456789012:signal-catalog:example-signal-catalog",
adopt: true // Allow adoption of existing resource
});

Create multiple StateTemplates for different vehicle states:

const engineStateTemplate = await AWS.IoTFleetWise.StateTemplate("engineStateTemplate", {
Name: "EngineStateTemplate",
StateTemplateProperties: ["engineStatus", "engineTemperature"],
SignalCatalogArn: "arn:aws:iotfleetwise:us-west-2:123456789012:signal-catalog:example-signal-catalog"
});
const batteryStateTemplate = await AWS.IoTFleetWise.StateTemplate("batteryStateTemplate", {
Name: "BatteryStateTemplate",
StateTemplateProperties: ["batteryLevel", "batteryTemperature"],
SignalCatalogArn: "arn:aws:iotfleetwise:us-west-2:123456789012:signal-catalog:example-signal-catalog"
});