create_campaign

IoTFleetWise.Client.create_campaign(**kwargs)

Creates an orchestration of data collection rules. The Amazon Web Services IoT FleetWise Edge Agent software running in vehicles uses campaigns to decide how to collect and transfer data to the cloud. You create campaigns in the cloud. After you or your team approve campaigns, Amazon Web Services IoT FleetWise automatically deploys them to vehicles.

For more information, see Collect and transfer data with campaigns in the Amazon Web Services IoT FleetWise Developer Guide .

See also: AWS API Documentation

Request Syntax

response = client.create_campaign(
    name='string',
    description='string',
    signalCatalogArn='string',
    targetArn='string',
    startTime=datetime(2015, 1, 1),
    expiryTime=datetime(2015, 1, 1),
    postTriggerCollectionDuration=123,
    diagnosticsMode='OFF'|'SEND_ACTIVE_DTCS',
    spoolingMode='OFF'|'TO_DISK',
    compression='OFF'|'SNAPPY',
    priority=123,
    signalsToCollect=[
        {
            'name': 'string',
            'maxSampleCount': 123,
            'minimumSamplingIntervalMs': 123
        },
    ],
    collectionScheme={
        'timeBasedCollectionScheme': {
            'periodMs': 123
        },
        'conditionBasedCollectionScheme': {
            'expression': 'string',
            'minimumTriggerIntervalMs': 123,
            'triggerMode': 'ALWAYS'|'RISING_EDGE',
            'conditionLanguageVersion': 123
        }
    },
    dataExtraDimensions=[
        'string',
    ],
    tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
Parameters
  • name (string) --

    [REQUIRED]

    The name of the campaign to create.

  • description (string) -- An optional description of the campaign to help identify its purpose.
  • signalCatalogArn (string) --

    [REQUIRED]

    (Optional) The Amazon Resource Name (ARN) of the signal catalog to associate with the campaign.

  • targetArn (string) --

    [REQUIRED]

    The ARN of the vehicle or fleet to deploy a campaign to.

  • startTime (datetime) --

    (Optional) The time, in milliseconds, to deliver a campaign after it was approved. If it's not specified, 0 is used.

    Default: 0

  • expiryTime (datetime) --

    (Optional) The time the campaign expires, in seconds since epoch (January 1, 1970 at midnight UTC time). Vehicle data won't be collected after the campaign expires.

    Default: 253402214400 (December 31, 9999, 00:00:00 UTC)

  • postTriggerCollectionDuration (integer) --

    (Optional) How long (in milliseconds) to collect raw data after a triggering event initiates the collection. If it's not specified, 0 is used.

    Default: 0

  • diagnosticsMode (string) --

    (Optional) Option for a vehicle to send diagnostic trouble codes to Amazon Web Services IoT FleetWise. If you want to send diagnostic trouble codes, use SEND_ACTIVE_DTCS . If it's not specified, OFF is used.

    Default: OFF

  • spoolingMode (string) --

    (Optional) Whether to store collected data after a vehicle lost a connection with the cloud. After a connection is re-established, the data is automatically forwarded to Amazon Web Services IoT FleetWise. If you want to store collected data when a vehicle loses connection with the cloud, use TO_DISK . If it's not specified, OFF is used.

    Default: OFF

  • compression (string) --

    (Optional) Whether to compress signals before transmitting data to Amazon Web Services IoT FleetWise. If you don't want to compress the signals, use OFF . If it's not specified, SNAPPY is used.

    Default: SNAPPY

  • priority (integer) --

    (Optional) A number indicating the priority of one campaign over another campaign for a certain vehicle or fleet. A campaign with the lowest value is deployed to vehicles before any other campaigns. If it's not specified, 0 is used.

    Default: 0

  • signalsToCollect (list) --

    (Optional) A list of information about signals to collect.

    • (dict) --

      Information about a signal.

      • name (string) -- [REQUIRED]

        The name of the signal.

      • maxSampleCount (integer) --

        The maximum number of samples to collect.

      • minimumSamplingIntervalMs (integer) --

        The minimum duration of time (in milliseconds) between two triggering events to collect data.

        Note

        If a signal changes often, you might want to collect data at a slower rate.

  • collectionScheme (dict) --

    [REQUIRED]

    The data collection scheme associated with the campaign. You can specify a scheme that collects data based on time or an event.

    Note

    This is a Tagged Union structure. Only one of the following top level keys can be set: timeBasedCollectionScheme, conditionBasedCollectionScheme.

    • timeBasedCollectionScheme (dict) --

      Information about a collection scheme that uses a time period to decide how often to collect data.

      • periodMs (integer) -- [REQUIRED]

        The time period (in milliseconds) to decide how often to collect data. For example, if the time period is 60000 , the Edge Agent software collects data once every minute.

    • conditionBasedCollectionScheme (dict) --

      Information about a collection scheme that uses a simple logical expression to recognize what data to collect.

      • expression (string) -- [REQUIRED]

        The logical expression used to recognize what data to collect. For example, $variable.Vehicle.OutsideAirTemperature >= 105.0 .

      • minimumTriggerIntervalMs (integer) --

        The minimum duration of time between two triggering events to collect data, in milliseconds.

        Note

        If a signal changes often, you might want to collect data at a slower rate.

      • triggerMode (string) --

        Whether to collect data for all triggering events ( ALWAYS ). Specify ( RISING_EDGE ), or specify only when the condition first evaluates to false. For example, triggering on "AirbagDeployed"; Users aren't interested on triggering when the airbag is already exploded; they only care about the change from not deployed => deployed.

      • conditionLanguageVersion (integer) --

        Specifies the version of the conditional expression language.

  • dataExtraDimensions (list) --

    (Optional) A list of vehicle attributes to associate with a campaign.

    Enrich the data with specified vehicle attributes. For example, add make and model to the campaign, and Amazon Web Services IoT FleetWise will associate the data with those attributes as dimensions in Amazon Timestream. You can then query the data against make and model .

    Default: An empty array

    • (string) --
  • tags (list) --

    Metadata that can be used to manage the campaign.

    • (dict) --

      A set of key/value pairs that are used to manage the resource.

      • Key (string) -- [REQUIRED]

        The tag's key.

      • Value (string) -- [REQUIRED]

        The tag's value.

Return type

dict

Returns

Response Syntax

{
    'name': 'string',
    'arn': 'string'
}

Response Structure

  • (dict) --

    • name (string) --

      The name of the created campaign.

    • arn (string) --

      The ARN of the created campaign.

Exceptions

  • IoTFleetWise.Client.exceptions.ResourceNotFoundException
  • IoTFleetWise.Client.exceptions.InternalServerException
  • IoTFleetWise.Client.exceptions.ConflictException
  • IoTFleetWise.Client.exceptions.LimitExceededException
  • IoTFleetWise.Client.exceptions.ThrottlingException
  • IoTFleetWise.Client.exceptions.ValidationException
  • IoTFleetWise.Client.exceptions.AccessDeniedException