1. User Data (after login)
Copy
SDK.getUserDetails(
uId = uID.toString(), consentToken = consentToken, onlyPii = sdkManager.piiOnly
) { result ->
// ALWAYS switch to Main thread for UI
Log.e("getUserDetails : ", " Response: $result")
context.lifecycleScope.launch(Dispatchers.Main) {
when (result) {
is ApiFunctionsResult.Loading -> {
Log.e("getUserDetails", "Loading...") // show loading }
is ApiFunctionsResult.Success -> { // data
context.showLoader = false // hide loading
if (result.data != null) {
val userDetails = Gson().fromJson(result.data.toString(), Customer::class.java)
user(userDetails)
} else {
val message = result.errors.safeErrorMessage()
showMessage(context, message)
}
}
is ApiFunctionsResult.Failure -> { context.showLoader = false // hide
Log.e("getUserDetails : ", "Failed : Response: ${result.errors?.toString()}") // show message to user } } }}
2. Registrant Data (after event check-in)
Copy
SDK. getRegistrantDetails(
uId = uID.toString(), consentToken = consentToken, onlyPii = sdkManager.piiOnly
) { result ->
// ALWAYS switch to Main thread for UI
Log.e(" getRegistrantDetails: ", " Response: $result")
context.lifecycleScope.launch(Dispatchers.Main) {
when (result) {
is ApiFunctionsResult.Loading -> {
Log.e(" getRegistrantDetails ", "Loading...") // show loading }
is ApiFunctionsResult.Success -> { // data
context.showLoader = false // hide loading
if (result.data != null) {
val userDetails = Gson().fromJson(result.data.toString(), Customer::class.java)
user(userDetails)
} else {
val message = result.errors.safeErrorMessage()
showMessage(context, message)
}
}
is ApiFunctionsResult.Failure -> { context.showLoader = false // hide
Log.e(" getRegistrantDetails: ", "Failed : Response: ${result.errors?.toString()}") // show message to user } } }}
3. GetKycCertificate
Copy
SDK. getKycCertificate (
uId = uID.toString(), consentToken = consentToken,evenetId=””) { result ->
// ALWAYS switch to Main thread for UI
Log.e(" getRegistrantDetails: ", " Response: $result")
context.lifecycleScope.launch(Dispatchers.Main) {
when (result) {
is ApiFunctionsResult.Loading -> {
Log.e(" getKycCertificate ", "Loading...") // show loading }
is ApiFunctionsResult.Success -> { // data
context.showLoader = false // hide loading
if (result.data != null) {
val userDetails = Gson().fromJson(result.data.toString(), Customer::class.java)
user(userDetails)
} else {
val message = result.errors.safeErrorMessage()
showMessage(context, message)
}
}
is ApiFunctionsResult.Failure -> { context.showLoader = false // hide
Log.e(" getKycCertificate: ", "Failed : Response: ${result.errors?.toString()}") // show message to user } } }}
4. Customer Status
Copy
QuePass.toggleCustomerStatus(
eventId = null,
uid = uid,
status = customerStatus,/Inactive/Active
) { result ->
Log.e("toggleCustomerStatus Response : ", Gson().toJson(result))
Log.e("toggleCustomerStatus : ", "Failed : Response: $result")
// ALWAYS switch to Main thread for UI
context.lifecycleScope.launch(Dispatchers.Main) {
when (result) {
is ApiFunctionsResult.Loading -> {
Log.e("toggleCustomerStatus", "Loading...")
context.showLoader = true
}
is ApiFunctionsResult.Success -> {
context.showLoader = false
Log.e("toggleCustomerStatus", "Success : Response : ${Gson().toJson(result)}")
// result.message?.let { showMessage(context, it) }
}
is ApiFunctionsResult.Failure -> {
Log.e("toggleCustomerStatus : ", "Failed : Response: ${result.errors?.toString()}")
context.showLoader = false
val message = result.errors.safeErrorMessage()
showMessage(context, message)
}
}
}
}
5. Customer Life Cycle
Copy
QuePass.setCustomerLifeCycle(
eventId = null,
uid = uid,
status = customerStatus, dateFrom =fromDate, dateTo = toDate // customerStatus = Inactive/Active
) { result ->
// ALWAYS switch to Main thread for UI
Log.e("setCustomerLifeCycle : ", " Response: $result")
context.lifecycleScope.launch(Dispatchers.Main) {
when (result) {
is ApiFunctionsResult.Loading -> {
Log.e("setCustomerLifeCycle", "Loading...")
context.showLoader = true
}
is ApiFunctionsResult.Success -> {
context.showLoader = false
Log.e("setCustomerLifeCycle", "Success : Response : ${Gson().toJson(result)}")
// result.message?.let { showMessage(context, it) }
}
is ApiFunctionsResult.Failure -> {
context.showLoader = false
val message = result.errors.safeErrorMessage()
showMessage(context, message)
}
}
}
}
Ensure a valid UID and consentToken are provided before calling these methods.