If your application is using the core implementation type, you can use the TapCoreContactManager class to manage your user's contacts.
TapTalk Contact Method
Description
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.
Unblock a blocked user.
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 User Contacts
Get all of the user's contact data from TapTalk.io.
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) {
}
});
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?) {
}
})
Fetch All User Contacts from Server
Calling fetchAllUserContactsFromServer will fetch the user's latest contact data from TapTalk.io server and syncs it to the device's local storage.
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) {
}
});
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 Contact Detail Info with TapTalk User ID
Get a detailed contact info with selected TapTalk.io user ID.
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) {
}
});
TapCoreContactManager.getInstance().getUserDataWithUserID(USER_ID, object : TapCoreGetContactListener() {
override fun onSuccess(user: TAPUserModel?) {
// Returns detailed user info
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
Parameters
USER_ID: (String) Taptalk.io User ID of the selected user
Get Contact Detail Info with Client User ID
Get a detailed contact info with selected Client user ID (xcUserID).
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) {
}
});
TapCoreContactManager.getInstance().getUserDataWithXCUserID(XC_USER_ID, object : TapCoreGetContactListener() {
override fun onSuccess(user: TAPUserModel?) {
// Returns detailed user info
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
Parameters
XC_USER_ID: (String) Client User ID of the selected user
Add User to Contact with User ID
Add a user with selected TapTalk.io user ID to the active user's contacts.
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) {
}
});
TapCoreContactManager.getInstance().addToTapTalkContactsWithUserID(USER_ID, object : TapCoreGetContactListener() {
override fun onSuccess(user: TAPUserModel?) {
// Added to contacts successfully
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
Parameters
USER_ID: (String) Taptalk.io User ID of the contact to be added
Add User to Contact with Phone Number
Add a user with selected phone number to the active user's contacts.
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) {
}
});
TapCoreContactManager.getInstance().addToTapTalkContactsWithPhoneNumber(PHONE_NUMBER, object : TapCoreGetContactListener() {
override fun onSuccess(user: TAPUserModel?) {
// Added to contacts successfully
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
Parameters
PHONE_NUMBER: (String) phone number of the contact to be added
Remove User from Contact
Remove a user with selected TapTalk.io user ID from the active user's contacts.
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) {
}
});
TapCoreContactManager.getInstance().removeFromTapTalkContacts(USER_ID, object : TapCommonListener() {
override fun onSuccess(successMessage: String?) {
// Removed from contacts successfully
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
Parameters
USER_ID: (String) Taptalk.io User ID of the contact to remove
Parameters
USER: (TAPUserModel) the user data model to be saved
Search Local Contact
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.
TapCoreContactManager.getInstance().searchLocalContactByName(KEYWORD, new TapCoreGetMultipleContactListener() {
@Override
public void onSuccess(List<TAPUserModel> users) {
// Returns filtered contacts
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
ParametersKEYWORD: (String) search keyword to filter full name
Report User
You may call this method to submit a report for a selected user. Submitted reports can then be viewed through the dashboard.
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) {
}
});
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?) {
}
})
ParametersUSER_ID: (String) ID of the user to report
CATEGORY: (String) Category of the violation. max length is 100 characters
IS_OTHER_CATEGORY: (Boolean) If the category is other than the predefined categories
REASON: (String) reason why the user is reported
Report Message
You may call this method to submit a report for a selected message. Submitted reports can then be viewed through the dashboard.
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) {
}
});
ParametersMESSAGE_ID: (String) unique server ID of the message to report
ROOM_ID: (String) ID of the room where the message belongs to
CATEGORY: (String) Category of the violation. max length is 100 characters
IS_OTHER_CATEGORY: (Boolean) If the category is other than the predefined categories
REASON: (String) reason why the message is reported
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.
TapCoreContactManager.getInstance().blockUser(USER_ID, new TapCoreGetContactListener() {
@Override
public void onSuccess(TAPUserModel user) {
// Successfully blocked user
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
TapCoreContactManager.getInstance().blockUser(USER_ID, object : TapCoreGetContactListener() {
override fun onSuccess(user: TAPUserModel?) {
// Successfully blocked user
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
ParametersUSER_ID: (String) ID of the user to block
Unblock User
You may unblock a blocked user to let them send and receive message from the active user.
TapCoreContactManager.getInstance().unblockUser(USER_ID, new TapCoreGetContactListener() {
@Override
public void onSuccess(TAPUserModel user) {
// Successfully unblocked user
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
TapCoreContactManager.getInstance().unblockUser(USER_ID, object : TapCoreGetContactListener() {
override fun onSuccess(user: TAPUserModel?) {
// Successfully unblocked user
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
ParametersUSER_ID: (String) ID of the user to unblock
Get Blocked User List
You may call this method to retrieve a list of blocked users.