2. SDK Features
Login management
Login
Used to login Tio chat by FQA Token
tokenFQA
String
Token FQA
When successful login, the SDK returns a model user information which leads to the
onSuccess()
callback. Handling login successfully here.When login fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.loginChatByToken(tokenFQA, new IFTechTioCallback<UserCurrResp>() {
@Override
public void onSuccess(UserCurrResp info) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
isLoggedIn
Used to determine whether to log in
Returns the user's logged in status,
true
is logged in,false
is not logged in
TioSdkManager.INSTANCE.isLoggedIn();
Logout
Used to logout Tio chat
When successful logout, the SDK returns a event which leads to the
onSuccess()
callback. Handling logout successfully here.When logout fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.logout(new IFTechTioCallback<Unit>() {
@Override
public void onSuccess(Unit info) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
Conversation management
fetchServerSessions
Used to chat list synchronization from local or server
fetchLocal
Boolean
Mode fetch data: true
when fetch from local, false
when fetch from server
When successful fetch data, the SDK returns a list chat which leads to the
onSuccess()
callback. Handling fetch data successfully here.When fetch data fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.fetchServerSessions(fetchLocal, new IFTechTioCallback<ChatListResp>(){
@Override
public void onFinish() {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onSuccess(ChatListResp info) {
}
});
deleteSession
Used to delete session chat
sessionId
String
Id session chat
isDeleteChatRecord
Boolean
Mode delete session: true
when delete session and delete chat history, false
when delete session and without deleting chat history
When successful delete, the SDK returns a event which leads to the
onSuccess()
callback. Handling delete successfully here.When delete fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.deleteSession(sessionId, isDeleteChatRecord, new IFTechTioCallback<Unit>() {
@Override
public void onSuccess(Unit event) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
complaintSession
Used to complaint about session chat
sessionId
String
Id session chat
When successful complaint, the SDK returns a event which leads to the
onSuccess()
callback. Handling complaint successfully here.When complaint fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.complaintSession(sessionId, new IFTechTioCallback<Unit>() {
@Override
public void onSuccess(Unit event) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
clearAllMessagesInSession
Used to delete chat history
sessionId
String
Id session chat
When successful delete, the SDK returns a model status which leads to the
onSuccess()
callback. Handling delete successfully here.When delete fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.clearAllMessagesInSession(sessionId, new IFTechTioCallback<String>() {
@Override
public void onSuccess(String status) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
topSession
Used to pin/unpin session
sessionId
String
Id session chat
enable
Boolean
Mode pin session: true
when pin session, false
when unpin session
When successful pin/unpin, the SDK returns a model status which leads to the
onSuccess()
callback. Handling pin/unpin successfully here.When pin/unpin fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.topSession(sessionId, enable, new IFTechTioCallback<String>() {
@Override
public void onSuccess(String status) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
fetchSessionInfoWithSessionId
Used to send request get chat information
sessionId
String
Id session chat
TioSdkManager.INSTANCE.fetchSessionInfoWithSessionId(sessionId);
Handling history chat on chat callback
onGetChatInfo
.
enterConversationWithSessionId
Used to send operation enter room
TioSdkManager.INSTANCE.enterConversationWithSessionId();
leaveConversationWithSessionId
Used to send operation leave room
TioSdkManager.INSTANCE.leaveConversationWithSessionId();
registerConversationCallback
Used to register callback chat list synchronization
TioSdkManager.INSTANCE.registerConversationCallback(new IFTechTioSocketCallBack.TioConversationCallback() {
@Override
public void didSetAllData(@Nullable List<? extends ChatListResp.List> data) {
}
@Override
public void didAddSession(int position, @NonNull ChatListResp.List data) {
}
@Override
public void didDeleteSession(int position) {
}
@Override
public void didChangeTotalUnreadCount(int totalUnread) {
}
@Override
public void didUpdateItemWhenReceiveChange(int position, @NonNull ChatListResp.List data) {
}
});
Room management
createRoomName
Used to create public room
roomName
String
Room name
intro
String
Intro room
uidList
String
list uid members in room
When successful create room, the SDK returns a model room response which leads to the
onSuccess()
callback. Handling created room data successfully here.When create room fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.createRoomName(roomName, intro, listUid, new IFTechTioCallback<CreateRoomResp>() {
@Override
public void onSuccess(CreateRoomResp info) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
activeRoom
Used to active room after create room
roomId
String
Id room created
When successful active room, the SDK returns a model active response which leads to the
onSuccess()
callback. Handling active room data successfully here.When active room fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.activeRoom(roomId, new IFTechTioCallback<ActChatResp>() {
@Override
public void onSuccess(ActChatResp info) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
exitFromRoom
Used to leave room
roomId
String
Id room
When successful leave room, the SDK returns status which leads to the
onSuccess()
callback. Handling leave room successfully here.When leave room fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.exitFromRoom(roomId, new IFTechTioCallback<String>() {
@Override
public void onSuccess(String status) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
deleteRoom
Used to disband room
roomId
String
Id room
When successful delete room, the SDK returns a model delete response which leads to the
onSuccess()
callback. Handling delete room successfully here.When delete room fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.deleteRoom(roomId, new IFTechTioCallback<DelGroupResp>() {
@Override
public void onSuccess(DelGroupResp info) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
transferRoom
Used to transfer room
roomId
String
Id room created
toUser
String
Uid new owner
When successful transfer room, the SDK returns a model change owner response which leads to the
onSuccess()
callback. Handling transfer room data successfully here.When transfer room fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.transferRoom(roomId, toUser, new IFTechTioCallback<ChangeOwnerResp>() {
@Override
public void onSuccess(ChangeOwnerResp info) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
answerMessageNotificationForUid
Used to setting do not disturb room
roomId
String
Id room created
enable
Boolean
Mode DND room: true
when enable DND, false
when disable DND
When successful setting DND, the SDK returns status which leads to the
onSuccess()
callback. Handling setting DND successfully here.When setting DND fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.answerMessageNotificationForUid(roomId, enable, new IFTechTioCallback<Object>() {
@Override
public void onSuccess(Object status) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
fetchRoomInfoWithRoomId
Used to get room information
roomId
String
Id room
When successful get information, the SDK returns a model information room response which leads to the
onSuccess()
callback. Handling get information successfully here.When get information fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.fetchRoomInfoWithRoomId(roomId, new IFTechTioCallback<RoomInfoResp>() {
@Override
public void onSuccess(RoomInfoResp info) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
fetchMembersInRoom
Used to get room's list member
roomId
String
Id room
searchKey
String
Key search member in room
pageNumber
Int
Page number list members
When successful get list members, the SDK returns a list members in room response which leads to the
onSuccess()
callback. Handling get list members successfully here.When get list members fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.fetchMembersInRoom(roomId, searchKey, pageNumber, new IFTechTioCallback<RoomUserListResp>() {
@Override
public void onSuccess(RoomUserListResp listResp) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
addUser
Used to invite new user into room
roomId
String
Id room
uidList
List
list uid members want invite to room
When successful add member, the SDK returns status which leads to the
onSuccess()
callback. Handling add member successfully here.When add member fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.addUser(roomId, listUid, new IFTechTioCallback<String>() {
@Override
public void onSuccess(String status) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
removeUser
Used to remove user from room
roomId
String
Id room
uidList
List
list uid members want remove from room
When successful remove member, the SDK returns status which leads to the
onSuccess()
callback. Handling remove member successfully here.When remove member fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.removeUser(roomId, listUid, new IFTechTioCallback<String>() {
@Override
public void onSuccess(String status) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
updateUserNick
Used to change user's nick name in room
nickName
String
New user's nick name
roomId
String
Id room
When successful update nick name, the SDK returns status which leads to the
onSuccess()
callback. Handling update nick name successfully here.When update nick name fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.updateUserNick(newNickName, roomId, new IFTechTioCallback<String>() {
@Override
public void onSuccess(String status) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
updateRoomName
Used to update room name
newName
String
New room's name
roomId
String
Id room
When successful update room name, the SDK returns status which leads to the
onSuccess()
callback. Handling update room name successfully here.When update room name fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.updateRoomName(newRoomName, roomId, new IFTechTioCallback<String>() {
@Override
public void onSuccess(String status) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
updateRoomNotice
Used to update room notice
newNotice
String
New room's notice
roomId
String
Id room
When successful update room notice, the SDK returns event which leads to the
onSuccess()
callback. Handling update room notice successfully here.When update room notice fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.updateRoomNotice(newRoomNotice, roomId, new IFTechTioCallback<Unit>() {
@Override
public void onSuccess(Unit event) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
updateRoomIntro
Used to update room intro
newIntro
String
New room's intro
roomId
String
Id room
When successful update room intro, the SDK returns event which leads to the
onSuccess()
callback. Handling update room intro successfully here.When update room intro fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.updateRoomIntro(newRoomIntro, roomId, new IFTechTioCallback<Unit>() {
@Override
public void onSuccess(Unit event) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
fetchAllRooms
Used to get list public room
When successful get list public room, the SDK returns a list public room which leads to the
onSuccess()
callback. Handling get list public room successfully here.When get list public room fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.fetchAllRooms(new IFTechTioCallback<List<RoomListResp>>() {
@Override
public void onSuccess(List<RoomListResp> info) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
forbiddenAllRoom
Used to forbidden all user in room
roomId
String
Id room
operation
OperationCode
Operation forbidden: OperationCode.ON
when mute, OperationCode.OFF
when cancel mute
When successful forbidden user, the SDK returns a model forbidden response which leads to the
onSuccess()
callback. Handling forbidden user successfully here.When forbidden user fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.forbiddenAllRoom(roomId, operationCode, new IFTechTioCallback<ForbiddenResp>() {
@Override
public void onSuccess(ForbiddenResp info) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
forbiddenUser
Used to forbidden user in room
modeForbidden
ForbiddenMode
Mode forbidden: ForbiddenMode.USER_DURATION
when user duration ban, ForbiddenMode.USER_LONGTIME
when The user is banned for a long time
duration
Long
User duration is required for muting operation. Unit: second
uid
String
Uid member forbidden in room
roomId
String
Id room
operation
OperationCode
Operation forbidden: OperationCode.ON
when mute, OperationCode.OFF
when cancel mute
When successful forbidden user, the SDK returns a model forbidden response which leads to the
onSuccess()
callback. Handling forbidden user successfully here.When forbidden user fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.forbiddenUser(forbiddenMode, 5L, uidForbidden, roomId, operationCode, new IFTechTioCallback<ForbiddenResp>() {
@Override
public void onSuccess(ForbiddenResp info) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
fetchForbiddenUserListInRoomId
Used to get list user was forbidden in room
roomId
String
Id room
searchKey
String
Key search member was forbidden in room
pageNumber
Int
Page number list member was forbidden
When successful get list was forbidden, the SDK returns a model include list member was forbidden in room response which leads to the
onSuccess()
callback. Handling get list member was forbidden successfully here.When get list member was forbidden fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.fetchForbiddenUserListInRoomId(roomId, pageNumber, searchKey, new IFTechTioCallback<ForbiddenUserListResp>() {
@Override
public void onSuccess(ForbiddenUserListResp info) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
checkStatusForUser
Used to check status user in room
uid
String
Uid member in room
roomId
String
Id room
When successful get status, the SDK returns a model status user in room response which leads to the
onSuccess()
callback. Handling get status successfully here.When get status fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.checkStatusForUser(uidMember, roomId, new IFTechTioCallback<ForbiddenFlagResp>() {
@Override
public void onSuccess(ForbiddenFlagResp info) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
updateJoiningPermissionForRoom
Used to modify apply new member in room
roomId
String
Id room
enable
Boolean
Mode joining permission: true
when enable permission, false
when disable permission
When successful update, the SDK returns status which leads to the
onSuccess()
callback. Handling update successfully here.When update fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.updateJoiningPermissionForRoom(roomId, enable, new IFTechTioCallback<String>() {
@Override
public void onSuccess(String status) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
updateReviewingPermissionForRoom
Used to modify review before invite new member
roomId
String
Id room
enable
Boolean
Mode joining permission: true
when enable permission, false
when disable permission
When successful update, the SDK returns event which leads to the
onSuccess()
callback. Handling update successfully here.When update fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.updateReviewingPermissionForRoom(roomId, enable, new IFTechTioCallback<Object>() {
@Override
public void onFinish() {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onSuccess(Object event) {
}
});
updateAddingFriendPermissionInRoom
Used to modify invite friend into room
roomId
String
Id room
enable
Boolean
Mode joining permission: true
when enable permission, false
when disable permission
When successful update, the SDK returns event which leads to the
onSuccess()
callback. Handling update successfully here.When update fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.updateAddingFriendPermissionInRoom(roomId, enable, new IFTechTioCallback<Object>() {
@Override
public void onFinish() {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onSuccess(Object event) {
}
});
searchFriends
Used to get list of friends that can be invite to the room
roomId
String
Id room
searchKey
String
Key search friend
When successful get list friend, the SDK returns a list of friends response which leads to the
onSuccess()
callback. Handling get list friend successfully here.When get list friend fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.searchFriends(roomId, searchKey, new IFTechTioCallback<ApplyGroupFdListResp>() {
@Override
public void onSuccess(ApplyGroupFdListResp info) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
fetchMessagesHistory
Used to get history chat in room
startMid
String
The starting message id. If startMid = null
sdk will take from the latest message
Handling history chat on chat callback
onFetchMessagesHistory
.
TioSdkManager.INSTANCE.fetchMessagesHistory(startMid);
registerTioLinkStatus
Used to register receive status connect
TioSdkManager.INSTANCE.registerTioLinkStatus(new IFTechTioSocketCallBack.StateEvent() {
@Override
public void tioLinkConnecting() {
}
@Override
public void tioLinkConnected() {
}
@Override
public void tioLinkDisconnected() {
}
@Override
public void tioLinkAlreadyConnect() {
}
@Override
public void tioLinkTokenNull() {
}
@Override
public void tioUnLogin() {
}
@Override
public void tioImServerNull() {
}
});
registerRoomCallback
Used to register receive event from room
TioSdkManager.INSTANCE.registerRoomCallback(new IFTechTioSocketCallBack.TioRoomCallback() {
@Override
public void didDeleteRoom() {
}
@Override
public void didTransferredRoom() {
}
@Override
public void didExitFromRoom() {
}
@Override
public void didUpdateRoomInfo() {
}
@Override
public void didKickedOut() {
}
@Override
public void didRejoin() {
}
});
Chat management
sendMessage
Used to send message into room
content
String
Content message
When successful send message the SDk returns
true
, opposite returnsfalse
TioSdkManager.INSTANCE.sendMessage(content);
revokeMessage
Used to revoke message in room
sessionId
String
Session id
mid
String
Id message in room
When successful revoke message, the SDK returns a model status which leads to the
onSuccess()
callback. Handling revoke message successfully here.When revoke message fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.revokeMessage(sessionId, mid, new IFTechTioCallback<String>() {
@Override
public void onSuccess(String status) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
deleteMessage
Used to delete message in room
sessionId
String
Session id
mid
String
Id message in room
When successful delete message, the SDK returns a model status which leads to the
onSuccess()
callback. Handling delete message successfully here.When delete message fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.deleteMessage(sessionId, mid, new IFTechTioCallback<String>() {
@Override
public void onSuccess(String status) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
reportMessage
Used to report message in room
sessionId
String
Session id
mid
String
Id message in room
When successful report message, the SDK returns a model status which leads to the
onSuccess()
callback. Handling report message successfully here.When report message fails, it will be processed at callback
onFail()
.
TioSdkManager.INSTANCE.reportMessage(sessionId, mid, new IFTechTioCallback<String>() {
@Override
public void onSuccess(String status) {
}
@Override
public void onFail(@NonNull String error) {
}
@Override
public void onFinish() {
}
});
registerChatCallback
Used to register callback chat in room
TioSdkManager.INSTANCE.registerChatCallback(new IFTechTioSocketCallBack.TioChatCallBack() {
@Override
public void onGetChatInfo(@NonNull WxChatItemInfoResp info) {
}
@Override
public void onFetchMessagesHistory(@NonNull TioRoomMsgList info) {
}
@Override
public void onRecvMessages(@NonNull TioMsg roomMsg) {
}
@Override
public void didDeleteMessage(long midMsg) {
}
@Override
public void didRevokeMessage(long midMsg) {
}
@Override
public void deleteAllMessagesInSession() {
}
@Override
public void didReadAllMessage() {
}
@Override
public void onHandshake() {
}
});
detachTioSdk
Used to unregister all callback and free up sdk resources
TioSdkManager.INSTANCE.detachTioSdk();
Last updated