getDeviceCapabilities method

Future<bool> getDeviceCapabilities()

Returns the capabilities of the device, meaning which connectivity modules and features are available

Implementation

Future<bool> getDeviceCapabilities() async {
  if (!isInitialized) {
    LogbotLogger().simple("getDeviceCapabilities()");
    try {
      DeviceConfiguration? response =
          await LogbotSetup.deviceBle.getDeviceConfig();
      capabilities = response!;
      isInitialized = true;
      return true;
    } catch (e) {
      LogbotLogger().error("getDeviceCapabilities()", e.toString());

      /// Assumes worst case scenario and try to continue with
      /// minimal capabilities.
      capabilities = DeviceConfiguration(
        accessPoint: false,
        bluetooth: true,
        geolocator: false,
        lan: true,
        modem: false,
        wan: true,
        wifi: false,
      );
      return false;
    }
  }
  return true;
}