registerDevice static method

Future<void> registerDevice(
  1. Map<String, dynamic> data
)

Implementation

static Future<void> registerDevice(Map<String, dynamic> data) async {
  final String url = '$authUrl/registerdevice';
  try {
    final response = await _dio.post(
      url,
      data: data,
      options: Options(
        headers: {'Content-Type': 'application/json'},
      ),
    );

    if (response.statusCode == 200) {
      final responseData = response.data;
      final FlutterSecureStorage secureStorage = FlutterSecureStorage();
      final deviceId = responseData['DeviceId'];
      final audDomain = responseData['AudDomain'];
      if (audDomain != Configuration.AudDomain) {
        print('Please update AudDomain from ${Configuration.AudDomain} to $audDomain');
      }
      await secureStorage.write(key: "DeviceId", value: deviceId.toString());
      final configurations = responseData['Configurations'];
      if (configurations != null && configurations.isNotEmpty) {
        String jsonString = jsonEncode(configurations);
        await secureStorage.write(key: "Configurations", value: jsonString);
      }
    } else {
      print('Failed to register device: ${response.statusCode} ${response.data}');
    }
  } catch (e) {
    print('Error registering device: $e');
  }
}