If your application is using the core implementation type, you can use these methods to manage your user's contacts.
Note: Please add #import <TapTalk/TapCoreContactManager.h> before using these methods.
Get Contact List
Create a new group Get all of the user's contact data from TapTalk.io.
//import TapTalk Contact Manager
#import <TapTalk/TapCoreContactManager.h>
[[TAPCoreContactManager sharedManager] getAllUserContactsWithSuccess:^(NSArray<TAPUserModel *> * _Nonnull userArray) {
//Success get contact list data
} failure:^(NSError * _Nonnull error) {
//Failed to get contact list data
}];
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.
//import TapTalk Contact Manager
#import <TapTalk/TapCoreContactManager.h>
[[TAPCoreContactManager sharedManager] fetchAllUserContactsFromServerWithSuccess:^(NSArray<TAPUserModel *> * _Nonnull userArray) {
//Success get contact list data
} failure:^(NSError * _Nonnull error) {
//Failed to get contact list data
}];
Get Contact Detail Info with TapTalk User ID
Get a detailed contact info with selected TapTalk.io user ID.
//import TapTalk Contact Manager
#import <TapTalk/TapCoreContactManager.h>
[[TAPCoreContactManager sharedManager] getUserDataWithUserID:USER_ID success:^(TAPUserModel * _Nonnull user) {
//Success get contact detail data
} failure:^(NSError * _Nonnull error) {
//Failed to get contact detail data
}];
ParametersUSER_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).
//import TapTalk Contact Manager
#import <TapTalk/TapCoreContactManager.h>
[[TAPCoreContactManager sharedManager] getUserDataWithXCUserID:XC_USER_ID success:^(TAPUserModel * _Nonnull user) {
//Success get contact detail data
} failure:^(NSError * _Nonnull error) {
//Failed to get contact detail data
}];
ParametersXC_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.
ParametersUSER: (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.
//import TapTalk Contact Manager
#import <TapTalk/TapCoreContactManager.h>
[[TAPCoreContactManager sharedManager] searchLocalContactsByName:KEYWORD success:^(NSArray<TAPUserModel *> * _Nonnull userArray) {
// Returns filtered contacts
} failure:^(NSError * _Nonnull error) {
// Failed to get contact list data
}];
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.
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.
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.