If your application is using the core implementation type, you can use the TapCoreContactManager class to manage your user's contacts.
Get all of the user's contact data from local storage
Fetch the user's latest contact data from TapTalk.io server
Get a detailed contact info with selected TapTalk.io user ID
Get a detailed contact info with selected Client user ID (xcUserID)
Add a user with selected TapTalk.io user ID to the active user's contacts
Add a user with selected phone number to the active user's contacts
Remove a user with selected TapTalk.io user ID from the active user's contacts
Save or update existing user data to local cache
Search the active user's contacts from the device's local storage with a keyword
Submit a report for a selected user.
Submit a report for a selected message.
Block a user from sending or receiving messages.
Retrieve a list of blocked users.
Retrieve a list of IDs from blocked users.
Retrieve the list of groups in common with another user.
Get all of the user's contact data from TapTalk.io.
Java Kotlin
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager;
import io.taptalk.TapTalk.Listener.TapCoreGetMultipleContactListener;
import io.taptalk.TapTalk.Model.TAPUserModel;
...
TapCoreContactManager.getInstance().getAllUserContacts(new TapCoreGetMultipleContactListener() {
@Override
public void onSuccess(List<TAPUserModel> users) {
// Returns a list of the active user's TapTalk.io contacts
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager
import io.taptalk.TapTalk.Listener.TapCoreGetMultipleContactListener
import io.taptalk.TapTalk.Model.TAPUserModel
...
TapCoreContactManager.getInstance().getAllUserContacts(object : TapCoreGetMultipleContactListener() {
override fun onSuccess(users: List<TAPUserModel>?) {
// Returns a list of the active user's TapTalk.io contacts
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
Calling fetchAllUserContactsFromServer
will fetch the user's latest contact data from TapTalk.io server and syncs it to the device's local storage.
Java Kotlin
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager;
import io.taptalk.TapTalk.Listener.TapCoreGetMultipleContactListener;
import io.taptalk.TapTalk.Model.TAPUserModel;
...
TapCoreContactManager.getInstance().fetchAllUserContactsFromServer(new TapCoreGetMultipleContactListener() {
@Override
public void onSuccess(List<TAPUserModel> users) {
// Returns a list of the active user's TapTalk.io contacts
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager
import io.taptalk.TapTalk.Listener.TapCoreGetMultipleContactListener
import io.taptalk.TapTalk.Model.TAPUserModel
...
TapCoreContactManager.getInstance().fetchAllUserContactsFromServer(object : TapCoreGetMultipleContactListener() {
override fun onSuccess(users: List<TAPUserModel>?) {
// Returns a list of the active user's TapTalk.io contacts
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
Get a detailed contact info with selected TapTalk.io user ID.
Java Kotlin
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager;
import io.taptalk.TapTalk.Listener.TapCoreGetContactListener;
import io.taptalk.TapTalk.Model.TAPUserModel;
...
TapCoreContactManager.getInstance().getUserDataWithUserID(USER_ID, new TapCoreGetContactListener() {
@Override
public void onSuccess(TAPUserModel user) {
// Returns detailed user info
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager
import io.taptalk.TapTalk.Listener.TapCoreGetContactListener
import io.taptalk.TapTalk.Model.TAPUserModel
...
TapCoreContactManager.getInstance().getUserDataWithUserID(USER_ID, object : TapCoreGetContactListener() {
override fun onSuccess(user: TAPUserModel?) {
// Returns detailed user info
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
Get a detailed contact info with selected Client user ID (XCUserID).
Java Kotlin
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager;
import io.taptalk.TapTalk.Listener.TapCoreGetContactListener;
import io.taptalk.TapTalk.Model.TAPUserModel;
...
TapCoreContactManager.getInstance().getUserDataWithXCUserID(XC_USER_ID, new TapCoreGetContactListener() {
@Override
public void onSuccess(TAPUserModel user) {
// Returns detailed user info
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager
import io.taptalk.TapTalk.Listener.TapCoreGetContactListener
import io.taptalk.TapTalk.Model.TAPUserModel
...
TapCoreContactManager.getInstance().getUserDataWithXCUserID(XC_USER_ID, object : TapCoreGetContactListener() {
override fun onSuccess(user: TAPUserModel?) {
// Returns detailed user info
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
Add a user with selected TapTalk.io user ID to the active user's contacts.
Java Kotlin
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager;
import io.taptalk.TapTalk.Listener.TapCoreGetContactListener;
import io.taptalk.TapTalk.Model.TAPUserModel;
...
TapCoreContactManager.getInstance().addToTapTalkContactsWithUserID(USER_ID, new TapCoreGetContactListener() {
@Override
public void onSuccess(TAPUserModel user) {
// Added to contacts successfully
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager
import io.taptalk.TapTalk.Listener.TapCoreGetContactListener
import io.taptalk.TapTalk.Model.TAPUserModel
...
TapCoreContactManager.getInstance().addToTapTalkContactsWithUserID(USER_ID, object : TapCoreGetContactListener() {
override fun onSuccess(user: TAPUserModel?) {
// Added to contacts successfully
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
Add a user with selected phone number to the active user's contacts.
Java Kotlin
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager;
import io.taptalk.TapTalk.Listener.TapCoreGetContactListener;
import io.taptalk.TapTalk.Model.TAPUserModel;
...
TapCoreContactManager.getInstance().addToTapTalkContactsWithPhoneNumber(PHONE_NUMBER, new TapCoreGetContactListener() {
@Override
public void onSuccess(TAPUserModel user) {
// Added to contacts successfully
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager
import io.taptalk.TapTalk.Listener.TapCoreGetContactListener
import io.taptalk.TapTalk.Model.TAPUserModel
...
TapCoreContactManager.getInstance().addToTapTalkContactsWithPhoneNumber(PHONE_NUMBER, object : TapCoreGetContactListener() {
override fun onSuccess(user: TAPUserModel?) {
// Added to contacts successfully
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
Remove a user with selected TapTalk.io user ID from the active user's contacts.
Java Kotlin
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager;
import io.taptalk.TapTalk.Listener.TapCommonListener;
...
TapCoreContactManager.getInstance().removeFromTapTalkContacts(USER_ID, new TapCommonListener() {
@Override
public void onSuccess(String successMessage) {
// Removed from contacts successfully
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager
import io.taptalk.TapTalk.Listener.TapCommonListener
...
TapCoreContactManager.getInstance().removeFromTapTalkContacts(USER_ID, object : TapCommonListener() {
override fun onSuccess(successMessage: String?) {
// Removed from contacts successfully
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
Save User Data
Save or update existing user data to local cache.
Java Kotlin
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager;
import io.taptalk.TapTalk.Model.TAPUserModel;
...
TapCoreContactManager.getInstance().saveUserData(USER);
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager
import io.taptalk.TapTalk.Model.TAPUserModel
...
TapCoreContactManager.getInstance().saveUserData(USER)
Call this method to search the active user's contacts from the device's local storage with a keyword. Provided keyword will be used to filter the contacts' full name in the search result.
Java Kotlin
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager;
import io.taptalk.TapTalk.Listener.TapCoreGetMultipleContactListener;
import io.taptalk.TapTalk.Model.TAPUserModel;
...
TapCoreContactManager.getInstance().searchLocalContactByName(KEYWORD, new TapCoreGetMultipleContactListener() {
@Override
public void onSuccess(List<TAPUserModel> users) {
// Returns filtered contacts
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager
import io.taptalk.TapTalk.Listener.TapCoreGetMultipleContactListener
import io.taptalk.TapTalk.Model.TAPUserModel
...
TapCoreContactManager.getInstance().searchLocalContactByName(KEYWORD, object : TapCoreGetMultipleContactListener() {
override fun onSuccess(users: List<TAPUserModel>?) {
// Returns filtered contacts
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
Report User
You may call this method to submit a report for a selected user. Submitted reports can then be viewed through the dashboard.
Java Kotlin
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager;
import io.taptalk.TapTalk.Listener.TapCommonListener;
...
TapCoreContactManager.getInstance().reportUser(
USER_ID,
CATEGORY,
IS_OTHER_CATEGORY,
REASON,
new TapCommonListener() {
@Override
public void onSuccess(String successMessage) {
// Successfully reported user
}
@Override
public void onError(String errorCode, String errorMessage) {
}
}
);
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager
import io.taptalk.TapTalk.Listener.TapCommonListener
...
TapCoreContactManager.getInstance().reportUser(
USER_ID,
IS_OTHER_CATEGORY,
REASON,
object : TapCommonListener() {
override fun onSuccess(successMessage: String?) {
// Successfully reported user
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
}
)
Report Message
You may call this method to submit a report for a selected message. Submitted reports can then be viewed through the dashboard.
Java Kotlin
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager;
import io.taptalk.TapTalk.Listener.TapCommonListener;
...
TapCoreContactManager.getInstance().reportMessage(
MESSAGE_ID,
ROOM_ID,
CATEGORY,
IS_OTHER_CATEGORY,
REASON,
new TapCommonListener() {
@Override
public void onSuccess(String successMessage) {
// Successfully reported message
}
@Override
public void onError(String errorCode, String errorMessage) {
}
}
);
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager
import io.taptalk.TapTalk.Listener.TapCommonListener
...
TapCoreContactManager.getInstance().reportMessage(
MESSAGE_ID,
ROOM_ID,
IS_OTHER_CATEGORY,
REASON,
object : TapCommonListener() {
override fun onSuccess(successMessage: String?) {
// Successfully reported message
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
}
)
Block User
You may block a user to stop conversation flow with the blocked user. Blocked users will not be able to send and receive message, or retrieve profile info from the active user.
Java Kotlin
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager;
import io.taptalk.TapTalk.Listener.TapCoreGetContactListener;
import io.taptalk.TapTalk.Model.TAPUserModel;
...
TapCoreContactManager.getInstance().blockUser(USER_ID, new TapCoreGetContactListener() {
@Override
public void onSuccess(TAPUserModel user) {
// Successfully blocked user
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager
import io.taptalk.TapTalk.Listener.TapCoreGetContactListener
import io.taptalk.TapTalk.Model.TAPUserModel
...
TapCoreContactManager.getInstance().blockUser(USER_ID, object : TapCoreGetContactListener() {
override fun onSuccess(user: TAPUserModel?) {
// Successfully blocked user
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
Unblock User
You may unblock a blocked user to let them send and receive message from the active user.
Java Kotlin
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager;
import io.taptalk.TapTalk.Listener.TapCoreGetContactListener;
import io.taptalk.TapTalk.Model.TAPUserModel;
...
TapCoreContactManager.getInstance().unblockUser(USER_ID, new TapCoreGetContactListener() {
@Override
public void onSuccess(TAPUserModel user) {
// Successfully unblocked user
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager
import io.taptalk.TapTalk.Listener.TapCoreGetContactListener
import io.taptalk.TapTalk.Model.TAPUserModel
...
TapCoreContactManager.getInstance().unblockUser(USER_ID, object : TapCoreGetContactListener() {
override fun onSuccess(user: TAPUserModel?) {
// Successfully unblocked user
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
Get Blocked User List
You may call this method to retrieve a list of blocked users.
Java Kotlin
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager;
import io.taptalk.TapTalk.Listener.TapCoreGetMultipleContactListener;
import io.taptalk.TapTalk.Model.TAPUserModel;
...
TapCoreContactManager.getInstance().getBlockedUserList(new TapCoreGetMultipleContactListener() {
@Override
public void onSuccess(List<TAPUserModel> blockedUsers) {
// Successfully retrieved blocked users
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager
import io.taptalk.TapTalk.Listener.TapCoreGetMultipleContactListener
import io.taptalk.TapTalk.Model.TAPUserModel
...
TapCoreContactManager.getInstance().getBlockedUserList(object : TapCoreGetMultipleContactListener() {
override fun onSuccess(blockedUsers: List<TAPUserModel>) {
// Successfully retrieved blocked users
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
Get Blocked User IDs
You may call this method to retrieve a list of IDs from blocked users.
Java Kotlin
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager;
import io.taptalk.TapTalk.Listener.TapCoreGetStringArrayListener;
...
TapCoreContactManager.getInstance().getBlockedUserIDs(new TapCoreGetStringArrayListener() {
@Override
public void onSuccess(ArrayList<String> blockedUserIDs) {
// Successfully retrieved blocked user IDs
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager
import io.taptalk.TapTalk.Listener.TapCoreGetStringArrayListener
...
TapCoreContactManager.getInstance().getBlockedUserIDs(object : TapCoreGetStringArrayListener() {
override fun onSuccess(blockedUserIDs: ArrayList<String>) {
// Successfully retrieved blocked user IDs
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
Get Groups in Common
You may use getGroupsInCommon
method to retrieve the list of groups in common with another user.
Java Kotlin
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager;
import io.taptalk.TapTalk.Listener.TapCoreGetRoomArrayListener;
import io.taptalk.TapTalk.Model.TAPRoomModel;
...
TapCoreContactManager.getInstance().getGroupsInCommon(USER_ID, new TapCoreGetRoomArrayListener() {
@Override
public void onSuccess(ArrayList<TAPRoomModel> rooms) {
// Successfully retrieved rooms
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
Copy import io.taptalk.TapTalk.Manager.TapCoreContactManager
import io.taptalk.TapTalk.Listener.TapCoreGetRoomArrayListener
import io.taptalk.TapTalk.Model.TAPRoomModel
...
TapCoreContactManager.getInstance().getGroupsInCommon(USER_ID, object : TapCoreGetRoomArrayListener() {
override fun onSuccess(rooms: ArrayList<TAPRoomModel>) {
// Successfully retrieved rooms
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})