logout method

Future<bool> logout({
  1. required String appId,
  2. required String deviceId,
  3. required String uuid,
})

Implementation

Future<bool> logout({
  required String appId,
  required String deviceId,
  required String uuid,
}) async {
  if (_sdkInfo == null) {
    throw LiveTalkError(message: {"message": "empty_info"});
  }
  var headers = {
    'Content-Type': 'application/json',
    'Authorization': "Bearer ${_sdkInfo!["access_token"] as String}",
  };

  final response = await http.post(
    Uri.parse('$_baseUrl/guest/device_info/remove'),
    headers: headers,
    body: json.encode({
      "app_id": appId,
      "device_id": deviceId,
      "uuid": uuid,
    }),
  );

  if ((response.statusCode ~/ 100) > 2) {
    throw LiveTalkError(message: {"message": response.reasonPhrase});
  }

  if (response.statusCode == 200) {
    final data = response.body;
    final jsonData = json.decode(data);
    if (jsonData["status_code"] == -9999) {
      throw LiveTalkError(message: jsonData);
    }
    return true;
  }
  return false;
}