sendDataToWirelessDevice method

Future<SendDataToWirelessDeviceResponse> sendDataToWirelessDevice({
  1. required String id,
  2. required String payloadData,
  3. required int transmitMode,
  4. WirelessMetadata? wirelessMetadata,
})

Sends a decrypted application data frame to a device.

May throw InternalServerException. May throw ResourceNotFoundException. May throw ThrottlingException. May throw ValidationException.

Parameter id : The ID of the wireless device to receive the data.

Parameter transmitMode : 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).

Parameter wirelessMetadata : Metadata about the message request.

Implementation

Future<SendDataToWirelessDeviceResponse> sendDataToWirelessDevice({
  required String id,
  required String payloadData,
  required int transmitMode,
  WirelessMetadata? wirelessMetadata,
}) async {
  _s.validateNumRange(
    'transmitMode',
    transmitMode,
    0,
    1,
    isRequired: true,
  );
  final $payload = <String, dynamic>{
    'PayloadData': payloadData,
    'TransmitMode': transmitMode,
    if (wirelessMetadata != null) 'WirelessMetadata': wirelessMetadata,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri: '/wireless-devices/${Uri.encodeComponent(id)}/data',
    exceptionFnMap: _exceptionFns,
  );
  return SendDataToWirelessDeviceResponse.fromJson(response);
}