제품 개요
Basic Concepts
응용 시나리오
기능 소개
계정 시스템
사용자 정보 및 관계망
메시지 관리
그룹 시스템
Official Account
Audio/Video Call
사용 제한
V2TIMGroupInfo groupinfo = new V2TIMGroupInfo();groupinfo.setGroupName("테스트 서버");groupinfo.setSupportTopic(true);// 초기 그룹 구성원List<V2TIMCreateGroupMemberInfo> memberList = new LinkedList<V2TIMCreateGroupMemberInfo>();// 서버 프로필 사진과 같은 기타 구성V2TIMManager.getGroupManager().createGroup(groupinfo, memberList, new V2TIMValueCallback<String>() {@Overridepublic void onError(int i, String s) {// 생성 실패}@Overridepublic void onSuccess(String s) {// 생성 성공, 서버 ID가 반환됩니다}});
{"Type": "Community", // 그룹 유형(필수)"Name": "TestCommunityGroup", // 그룹 이름(필수)"SupportTopic": 1 // 토픽 옵션 지원 여부. 유효한 값: 1 yes, 0 no}
###### 서버 목록Discord의 맨 왼쪽에는 현재 사용자가 가입한 서버 목록이 있습니다. 커뮤니티 시나리오의 경우, Tencent Cloud IM은 서버 목록 조회 전용 API를 제공합니다.```javaV2TIMManager.getGroupManager().getJoinedCommunityList(new V2TIMValueCallback<List<V2TIMGroupInfo>>() {@Overridepublic void onSuccess(List<V2TIMGroupInfo> v2TIMGroupInfos) {// 서버 목록 가져오기 성공, 반환된 List<V2TIMGroupInfo>에 서버 목록의 기본 정보가 제공됩니다.}@Overridepublic void onError(int i, String s) {// 서비스 목록 가져오기 실패}});


// 공개 채널List<String> conversationIDList = new LinkedList();conversationIDList.add("GROUP_$GROUPID");V2TIMManager.getConversationManager().getConversationList(conversationIDList, new V2TIMValueCallback<List<V2TIMConversation>>() {@Overridepublic void onError(int i, String s) {// 서버의 대화 정보 가져오기 실패}@Overridepublic void onSuccess(V2TIMConversationList List<V2TIMConversation>) {// 서버의 대화 정보 가져오기 완료}});// 비공개 채널V2TIMManager.getGroupManager().getTopicInfoList(groupID, topicIDList, new V2TIMValueCallback<List<V2TIMTopicInfoResult>>() {@Overridepublic void onSuccess(List<V2TIMTopicInfoResult> v2TIMTopicInfoResults) {}@Overridepublic void onError(int i, String s) {}});
List<String> conversationIDList = new LinkedList();String customData = "통화 중"V2TIMManager.getConversationManager().setConversationCustomData(conversationIDList, customData, new V2TIMValueCallback<List<V2TIMConversationOperationResult>>() {@Overridepublic void onSuccess(List<V2TIMConversationOperationResult> v2TIMConversationOperationResults) {// 사용자 지정 그룹 대화 데이터 설정 성공}@Overridepublic void onError(int i, String s) {// 사용자 지정 그룹 대화 데이터 설정 실패}});
V2TIMConversationListener conversationLister = new V2TIMConversationListener() {@Overridepublic void onSyncServerStart() {}@Overridepublic void onSyncServerFinish() {}@Overridepublic void onSyncServerFailed() {}@Overridepublic void onNewConversation(List<V2TIMConversation> conversationList) {}@Overridepublic void onConversationChanged(List<V2TIMConversation> conversationList) {}@Overridepublic void onTotalUnreadMessageCountChanged(long totalUnreadCount) {}@Overridepublic void onConversationGroupCreated(String groupName, List<V2TIMConversation> conversationList) {}@Overridepublic void onConversationGroupDeleted(String groupName) {}@Overridepublic void onConversationGroupNameChanged(String oldName, String newName) {}@Overridepublic void onConversationsAddedToGroup(String groupName, List<V2TIMConversation> conversationList) {、}@Overridepublic void onConversationsDeletedFromGroup(String groupName, List<V2TIMConversation> conversationList) {}}V2TIMManager.getConversationManager().addConversationListener(conversationLister);
{"GroupId": "@TGS#_@TGS#cQVLVHIM62CJ", // 토픽의 그룹 ID(필수)"TopicId": "@TGS#_@TGS#cQVLVHIM62CJ@TOPIC#_TestTopic", // 사용자 지정 토픽 ID(옵션)"TopicName": "TestTopic", // 토픽 이름(필수)"From_Account": "1400187352", // 토픽을 생성하는 구성원"CustomString": "This is a custom string", // 사용자 지정 문자열"FaceUrl": "http://this.is.face.url", // 토픽 프로필 사진 URL(옵션)"Notification": "This is topic Notification", // 토픽 알림(옵션)"Introduction": "This is topic Introduction" // 토픽 소개(옵션)}

String groupID = "서버 ID"V2TIMTopicInfo info = new V2TIMTopicInfo();info.setCustomString("{'categray':'게임','type':'text'}") // // 채널 카테고리 및 유형 설정// V2TIMTopicInfo 기본 정보 설정V2TIMManager.getGroupManager().createTopicInCommunity(groupID, info, new V2TIMValueCallback<String>() {@Overridepublic void onSuccess(String s) {// 채널 생성 성공}@Overridepublic void onError(int i, String s) {// 채널 생성 실패}});
// 기본 채널 정보 설정V2TIMManager.getGroupManager().setTopicInfo(topicInfo, new V2TIMCallback() {@Overridepublic void onSuccess() {// 설정 완료}@Overridepublic void onError(int i, String s) {// 설정 실패}});
// 해당 채널의 메시지 수신 옵션 설정String groupID = "topicid"int opt = 0;V2TIMManager.getMessageManager().setGroupReceiveMessageOpt(groupID, opt, new V2TIMCallback() {@Overridepublic void onSuccess() {}@Overridepublic void onError(int i, String s) {}});
final V2TIMMessageListGetOption option = new V2TIMMessageListGetOption();option.setGroupID("채널 ID");option.setCount(20);// 기타 구성V2TIMManager.getMessageManager().getHistoryMessageList(option, new V2TIMValueCallback<List<V2TIMMessage>>() {@Overridepublic void onSuccess(List<V2TIMMessage> v2TIMMessages) {// 채널 기록 메시지 가져오기 완료}@Overridepublic void onError(int code, String desc) {// 채널 기록 메시지 가져오기 실패}});
String groupID = "서버 ID";List< String > topicIDList= new LinkedList(); // 채널 메시지 목록V2TIMManager.getGroupManager().getTopicInfoList(groupID, topicIDList, new V2TIMValueCallback<List<V2TIMTopicInfoResult>>() {@Overridepublic void onSuccess(List<V2TIMTopicInfoResult> v2TIMTopicInfoResults) {// 채널 ID, 이름, 읽지 않은 메시지 수와 같은 채널 정보 가져오기}@Overridepublic void onError(int i, String s) {}});
String groupID = "서버 ID";int filter = 0; // 그룹 구성원 역할: 관리자, 일반 구성원...long nextSeq = 0;// 페이징 매개변수V2TIMManager.getGroupManager().getGroupMemberList(groupID, filter, nextSeq , new V2TIMValueCallback<V2TIMGroupMemberInfoResult>() {@Overridepublic void onError(int i, String s) {CommonUtil.returnError(result,i,s);}@Overridepublic void onSuccess(V2TIMGroupMemberInfoResult v2TIMGroupMemberInfoResult) {}});
{"reaction": {"simle":["user1","user2"]}}
V2TIMManager.getMessageManager().modifyMessage(modifiedMessage, new V2TIMCompleteCallback<V2TIMMessage>() {@Overridepublic void onComplete(int i, String s, V2TIMMessage v2TIMMessage) {// 메시지 수정 완료}});
{"isEdited": true}
V2TIMManager.getMessageManager().modifyMessage(modifiedMessage, new V2TIMCompleteCallback<V2TIMMessage>() {@Overridepublic void onComplete(int i, String s, V2TIMMessage v2TIMMessage) {// 메시지 편집 완료}});
V2TIMGroupInfo info = new V2TIMGroupInfo();info.setCustomInfo("pin data");V2TIMManager.getGroupManager().setGroupInfo(info, new V2TIMCallback() {@Overridepublic void onError(int i, String s) {// 설정 실패}@Overridepublic void onSuccess() {// 설정 성공}});
List< String > groupIDList = new LinkedList();V2TIMManager.getGroupManager().getGroupsInfo(groupIDList, new V2TIMValueCallback<List<V2TIMGroupInfoResult>>() {@Overridepublic void onError(int i, String s) {}@Overridepublic void onSuccess(List<V2TIMGroupInfoResult> v2TIMGroupInfoResults) {}});
// 친구 추가V2TIMManager.getFriendshipManager().addFriend(info, new V2TIMValueCallback<V2TIMFriendOperationResult>() {@Overridepublic void onError(int i, String s) {// 친구 추가 실패}@Overridepublic void onSuccess(V2TIMFriendOperationResult v2TIMFriendOperationResult) {// 친구 추가 성공}});
// 연락처 가져오기V2TIMManager.getFriendshipManager().getFriendList(new V2TIMValueCallback<List<V2TIMFriendInfo>>() {@Overridepublic void onError(int i, String s) {// 연락처 가져오기 실패}@Overridepublic void onSuccess(List<V2TIMFriendInfo> v2TIMFriendInfos) {// 연락처 가져오기 성공}});
// 자신의 온라인 상태 설정V2TIMUserStatus customStatus = new V2TIMUserStatus();V2TIMManager.getInstance().setSelfStatus(customStatus, new V2TIMCallback() {@Overridepublic void onSuccess() {}@Overridepublic void onError(int i, String s) {}});
// 친구의 온라인 상태 가져오기List<String> userIDList = new LinkerList();V2TIMManager.getInstance().getUserStatus(userIDList, new V2TIMValueCallback<List<V2TIMUserStatus>>() {@Overridepublic void onSuccess(List<V2TIMUserStatus> v2TIMUserStatuses) {}@Overridepublic void onError(int i, String s) {}});
// 사용자 프로필 설정final V2TIMUserFullInfo userFullInfo = new V2TIMUserFullInfo();V2TIMManager.getInstance().setSelfInfo(userFullInfo, new V2TIMCallback() {@Overridepublic void onError(int i, String s) {}@Overridepublic void onSuccess() {}});
// 사용자 프로필 가져오기List<String> userIDList = new LinkedList();V2TIMManager.getInstance().getUsersInfo(userIDList, new V2TIMValueCallback<List<V2TIMUserFullInfo>>() {@Overridepublic void onError(int i, String s) {}@Overridepublic void onSuccess(List<V2TIMUserFullInfo> v2TIMUserFullInfos) {}});
피드백