AWS IoT Wireless

2021/03/31 - AWS IoT Wireless - 4 updated api methods

Changes  Add Sidewalk support to APIs: GetWirelessDevice, ListWirelessDevices, GetWirelessDeviceStatistics. Add Gateway connection status in GetWirelessGatewayStatistics API.

GetWirelessDevice (updated) Link ¶
Changes (response)
{'Sidewalk': {'DeviceCertificates': [{'SigningAlg': 'Ed25519 | P256r1',
                                      'Value': 'string'}],
              'SidewalkId': 'string',
              'SidewalkManufacturingSn': 'string'}}

Gets information about a wireless device.

See also: AWS API Documentation

Request Syntax

client.get_wireless_device(
    Identifier='string',
    IdentifierType='WirelessDeviceId'|'DevEui'|'ThingName'
)
type Identifier:

string

param Identifier:

[REQUIRED]

The identifier of the wireless device to get.

type IdentifierType:

string

param IdentifierType:

[REQUIRED]

The type of identifier used in identifier.

rtype:

dict

returns:

Response Syntax

{
    'Type': 'Sidewalk'|'LoRaWAN',
    'Name': 'string',
    'Description': 'string',
    'DestinationName': 'string',
    'Id': 'string',
    'Arn': 'string',
    'ThingName': 'string',
    'ThingArn': 'string',
    'LoRaWAN': {
        'DevEui': 'string',
        'DeviceProfileId': 'string',
        'ServiceProfileId': 'string',
        'OtaaV1_1': {
            'AppKey': 'string',
            'NwkKey': 'string',
            'JoinEui': 'string'
        },
        'OtaaV1_0_x': {
            'AppKey': 'string',
            'AppEui': 'string'
        },
        'AbpV1_1': {
            'DevAddr': 'string',
            'SessionKeys': {
                'FNwkSIntKey': 'string',
                'SNwkSIntKey': 'string',
                'NwkSEncKey': 'string',
                'AppSKey': 'string'
            }
        },
        'AbpV1_0_x': {
            'DevAddr': 'string',
            'SessionKeys': {
                'NwkSKey': 'string',
                'AppSKey': 'string'
            }
        }
    },
    'Sidewalk': {
        'SidewalkId': 'string',
        'SidewalkManufacturingSn': 'string',
        'DeviceCertificates': [
            {
                'SigningAlg': 'Ed25519'|'P256r1',
                'Value': 'string'
            },
        ]
    }
}

Response Structure

  • (dict) --

    • Type (string) --

      The wireless device type.

    • Name (string) --

      The name of the resource.

    • Description (string) --

      The description of the resource.

    • DestinationName (string) --

      The name of the destination to which the device is assigned.

    • Id (string) --

      The ID of the wireless device.

    • Arn (string) --

      The Amazon Resource Name of the resource.

    • ThingName (string) --

      The name of the thing associated with the wireless device. The value is empty if a thing isn't associated with the device.

    • ThingArn (string) --

      The ARN of the thing associated with the wireless device.

    • LoRaWAN (dict) --

      Information about the wireless device.

      • DevEui (string) --

        The DevEUI value.

      • DeviceProfileId (string) --

        The ID of the device profile for the new wireless device.

      • ServiceProfileId (string) --

        The ID of the service profile.

      • OtaaV1_1 (dict) --

        OTAA device object for v1.1 for create APIs

        • AppKey (string) --

          The AppKey value.

        • NwkKey (string) --

          The NwkKey value.

        • JoinEui (string) --

          The JoinEUI value.

      • OtaaV1_0_x (dict) --

        OTAA device object for create APIs for v1.0.x

        • AppKey (string) --

          The AppKey value.

        • AppEui (string) --

          The AppEUI value.

      • AbpV1_1 (dict) --

        ABP device object for create APIs for v1.1

        • DevAddr (string) --

          The DevAddr value.

        • SessionKeys (dict) --

          Session keys for ABP v1.1

          • FNwkSIntKey (string) --

            The FNwkSIntKey value.

          • SNwkSIntKey (string) --

            The SNwkSIntKey value.

          • NwkSEncKey (string) --

            The NwkSEncKey value.

          • AppSKey (string) --

            The AppSKey value.

      • AbpV1_0_x (dict) --

        LoRaWAN object for create APIs

        • DevAddr (string) --

          The DevAddr value.

        • SessionKeys (dict) --

          Session keys for ABP v1.0.x

          • NwkSKey (string) --

            The NwkSKey value.

          • AppSKey (string) --

            The AppSKey value.

    • Sidewalk (dict) --

      Sidewalk device object.

      • SidewalkId (string) --

        The sidewalk device identification.

      • SidewalkManufacturingSn (string) --

        The Sidewalk manufacturing series number.

      • DeviceCertificates (list) --

        The sidewalk device certificates for Ed25519 and P256r1.

        • (dict) --

          List of sidewalk certificates.

          • SigningAlg (string) --

            The certificate chain algorithm provided by sidewalk.

          • Value (string) --

            The value of the chosen sidewalk certificate.

GetWirelessDeviceStatistics (updated) Link ¶
Changes (response)
{'Sidewalk': {'BatteryLevel': 'normal | low | critical',
              'DeviceState': 'Provisioned | RegisteredNotSeen | '
                             'RegisteredReachable | RegisteredUnreachable',
              'Event': 'discovered | lost | ack | nack | passthrough',
              'Rssi': 'integer'}}

Gets operating information about a wireless device.

See also: AWS API Documentation

Request Syntax

client.get_wireless_device_statistics(
    WirelessDeviceId='string'
)
type WirelessDeviceId:

string

param WirelessDeviceId:

[REQUIRED]

The ID of the wireless device for which to get the data.

rtype:

dict

returns:

Response Syntax

{
    'WirelessDeviceId': 'string',
    'LastUplinkReceivedAt': 'string',
    'LoRaWAN': {
        'DevEui': 'string',
        'FPort': 123,
        'DataRate': 123,
        'Frequency': 123,
        'Timestamp': 'string',
        'Gateways': [
            {
                'GatewayEui': 'string',
                'Snr': 123.0,
                'Rssi': 123.0
            },
        ]
    },
    'Sidewalk': {
        'Rssi': 123,
        'BatteryLevel': 'normal'|'low'|'critical',
        'Event': 'discovered'|'lost'|'ack'|'nack'|'passthrough',
        'DeviceState': 'Provisioned'|'RegisteredNotSeen'|'RegisteredReachable'|'RegisteredUnreachable'
    }
}

Response Structure

  • (dict) --

    • WirelessDeviceId (string) --

      The ID of the wireless device.

    • LastUplinkReceivedAt (string) --

      The date and time when the most recent uplink was received.

    • LoRaWAN (dict) --

      Information about the wireless device's operations.

      • DevEui (string) --

        The DevEUI value.

      • FPort (integer) --

        The FPort value.

      • DataRate (integer) --

        The DataRate value.

      • Frequency (integer) --

        The device's channel frequency in Hz.

      • Timestamp (string) --

        The date and time of the metadata.

      • Gateways (list) --

        Information about the gateways accessed by the device.

        • (dict) --

          LoRaWAN gateway metatdata.

          • GatewayEui (string) --

            The gateway's EUI value.

          • Snr (float) --

            The SNR value.

          • Rssi (float) --

            The RSSI value.

    • Sidewalk (dict) --

      MetaData for Sidewalk device.

      • Rssi (integer) --

        The RSSI value.

      • BatteryLevel (string) --

        Sidewalk device battery level.

      • Event (string) --

        Sidewalk device status notification.

      • DeviceState (string) --

        Device state defines the device status of sidewalk device.

GetWirelessGatewayStatistics (updated) Link ¶
Changes (response)
{'ConnectionStatus': 'Connected | Disconnected'}

Gets operating information about a wireless gateway.

See also: AWS API Documentation

Request Syntax

client.get_wireless_gateway_statistics(
    WirelessGatewayId='string'
)
type WirelessGatewayId:

string

param WirelessGatewayId:

[REQUIRED]

The ID of the wireless gateway for which to get the data.

rtype:

dict

returns:

Response Syntax

{
    'WirelessGatewayId': 'string',
    'LastUplinkReceivedAt': 'string',
    'ConnectionStatus': 'Connected'|'Disconnected'
}

Response Structure

  • (dict) --

    • WirelessGatewayId (string) --

      The ID of the wireless gateway.

    • LastUplinkReceivedAt (string) --

      The date and time when the most recent uplink was received.

    • ConnectionStatus (string) --

      The connection status of the wireless gateway.

ListWirelessDevices (updated) Link ¶
Changes (response)
{'WirelessDeviceList': {'Sidewalk': {'DeviceCertificates': [{'SigningAlg': 'Ed25519 '
                                                                           '| '
                                                                           'P256r1',
                                                             'Value': 'string'}],
                                     'SidewalkId': 'string',
                                     'SidewalkManufacturingSn': 'string'}}}

Lists the wireless devices registered to your AWS account.

See also: AWS API Documentation

Request Syntax

client.list_wireless_devices(
    MaxResults=123,
    NextToken='string',
    DestinationName='string',
    DeviceProfileId='string',
    ServiceProfileId='string',
    WirelessDeviceType='Sidewalk'|'LoRaWAN'
)
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.

type DestinationName:

string

param DestinationName:

A filter to list only the wireless devices that use this destination.

type DeviceProfileId:

string

param DeviceProfileId:

A filter to list only the wireless devices that use this device profile.

type ServiceProfileId:

string

param ServiceProfileId:

A filter to list only the wireless devices that use this service profile.

type WirelessDeviceType:

string

param WirelessDeviceType:

A filter to list only the wireless devices that use this wireless device type.

rtype:

dict

returns:

Response Syntax

{
    'NextToken': 'string',
    'WirelessDeviceList': [
        {
            'Arn': 'string',
            'Id': 'string',
            'Type': 'Sidewalk'|'LoRaWAN',
            'Name': 'string',
            'DestinationName': 'string',
            'LastUplinkReceivedAt': 'string',
            'LoRaWAN': {
                'DevEui': 'string'
            },
            'Sidewalk': {
                'AmazonId': 'string',
                'SidewalkId': 'string',
                'SidewalkManufacturingSn': 'string',
                'DeviceCertificates': [
                    {
                        'SigningAlg': 'Ed25519'|'P256r1',
                        'Value': 'string'
                    },
                ]
            }
        },
    ]
}

Response Structure

  • (dict) --

    • NextToken (string) --

      The token to use to get the next set of results, or null if there are no additional results.

    • WirelessDeviceList (list) --

      The ID of the wireless device.

      • (dict) --

        Information about a wireless device's operation.

        • Arn (string) --

          The Amazon Resource Name of the resource.

        • Id (string) --

          The ID of the wireless device reporting the data.

        • Type (string) --

          The wireless device type.

        • Name (string) --

          The name of the resource.

        • DestinationName (string) --

          The name of the destination to which the device is assigned.

        • LastUplinkReceivedAt (string) --

          The date and time when the most recent uplink was received.

        • LoRaWAN (dict) --

          LoRaWAN device info.

          • DevEui (string) --

            The DevEUI value.

        • Sidewalk (dict) --

          The Sidewalk account credentials.

          • AmazonId (string) --

            The Sidewalk Amazon ID.

          • SidewalkId (string) --

            The sidewalk device identification.

          • SidewalkManufacturingSn (string) --

            The Sidewalk manufacturing series number.

          • DeviceCertificates (list) --

            The sidewalk device certificates for Ed25519 and P256r1.

            • (dict) --

              List of sidewalk certificates.

              • SigningAlg (string) --

                The certificate chain algorithm provided by sidewalk.

              • Value (string) --

                The value of the chosen sidewalk certificate.