콘텐츠로 이동

User

사용자 생성 / 로그인

톡플러스는 토큰 기반의 로그인을 지원합니다. 토큰 기반 로그인을 사용하려면 AuthV4.getHiveTalkPlusLoginToken()을 호출하여 토큰을 획득한 후 사용자를 생성 및 로그인할 수 있는 HiveTalkPlus.loginWithToken()을 호출해야 합니다.

Token User

playerId, login Token, 사용자 닉네임을 사용하여 로그인을 할 수 있습니다.

  • userIdAuthV4.getPlayerInfo() 함수에 playerId를 전달하여 반환됩니다.
  • loginTokenAuthV4.getHiveTalkPlusLoginToken() 함수에서 생성합니다.
 // loginToken 은 AuthV4.getHiveTalkPlusLoginToken();
 HiveTalkPlusApi.LoginWithToken(userId, loginToken, username, profileImageUrl, metaData, (HiveTalkPlusUser user) => { 
    // SUCCESS
 }, (int statusCode, Exception e) => {
    // FAILURE
 });
 // 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을 변경할 수 있습니다.

 HiveTalkPlusApi.UpdateUserProfile(username, profileImageUrl, metaData, (HiveTalkPlusUser user) => { 
    // SUCCESS
 }, (int statusCode, Exception e) => {
    // FAILURE
 });
 // 이미지 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 객체 중 마지막 객체를 넣으면 그 다음 페이지를 조회할 수 있습니다.

 HiveTalkPlusApi.GetBlockedUserList(lastUser, (List<HiveTalkPlusUser> users) => {
    // SUCCESS
 }, (int statusCode, Exception e) => {
    // FAILURE
 });
 HiveTalkPlus.getBlockedUserList(lastUser, object : HiveTalkPlus.CallbackListener<List<HiveTalkPlusUser?>?> {
     override fun onSuccess(users: List<HiveTalkPlusUser?>?) {}
     override fun onFailure(i: Int, e: Exception?) {}
 })
 HiveTalkPlus.getBlockedUserList(lastUser, success: { users in
     // SUCCESS
 }, failure: { errorCode, error in
    // FAILURE
 })

2. 사용자 차단 / 차단 해제

사용자를 Block / Unblock 할 수 있습니다.

 // 차단
 HiveTalkPlusApi.BlockUser(targetId, () => {
    // SUCCESS
 }, (int statusCode, Exception e) => {
    // FAILURE
 });


 // 차단 해제
 HiveTalkPlusApi.UnblockUser(targetId, () => {
    // SUCCESS
 }, (int statusCode, Exception e) => {
    // FAILURE
 });
 // 차단
 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?) {}
 })
 HiveTalkPlus.blockUser(targetId, success: {
    // SUCCESS
 }, failure: { errorCode, error in
    // FAILURE
 })
 // 차단 해제
 HiveTalkPlus.unblockUser(targetId, success: {
    // SUCCESS
 }, failure: { errorCode, error in
    // FAILURE  
 })

다음과 같은 방식으로 동작합니다.

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와 연결된 실시간 연결을 종료합니다.

 HiveTalkPlusApi.Logout(() => {
    // SUCCESS
 }, (int statusCode, Exception e) => {
    // FAILURE
 });
 HiveTalkPlus.logout(object : HiveTalkPlus.CallbackListener<Unit?> {
     override fun onSuccess(unit: Unit?) {}
     override fun onFailure(i: Int, e: Exception?) {}
 })
 HiveTalkPlus.logout(success: {
    // SUCCESS
 }, failure: { errorCode, error in
    // FAILURE
 })

 


사용자 삭제

사용자를 삭제할 수 있습니다. 사용자 삭제와 더불어 현재 Hive 톡플러스와 연결된 실시간 연결을 종료합니다.

 HiveTalkPlusApi.DeleteUser(() => {
    // SUCCESS
 }, (int statusCode, Exception e) => {
    // FAILURE
 });
 HiveTalkPlus.deleteUser(object : HiveTalkPlus.CallbackListener<Unit?> {
     override fun onSuccess(unit: Unit?) {}
     override fun onFailure(i: Int, e: Exception?) {}
 })
 HiveTalkPlus.deleteUser(success: {
    // SUCCESS
 }, failure: { errorCode, error in
   // FAILURE
 })