User
사용자 생성 / 로그인¶
톡플러스는 토큰 기반의 로그인을 지원합니다. 토큰 기반 로그인을 사용하려면 AuthV4.getHiveTalkPlusLoginToken()
을 호출하여 토큰을 획득한 후 사용자를 생성 및 로그인할 수 있는 HiveTalkPlus.loginWithToken()
을 호출해야 합니다.
Token User¶
playerId, login Token, 사용자 닉네임을 사용하여 로그인을 할 수 있습니다.
- userId는
AuthV4.getPlayerInfo()
함수에playerId
를 전달하여 반환됩니다. - loginToken은
AuthV4.getHiveTalkPlusLoginToken()
함수에서 생성합니다.
// loginToken 은 AuthV4.getHiveTalkPlusLoginToken()
// 이미지 URL 직접 지정
HiveTalkPlus.loginWithToken(userId, loginToken, username, profileImageUrl, metaData,
object : HiveTalkPlus.CallbackListener<HiveTalkPlusUser?> {
override fun onSuccess(user: HiveTalkPlusUser?) {}
override fun onFailure(i: Int, e: Exception?) {}
})
// 이미지 파일 업로드
HiveTalkPlus.loginWithToken(userId, loginToken, username, profileImageFile, metaData,
object : HiveTalkPlus.CallbackListener<HiveTalkPlusUser?> {
override fun onSuccess(user: HiveTalkPlusUser?) {}
override fun onFailure(i: Int, e: Exception?) {}
})
// loginToken 은 AuthV4.getHiveTalkPlusLoginToken();
// 이미지 URL 직접 지정
HiveTalkPlus.login(withToken: loginToken, userId: userId, username: username, profileImageUrl
: profileImageUrl
, metaData: metaData, success: { user in
// SUCCESS
}, failure: { errorCode, error in
// FAILURE
})
// 이미지 파일 업로드
HiveTalkPlus.login(withToken: loginToken, userId: userId, username: username, profileImage: profileImage, metaData: metaData, success: { user in
// SUCCESS
}, failure: { errorCode, error in
// FAILURE
})</pre>
사용자 정보 업데이트¶
사용자 닉네임, Profile Image url을 변경할 수 있습니다.
// 이미지 URL 직접 지정
HiveTalkPlus.updateUserProfile(username, profileImageUrl, metaData,
object : HiveTalkPlus.CallbackListener<HiveTalkPlusUser?> {
override fun onSuccess(user: HiveTalkPlusUser?) {}
override fun onFailure(i: Int, e: Exception?) {}
})
// 이미지 파일 업로드
HiveTalkPlus.updateUserProfile(username, profileImageFile, metaData,
object : HiveTalkPlus.CallbackListener<HiveTalkPlusUser?> {
override fun onSuccess(user: HiveTalkPlusUser?) {}
override fun onFailure(i: Int, e: Exception?) {}
})
// 이미지 URL 직접 지정
HiveTalkPlus.updateUserProfile(username, profileImageUrl: profileImageUrl, metaData: metaData, success: { user in
// SUCCESS
}, failure: { errorCode, error in
// FAILURE
})
// 이미지 파일 업로드
HiveTalkPlus.updateUserProfile(username, profileImage: profileImage, metaData: metaData, success: { user in
// SUCCESS
}, failure: { errorCode, error in
// FAILURE
})
사용자 차단 목록 관리¶
1. 차단된 사용자 조회¶
차단된 사용자를 조회할 수 있습니다. Pagination 처리가 되어 있어 다음 페이지 조회를 위해서는 이전 조회 시에 리턴받은 HiveTalkPlusUser
객체 중 마지막 객체를 넣으면 그 다음 페이지를 조회할 수 있습니다.
2. 사용자 차단 / 차단 해제¶
사용자를 Block / Unblock 할 수 있습니다.
// 차단
HiveTalkPlus.blockUser(userId, object : HiveTalkPlus.CallbackListener<Unit?> {
override fun onSuccess(unit: Unit?) {}
override fun onFailure(i: Int, e: Exception?) {}
})
// 차단 해제
HiveTalkPlus.unblockUser(userId, object : HiveTalkPlus.CallbackListener<Unit?> {
override fun onSuccess(unit: Unit?) {}
override fun onFailure(i: Int, e: Exception?) {}
})
다음과 같은 방식으로 동작합니다.
Case | 가능 여부 |
---|---|
내가 블럭한 사용자를 내가 Owner인 channel에 add member가 가능한지 | 불가능 |
내가 블럭한 사용자가 내가 Owner인 channel에 join이 가능한지 | 불가능 |
내가 블럭한 사용자를 내가 Member인 channel에 add member가 가능한지 | 가능 |
내가 블럭한 사용자가 내가 Member인 channel에 join이 가능한지 | 가능 |
내가 블럭한 사용자가 Owner인 channel에 나를 add member할 수 있는지 | 불가능 |
내가 블럭한 사용자가 Owner인 channel에 내가 join할 수 있는지 | 불가능 |
내가 블럭한 사용자가 Member인 channel에 나를 add member할 수 있는지 | 가능 |
내가 블럭한 사용자가 Member인 channel에 내가 join할 수 있는지 | 가능 |
사용자 로그아웃¶
사용자 세션을 로그아웃 할 수 있습니다. 현재 TalkPlus와 연결된 실시간 연결을 종료합니다.
사용자 삭제¶
사용자를 삭제할 수 있습니다. 사용자 삭제와 더불어 현재 Hive 톡플러스와 연결된 실시간 연결을 종료합니다.