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.