AWS IoT Wireless

2022/08/08 - AWS IoT Wireless - 7 updated api methods

Changes  AWS IoT Wireless release support for sidewalk data reliability.

CreateServiceProfile (updated) Link ¶
Changes (request)
{'LoRaWAN': {'DrMax': 'integer', 'DrMin': 'integer'}}

Creates a new service profile.

See also: AWS API Documentation

Request Syntax

client.create_service_profile(
    Name='string',
    LoRaWAN={
        'AddGwMetadata': True|False,
        'DrMin': 123,
        'DrMax': 123
    },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    ClientRequestToken='string'
)
type Name:

string

param Name:

The name of the new resource.

type LoRaWAN:

dict

param LoRaWAN:

The service profile information to use to create the service profile.

  • AddGwMetadata (boolean) --

    The AddGWMetaData value.

  • DrMin (integer) --

    The DrMin value.

  • DrMax (integer) --

    The DrMax value.

type Tags:

list

param Tags:

The tags to attach to the new service profile. Tags are metadata that you can use to manage a resource.

  • (dict) --

    A simple label consisting of a customer-defined key-value pair

    • Key (string) -- [REQUIRED]

      The tag's key value.

    • Value (string) -- [REQUIRED]

      The tag's value.

type ClientRequestToken:

string

param ClientRequestToken:

Each resource must have a unique client request token. If you try to create a new resource with the same token as a resource that already exists, an exception occurs. If you omit this value, AWS SDKs will automatically generate a unique client request.

This field is autopopulated if not provided.

rtype:

dict

returns:

Response Syntax

{
    'Arn': 'string',
    'Id': 'string'
}

Response Structure

  • (dict) --

    • Arn (string) --

      The Amazon Resource Name of the new resource.

    • Id (string) --

      The ID of the new service profile.

GetEventConfigurationByResourceTypes (updated) Link ¶
Changes (response)
{'MessageDeliveryStatus': {'Sidewalk': {'WirelessDeviceEventTopic': 'Enabled | '
                                                                    'Disabled'}}}

Get the event configuration based on resource types.

See also: AWS API Documentation

Request Syntax

client.get_event_configuration_by_resource_types()
rtype:

dict

returns:

Response Syntax

{
    'DeviceRegistrationState': {
        'Sidewalk': {
            'WirelessDeviceEventTopic': 'Enabled'|'Disabled'
        }
    },
    'Proximity': {
        'Sidewalk': {
            'WirelessDeviceEventTopic': 'Enabled'|'Disabled'
        }
    },
    'Join': {
        'LoRaWAN': {
            'WirelessDeviceEventTopic': 'Enabled'|'Disabled'
        }
    },
    'ConnectionStatus': {
        'LoRaWAN': {
            'WirelessGatewayEventTopic': 'Enabled'|'Disabled'
        }
    },
    'MessageDeliveryStatus': {
        'Sidewalk': {
            'WirelessDeviceEventTopic': 'Enabled'|'Disabled'
        }
    }
}

Response Structure

  • (dict) --

    • DeviceRegistrationState (dict) --

      Resource type event configuration for the device registration state event.

      • Sidewalk (dict) --

        Device registration resource type state event configuration object for enabling or disabling Sidewalk related event topics.

        • WirelessDeviceEventTopic (string) --

          Enum to denote whether the wireless device join event topic is enabled or disabled.

    • Proximity (dict) --

      Resource type event configuration for the proximity event.

      • Sidewalk (dict) --

        Proximity resource type event configuration object for enabling and disabling wireless device topic.

        • WirelessDeviceEventTopic (string) --

          Enum to denote whether the wireless device join event topic is enabled or disabled.

    • Join (dict) --

      Resource type event configuration for the join event.

      • LoRaWAN (dict) --

        Join resource type event configuration object for enabling or disabling LoRaWAN related event topics.

        • WirelessDeviceEventTopic (string) --

          Enum to denote whether the wireless device join event topic is enabled or disabled.

    • ConnectionStatus (dict) --

      Resource type event configuration for the connection status event.

      • LoRaWAN (dict) --

        Connection status resource type event configuration object for enabling or disabling LoRaWAN related event topics.

        • WirelessGatewayEventTopic (string) --

          Enum to denote whether the wireless gateway connection status event topic is enabled or disabled.

    • MessageDeliveryStatus (dict) --

      Resource type event configuration object for the message delivery status event.

      • Sidewalk (dict) --

        Sidewalk resource type event configuration object for enabling or disabling topic.

        • WirelessDeviceEventTopic (string) --

          Enum to denote whether the wireless device join event topic is enabled or disabled.

GetResourceEventConfiguration (updated) Link ¶
Changes (response)
{'MessageDeliveryStatus': {'Sidewalk': {'AmazonIdEventTopic': 'Enabled | '
                                                              'Disabled'},
                           'WirelessDeviceIdEventTopic': 'Enabled | Disabled'}}

Get the event configuration for a particular resource identifier.

See also: AWS API Documentation

Request Syntax

client.get_resource_event_configuration(
    Identifier='string',
    IdentifierType='PartnerAccountId'|'DevEui'|'GatewayEui'|'WirelessDeviceId'|'WirelessGatewayId',
    PartnerType='Sidewalk'
)
type Identifier:

string

param Identifier:

[REQUIRED]

Resource identifier to opt in for event messaging.

type IdentifierType:

string

param IdentifierType:

[REQUIRED]

Identifier type of the particular resource identifier for event configuration.

type PartnerType:

string

param PartnerType:

Partner type of the resource if the identifier type is PartnerAccountId.

rtype:

dict

returns:

Response Syntax

{
    'DeviceRegistrationState': {
        'Sidewalk': {
            'AmazonIdEventTopic': 'Enabled'|'Disabled'
        },
        'WirelessDeviceIdEventTopic': 'Enabled'|'Disabled'
    },
    'Proximity': {
        'Sidewalk': {
            'AmazonIdEventTopic': 'Enabled'|'Disabled'
        },
        'WirelessDeviceIdEventTopic': 'Enabled'|'Disabled'
    },
    'Join': {
        'LoRaWAN': {
            'DevEuiEventTopic': 'Enabled'|'Disabled'
        },
        'WirelessDeviceIdEventTopic': 'Enabled'|'Disabled'
    },
    'ConnectionStatus': {
        'LoRaWAN': {
            'GatewayEuiEventTopic': 'Enabled'|'Disabled'
        },
        'WirelessGatewayIdEventTopic': 'Enabled'|'Disabled'
    },
    'MessageDeliveryStatus': {
        'Sidewalk': {
            'AmazonIdEventTopic': 'Enabled'|'Disabled'
        },
        'WirelessDeviceIdEventTopic': 'Enabled'|'Disabled'
    }
}

Response Structure

  • (dict) --

    • DeviceRegistrationState (dict) --

      Event configuration for the device registration state event.

      • Sidewalk (dict) --

        Device registration state event configuration object for enabling or disabling Sidewalk related event topics.

        • AmazonIdEventTopic (string) --

          Enum to denote whether amazon id event topic is enabled or disabled.

      • WirelessDeviceIdEventTopic (string) --

        Enum to denote whether the wireless device id device registration state event topic is enabled or disabled.

    • Proximity (dict) --

      Event configuration for the proximity event.

      • Sidewalk (dict) --

        Proximity event configuration object for enabling or disabling Sidewalk related event topics.

        • AmazonIdEventTopic (string) --

          Enum to denote whether amazon id event topic is enabled or disabled.

      • WirelessDeviceIdEventTopic (string) --

        Enum to denote whether the wireless device id proximity event topic is enabled or disabled.

    • Join (dict) --

      Event configuration for the join event.

      • LoRaWAN (dict) --

        Join event configuration object for enabling or disabling LoRaWAN related event topics.

        • DevEuiEventTopic (string) --

          Enum to denote whether the Dev EUI join event topic is enabled or disabled.

      • WirelessDeviceIdEventTopic (string) --

        Enum to denote whether the wireless device id join event topic is enabled or disabled.

    • ConnectionStatus (dict) --

      Event configuration for the connection status event.

      • LoRaWAN (dict) --

        Connection status event configuration object for enabling or disabling LoRaWAN related event topics.

        • GatewayEuiEventTopic (string) --

          Enum to denote whether the gateway EUI connection status event topic is enabled or disabled.

      • WirelessGatewayIdEventTopic (string) --

        Enum to denote whether the wireless gateway ID connection status event topic is enabled or disabled.

    • MessageDeliveryStatus (dict) --

      Event configuration for the message delivery status event.

      • Sidewalk (dict) --

        SidewalkEventNotificationConfigurations object, which is the event configuration object for Sidewalk-related event topics.

        • AmazonIdEventTopic (string) --

          Enum to denote whether amazon id event topic is enabled or disabled.

      • WirelessDeviceIdEventTopic (string) --

        Enum to denote whether the wireless device id device registration state event topic is enabled or disabled.

ListEventConfigurations (updated) Link ¶
Changes (response)
{'EventConfigurationsList': {'Events': {'MessageDeliveryStatus': {'Sidewalk': {'AmazonIdEventTopic': 'Enabled '
                                                                                                     '| '
                                                                                                     'Disabled'},
                                                                  'WirelessDeviceIdEventTopic': 'Enabled '
                                                                                                '| '
                                                                                                'Disabled'}}}}

List event configurations where at least one event topic has been enabled.

See also: AWS API Documentation

Request Syntax

client.list_event_configurations(
    ResourceType='SidewalkAccount'|'WirelessDevice'|'WirelessGateway',
    MaxResults=123,
    NextToken='string'
)
type ResourceType:

string

param ResourceType:

[REQUIRED]

Resource type to filter event configurations.

type MaxResults:

integer

param MaxResults:

The maximum number of results to return in this operation.

type NextToken:

string

param NextToken:

To retrieve the next set of results, the nextToken value from a previous response; otherwise null to receive the first set of results.

rtype:

dict

returns:

Response Syntax

{
    'NextToken': 'string',
    'EventConfigurationsList': [
        {
            'Identifier': 'string',
            'IdentifierType': 'PartnerAccountId'|'DevEui'|'GatewayEui'|'WirelessDeviceId'|'WirelessGatewayId',
            'PartnerType': 'Sidewalk',
            'Events': {
                'DeviceRegistrationState': {
                    'Sidewalk': {
                        'AmazonIdEventTopic': 'Enabled'|'Disabled'
                    },
                    'WirelessDeviceIdEventTopic': 'Enabled'|'Disabled'
                },
                'Proximity': {
                    'Sidewalk': {
                        'AmazonIdEventTopic': 'Enabled'|'Disabled'
                    },
                    'WirelessDeviceIdEventTopic': 'Enabled'|'Disabled'
                },
                'Join': {
                    'LoRaWAN': {
                        'DevEuiEventTopic': 'Enabled'|'Disabled'
                    },
                    'WirelessDeviceIdEventTopic': 'Enabled'|'Disabled'
                },
                'ConnectionStatus': {
                    'LoRaWAN': {
                        'GatewayEuiEventTopic': 'Enabled'|'Disabled'
                    },
                    'WirelessGatewayIdEventTopic': 'Enabled'|'Disabled'
                },
                'MessageDeliveryStatus': {
                    'Sidewalk': {
                        'AmazonIdEventTopic': 'Enabled'|'Disabled'
                    },
                    'WirelessDeviceIdEventTopic': 'Enabled'|'Disabled'
                }
            }
        },
    ]
}

Response Structure

  • (dict) --

    • NextToken (string) --

      To retrieve the next set of results, the nextToken value from a previous response; otherwise null to receive the first set of results.

    • EventConfigurationsList (list) --

      Event configurations of all events for a single resource.

      • (dict) --

        Event configuration object for a single resource.

        • Identifier (string) --

          Resource identifier opted in for event messaging.

        • IdentifierType (string) --

          Identifier type of the particular resource identifier for event configuration.

        • PartnerType (string) --

          Partner type of the resource if the identifier type is PartnerAccountId.

        • Events (dict) --

          Object of all event configurations and the status of the event topics.

          • DeviceRegistrationState (dict) --

            Device registration state event configuration for an event configuration item.

            • Sidewalk (dict) --

              Device registration state event configuration object for enabling or disabling Sidewalk related event topics.

              • AmazonIdEventTopic (string) --

                Enum to denote whether amazon id event topic is enabled or disabled.

            • WirelessDeviceIdEventTopic (string) --

              Enum to denote whether the wireless device id device registration state event topic is enabled or disabled.

          • Proximity (dict) --

            Proximity event configuration for an event configuration item.

            • Sidewalk (dict) --

              Proximity event configuration object for enabling or disabling Sidewalk related event topics.

              • AmazonIdEventTopic (string) --

                Enum to denote whether amazon id event topic is enabled or disabled.

            • WirelessDeviceIdEventTopic (string) --

              Enum to denote whether the wireless device id proximity event topic is enabled or disabled.

          • Join (dict) --

            Join event configuration for an event configuration item.

            • LoRaWAN (dict) --

              Join event configuration object for enabling or disabling LoRaWAN related event topics.

              • DevEuiEventTopic (string) --

                Enum to denote whether the Dev EUI join event topic is enabled or disabled.

            • WirelessDeviceIdEventTopic (string) --

              Enum to denote whether the wireless device id join event topic is enabled or disabled.

          • ConnectionStatus (dict) --

            Connection status event configuration for an event configuration item.

            • LoRaWAN (dict) --

              Connection status event configuration object for enabling or disabling LoRaWAN related event topics.

              • GatewayEuiEventTopic (string) --

                Enum to denote whether the gateway EUI connection status event topic is enabled or disabled.

            • WirelessGatewayIdEventTopic (string) --

              Enum to denote whether the wireless gateway ID connection status event topic is enabled or disabled.

          • MessageDeliveryStatus (dict) --

            Message delivery status event configuration for an event configuration item.

            • Sidewalk (dict) --

              SidewalkEventNotificationConfigurations object, which is the event configuration object for Sidewalk-related event topics.

              • AmazonIdEventTopic (string) --

                Enum to denote whether amazon id event topic is enabled or disabled.

            • WirelessDeviceIdEventTopic (string) --

              Enum to denote whether the wireless device id device registration state event topic is enabled or disabled.

SendDataToWirelessDevice (updated) Link ¶
Changes (request)
{'WirelessMetadata': {'Sidewalk': {'AckModeRetryDurationSecs': 'integer'}}}

Sends a decrypted application data frame to a device.

See also: AWS API Documentation

Request Syntax

client.send_data_to_wireless_device(
    Id='string',
    TransmitMode=123,
    PayloadData='string',
    WirelessMetadata={
        'LoRaWAN': {
            'FPort': 123
        },
        'Sidewalk': {
            'Seq': 123,
            'MessageType': 'CUSTOM_COMMAND_ID_NOTIFY'|'CUSTOM_COMMAND_ID_GET'|'CUSTOM_COMMAND_ID_SET'|'CUSTOM_COMMAND_ID_RESP',
            'AckModeRetryDurationSecs': 123
        }
    }
)
type Id:

string

param Id:

[REQUIRED]

The ID of the wireless device to receive the data.

type TransmitMode:

integer

param TransmitMode:

[REQUIRED]

The transmit mode to use to send data to the wireless device. Can be: 0 for UM (unacknowledge mode) or 1 for AM (acknowledge mode).

type PayloadData:

string

param PayloadData:

[REQUIRED]

The binary to be sent to the end device, encoded in base64.

type WirelessMetadata:

dict

param WirelessMetadata:

Metadata about the message request.

  • LoRaWAN (dict) --

    LoRaWAN device info.

    • FPort (integer) --

      The Fport value.

  • Sidewalk (dict) --

    The Sidewalk account credentials.

    • Seq (integer) --

      The sequence number.

    • MessageType (string) --

      Sidewalk device message type. Default value is CUSTOM_COMMAND_ID_NOTIFY.

    • AckModeRetryDurationSecs (integer) --

      The duration of time in seconds for which you want to retry sending the ACK.

rtype:

dict

returns:

Response Syntax

{
    'MessageId': 'string'
}

Response Structure

  • (dict) --

    • MessageId (string) --

      The ID of the message sent to the wireless device.

UpdateEventConfigurationByResourceTypes (updated) Link ¶
Changes (request)
{'MessageDeliveryStatus': {'Sidewalk': {'WirelessDeviceEventTopic': 'Enabled | '
                                                                    'Disabled'}}}

Update the event configuration based on resource types.

See also: AWS API Documentation

Request Syntax

client.update_event_configuration_by_resource_types(
    DeviceRegistrationState={
        'Sidewalk': {
            'WirelessDeviceEventTopic': 'Enabled'|'Disabled'
        }
    },
    Proximity={
        'Sidewalk': {
            'WirelessDeviceEventTopic': 'Enabled'|'Disabled'
        }
    },
    Join={
        'LoRaWAN': {
            'WirelessDeviceEventTopic': 'Enabled'|'Disabled'
        }
    },
    ConnectionStatus={
        'LoRaWAN': {
            'WirelessGatewayEventTopic': 'Enabled'|'Disabled'
        }
    },
    MessageDeliveryStatus={
        'Sidewalk': {
            'WirelessDeviceEventTopic': 'Enabled'|'Disabled'
        }
    }
)
type DeviceRegistrationState:

dict

param DeviceRegistrationState:

Device registration state resource type event configuration object for enabling and disabling wireless gateway topic.

  • Sidewalk (dict) --

    Device registration resource type state event configuration object for enabling or disabling Sidewalk related event topics.

    • WirelessDeviceEventTopic (string) --

      Enum to denote whether the wireless device join event topic is enabled or disabled.

type Proximity:

dict

param Proximity:

Proximity resource type event configuration object for enabling and disabling wireless gateway topic.

  • Sidewalk (dict) --

    Proximity resource type event configuration object for enabling and disabling wireless device topic.

    • WirelessDeviceEventTopic (string) --

      Enum to denote whether the wireless device join event topic is enabled or disabled.

type Join:

dict

param Join:

Join resource type event configuration object for enabling and disabling wireless device topic.

  • LoRaWAN (dict) --

    Join resource type event configuration object for enabling or disabling LoRaWAN related event topics.

    • WirelessDeviceEventTopic (string) --

      Enum to denote whether the wireless device join event topic is enabled or disabled.

type ConnectionStatus:

dict

param ConnectionStatus:

Connection status resource type event configuration object for enabling and disabling wireless gateway topic.

  • LoRaWAN (dict) --

    Connection status resource type event configuration object for enabling or disabling LoRaWAN related event topics.

    • WirelessGatewayEventTopic (string) --

      Enum to denote whether the wireless gateway connection status event topic is enabled or disabled.

type MessageDeliveryStatus:

dict

param MessageDeliveryStatus:

Message delivery status resource type event configuration object for enabling and disabling wireless device topic.

  • Sidewalk (dict) --

    Sidewalk resource type event configuration object for enabling or disabling topic.

    • WirelessDeviceEventTopic (string) --

      Enum to denote whether the wireless device join event topic is enabled or disabled.

rtype:

dict

returns:

Response Syntax

{}

Response Structure

  • (dict) --

UpdateResourceEventConfiguration (updated) Link ¶
Changes (request)
{'MessageDeliveryStatus': {'Sidewalk': {'AmazonIdEventTopic': 'Enabled | '
                                                              'Disabled'},
                           'WirelessDeviceIdEventTopic': 'Enabled | Disabled'}}

Update the event configuration for a particular resource identifier.

See also: AWS API Documentation

Request Syntax

client.update_resource_event_configuration(
    Identifier='string',
    IdentifierType='PartnerAccountId'|'DevEui'|'GatewayEui'|'WirelessDeviceId'|'WirelessGatewayId',
    PartnerType='Sidewalk',
    DeviceRegistrationState={
        'Sidewalk': {
            'AmazonIdEventTopic': 'Enabled'|'Disabled'
        },
        'WirelessDeviceIdEventTopic': 'Enabled'|'Disabled'
    },
    Proximity={
        'Sidewalk': {
            'AmazonIdEventTopic': 'Enabled'|'Disabled'
        },
        'WirelessDeviceIdEventTopic': 'Enabled'|'Disabled'
    },
    Join={
        'LoRaWAN': {
            'DevEuiEventTopic': 'Enabled'|'Disabled'
        },
        'WirelessDeviceIdEventTopic': 'Enabled'|'Disabled'
    },
    ConnectionStatus={
        'LoRaWAN': {
            'GatewayEuiEventTopic': 'Enabled'|'Disabled'
        },
        'WirelessGatewayIdEventTopic': 'Enabled'|'Disabled'
    },
    MessageDeliveryStatus={
        'Sidewalk': {
            'AmazonIdEventTopic': 'Enabled'|'Disabled'
        },
        'WirelessDeviceIdEventTopic': 'Enabled'|'Disabled'
    }
)
type Identifier:

string

param Identifier:

[REQUIRED]

Resource identifier to opt in for event messaging.

type IdentifierType:

string

param IdentifierType:

[REQUIRED]

Identifier type of the particular resource identifier for event configuration.

type PartnerType:

string

param PartnerType:

Partner type of the resource if the identifier type is PartnerAccountId

type DeviceRegistrationState:

dict

param DeviceRegistrationState:

Event configuration for the device registration state event.

  • Sidewalk (dict) --

    Device registration state event configuration object for enabling or disabling Sidewalk related event topics.

    • AmazonIdEventTopic (string) --

      Enum to denote whether amazon id event topic is enabled or disabled.

  • WirelessDeviceIdEventTopic (string) --

    Enum to denote whether the wireless device id device registration state event topic is enabled or disabled.

type Proximity:

dict

param Proximity:

Event configuration for the proximity event.

  • Sidewalk (dict) --

    Proximity event configuration object for enabling or disabling Sidewalk related event topics.

    • AmazonIdEventTopic (string) --

      Enum to denote whether amazon id event topic is enabled or disabled.

  • WirelessDeviceIdEventTopic (string) --

    Enum to denote whether the wireless device id proximity event topic is enabled or disabled.

type Join:

dict

param Join:

Event configuration for the join event.

  • LoRaWAN (dict) --

    Join event configuration object for enabling or disabling LoRaWAN related event topics.

    • DevEuiEventTopic (string) --

      Enum to denote whether the Dev EUI join event topic is enabled or disabled.

  • WirelessDeviceIdEventTopic (string) --

    Enum to denote whether the wireless device id join event topic is enabled or disabled.

type ConnectionStatus:

dict

param ConnectionStatus:

Event configuration for the connection status event.

  • LoRaWAN (dict) --

    Connection status event configuration object for enabling or disabling LoRaWAN related event topics.

    • GatewayEuiEventTopic (string) --

      Enum to denote whether the gateway EUI connection status event topic is enabled or disabled.

  • WirelessGatewayIdEventTopic (string) --

    Enum to denote whether the wireless gateway ID connection status event topic is enabled or disabled.

type MessageDeliveryStatus:

dict

param MessageDeliveryStatus:

Event configuration for the message delivery status event.

  • Sidewalk (dict) --

    SidewalkEventNotificationConfigurations object, which is the event configuration object for Sidewalk-related event topics.

    • AmazonIdEventTopic (string) --

      Enum to denote whether amazon id event topic is enabled or disabled.

  • WirelessDeviceIdEventTopic (string) --

    Enum to denote whether the wireless device id device registration state event topic is enabled or disabled.

rtype:

dict

returns:

Response Syntax

{}

Response Structure

  • (dict) --