2022/08/25 - AWS IoT Wireless - 5 updated api methods
Changes This release includes a new feature for the customers to enable the LoRa gateways to send out beacons for Class B devices and an option to select one or more gateways for Class C devices when sending the LoRaWAN downlink messages.
{'LoRaWAN': {'Beaconing': {'DataRate': 'integer', 'Frequencies': ['integer']}}}
Provisions a wireless gateway.
See also: AWS API Documentation
Request Syntax
client.create_wireless_gateway( Name='string', Description='string', LoRaWAN={ 'GatewayEui': 'string', 'RfRegion': 'string', 'JoinEuiFilters': [ [ 'string', ], ], 'NetIdFilters': [ 'string', ], 'SubBands': [ 123, ], 'Beaconing': { 'DataRate': 123, 'Frequencies': [ 123, ] } }, Tags=[ { 'Key': 'string', 'Value': 'string' }, ], ClientRequestToken='string' )
string
The name of the new resource.
string
The description of the new resource.
dict
[REQUIRED]
The gateway configuration information to use to create the wireless gateway.
GatewayEui (string) --
The gateway's EUI value.
RfRegion (string) --
The frequency band (RFRegion) value.
JoinEuiFilters (list) --
A list of JoinEuiRange used by LoRa gateways to filter LoRa frames.
(list) --
A pair of join EUI describing a range [BegEui, EndEui], both ends are inclusive.
(string) --
NetIdFilters (list) --
A list of NetId values that are used by LoRa gateways to filter the uplink frames.
(string) --
LoRaWAN network ID.
SubBands (list) --
A list of integer indicating which sub bands are supported by LoRa gateway.
(integer) --
A subset of supported frequency channels in a certain RFRegion.
Beaconing (dict) --
Beaconing object information, which consists of the data rate and frequency parameters.
DataRate (integer) --
The data rate for gateways that are sending the beacons.
Frequencies (list) --
The frequency list for the gateways to send the beacons.
(integer) --
list
The tags to attach to the new wireless gateway. 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.
string
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.
dict
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 wireless gateway.
{'LoRaWAN': {'Beaconing': {'DataRate': 'integer', 'Frequencies': ['integer']}}}
Gets information about a wireless gateway.
See also: AWS API Documentation
Request Syntax
client.get_wireless_gateway( Identifier='string', IdentifierType='GatewayEui'|'WirelessGatewayId'|'ThingName' )
string
[REQUIRED]
The identifier of the wireless gateway to get.
string
[REQUIRED]
The type of identifier used in identifier.
dict
Response Syntax
{ 'Name': 'string', 'Id': 'string', 'Description': 'string', 'LoRaWAN': { 'GatewayEui': 'string', 'RfRegion': 'string', 'JoinEuiFilters': [ [ 'string', ], ], 'NetIdFilters': [ 'string', ], 'SubBands': [ 123, ], 'Beaconing': { 'DataRate': 123, 'Frequencies': [ 123, ] } }, 'Arn': 'string', 'ThingName': 'string', 'ThingArn': 'string' }
Response Structure
(dict) --
Name (string) --
The name of the resource.
Id (string) --
The ID of the wireless gateway.
Description (string) --
The description of the resource.
LoRaWAN (dict) --
Information about the wireless gateway.
GatewayEui (string) --
The gateway's EUI value.
RfRegion (string) --
The frequency band (RFRegion) value.
JoinEuiFilters (list) --
A list of JoinEuiRange used by LoRa gateways to filter LoRa frames.
(list) --
A pair of join EUI describing a range [BegEui, EndEui], both ends are inclusive.
(string) --
NetIdFilters (list) --
A list of NetId values that are used by LoRa gateways to filter the uplink frames.
(string) --
LoRaWAN network ID.
SubBands (list) --
A list of integer indicating which sub bands are supported by LoRa gateway.
(integer) --
A subset of supported frequency channels in a certain RFRegion.
Beaconing (dict) --
Beaconing object information, which consists of the data rate and frequency parameters.
DataRate (integer) --
The data rate for gateways that are sending the beacons.
Frequencies (list) --
The frequency list for the gateways to send the beacons.
(integer) --
Arn (string) --
The Amazon Resource Name of the resource.
ThingName (string) --
The name of the thing associated with the wireless gateway. The value is empty if a thing isn't associated with the gateway.
ThingArn (string) --
The ARN of the thing associated with the wireless gateway.
{'DownlinkQueueMessagesList': {'LoRaWAN': {'ParticipatingGateways': {'DownlinkMode': 'SEQUENTIAL ' '| ' 'CONCURRENT ' '| ' 'USING_UPLINK_GATEWAY', 'GatewayList': [{'DownlinkFrequency': 'integer', 'GatewayId': 'string'}], 'TransmissionInterval': 'integer'}}}}
List queued messages in the downlink queue.
See also: AWS API Documentation
Request Syntax
client.list_queued_messages( Id='string', NextToken='string', MaxResults=123, WirelessDeviceType='Sidewalk'|'LoRaWAN' )
string
[REQUIRED]
The ID of a given wireless device which the downlink message packets are being sent.
string
To retrieve the next set of results, the nextToken value from a previous response; otherwise null to receive the first set of results.
integer
The maximum number of results to return in this operation.
string
The wireless device type, whic can be either Sidewalk or LoRaWAN.
dict
Response Syntax
{ 'NextToken': 'string', 'DownlinkQueueMessagesList': [ { 'MessageId': 'string', 'TransmitMode': 123, 'ReceivedAt': 'string', 'LoRaWAN': { 'FPort': 123, 'ParticipatingGateways': { 'DownlinkMode': 'SEQUENTIAL'|'CONCURRENT'|'USING_UPLINK_GATEWAY', 'GatewayList': [ { 'GatewayId': 'string', 'DownlinkFrequency': 123 }, ], 'TransmissionInterval': 123 } } }, ] }
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.
DownlinkQueueMessagesList (list) --
The messages in the downlink queue.
(dict) --
The message in the downlink queue.
MessageId (string) --
The message ID assigned by IoT Wireless to each downlink message, which helps identify the message.
TransmitMode (integer) --
The transmit mode to use for sending data to the wireless device. This can be 0 for UM (unacknowledge mode) or 1 for AM (acknowledge mode).
ReceivedAt (string) --
The time at which Iot Wireless received the downlink message.
LoRaWAN (dict) --
LoRaWAN router info.
FPort (integer) --
The Fport value.
ParticipatingGateways (dict) --
Choose the gateways that you want to use for the downlink data traffic when the wireless device is running in class B or class C mode.
DownlinkMode (string) --
Indicates whether to send the downlink message in sequential mode or concurrent mode, or to use only the chosen gateways from the previous uplink message transmission.
GatewayList (list) --
The list of gateways that you want to use for sending the downlink data traffic.
(dict) --
Gateway list item object that specifies the frequency and list of gateways for which the downlink message should be sent.
GatewayId (string) --
The ID of the wireless gateways that you want to add to the list of gateways when sending downlink messages.
DownlinkFrequency (integer) --
The frequency to use for the gateways when sending a downlink message to the wireless device.
TransmissionInterval (integer) --
The duration of time for which AWS IoT Core for LoRaWAN will wait before transmitting the payload to the next gateway.
{'WirelessGatewayList': {'LoRaWAN': {'Beaconing': {'DataRate': 'integer', 'Frequencies': ['integer']}}}}
Lists the wireless gateways registered to your AWS account.
See also: AWS API Documentation
Request Syntax
client.list_wireless_gateways( NextToken='string', MaxResults=123 )
string
To retrieve the next set of results, the nextToken value from a previous response; otherwise null to receive the first set of results.
integer
The maximum number of results to return in this operation.
dict
Response Syntax
{ 'NextToken': 'string', 'WirelessGatewayList': [ { 'Arn': 'string', 'Id': 'string', 'Name': 'string', 'Description': 'string', 'LoRaWAN': { 'GatewayEui': 'string', 'RfRegion': 'string', 'JoinEuiFilters': [ [ 'string', ], ], 'NetIdFilters': [ 'string', ], 'SubBands': [ 123, ], 'Beaconing': { 'DataRate': 123, 'Frequencies': [ 123, ] } }, 'LastUplinkReceivedAt': '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.
WirelessGatewayList (list) --
The ID of the wireless gateway.
(dict) --
Information about a wireless gateway's operation.
Arn (string) --
The Amazon Resource Name of the resource.
Id (string) --
The ID of the wireless gateway reporting the data.
Name (string) --
The name of the resource.
Description (string) --
The description of the resource.
LoRaWAN (dict) --
LoRaWAN gateway info.
GatewayEui (string) --
The gateway's EUI value.
RfRegion (string) --
The frequency band (RFRegion) value.
JoinEuiFilters (list) --
A list of JoinEuiRange used by LoRa gateways to filter LoRa frames.
(list) --
A pair of join EUI describing a range [BegEui, EndEui], both ends are inclusive.
(string) --
NetIdFilters (list) --
A list of NetId values that are used by LoRa gateways to filter the uplink frames.
(string) --
LoRaWAN network ID.
SubBands (list) --
A list of integer indicating which sub bands are supported by LoRa gateway.
(integer) --
A subset of supported frequency channels in a certain RFRegion.
Beaconing (dict) --
Beaconing object information, which consists of the data rate and frequency parameters.
DataRate (integer) --
The data rate for gateways that are sending the beacons.
Frequencies (list) --
The frequency list for the gateways to send the beacons.
(integer) --
LastUplinkReceivedAt (string) --
The date and time when the most recent uplink was received.
{'WirelessMetadata': {'LoRaWAN': {'ParticipatingGateways': {'DownlinkMode': 'SEQUENTIAL ' '| ' 'CONCURRENT ' '| ' 'USING_UPLINK_GATEWAY', 'GatewayList': [{'DownlinkFrequency': 'integer', 'GatewayId': 'string'}], 'TransmissionInterval': '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, 'ParticipatingGateways': { 'DownlinkMode': 'SEQUENTIAL'|'CONCURRENT'|'USING_UPLINK_GATEWAY', 'GatewayList': [ { 'GatewayId': 'string', 'DownlinkFrequency': 123 }, ], 'TransmissionInterval': 123 } }, 'Sidewalk': { 'Seq': 123, 'MessageType': 'CUSTOM_COMMAND_ID_NOTIFY'|'CUSTOM_COMMAND_ID_GET'|'CUSTOM_COMMAND_ID_SET'|'CUSTOM_COMMAND_ID_RESP', 'AckModeRetryDurationSecs': 123 } } )
string
[REQUIRED]
The ID of the wireless device to receive the data.
integer
[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).
string
[REQUIRED]
The binary to be sent to the end device, encoded in base64.
dict
Metadata about the message request.
LoRaWAN (dict) --
LoRaWAN device info.
FPort (integer) --
The Fport value.
ParticipatingGateways (dict) --
Choose the gateways that you want to use for the downlink data traffic when the wireless device is running in class B or class C mode.
DownlinkMode (string) -- [REQUIRED]
Indicates whether to send the downlink message in sequential mode or concurrent mode, or to use only the chosen gateways from the previous uplink message transmission.
GatewayList (list) -- [REQUIRED]
The list of gateways that you want to use for sending the downlink data traffic.
(dict) --
Gateway list item object that specifies the frequency and list of gateways for which the downlink message should be sent.
GatewayId (string) -- [REQUIRED]
The ID of the wireless gateways that you want to add to the list of gateways when sending downlink messages.
DownlinkFrequency (integer) -- [REQUIRED]
The frequency to use for the gateways when sending a downlink message to the wireless device.
TransmissionInterval (integer) -- [REQUIRED]
The duration of time for which AWS IoT Core for LoRaWAN will wait before transmitting the payload to the next gateway.
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.
dict
Response Syntax
{ 'MessageId': 'string' }
Response Structure
(dict) --
MessageId (string) --
The ID of the message sent to the wireless device.