1대1 메시지
응용 시나리오
App 2인 채팅
1:1 채팅 메시지는 App의 2인 채팅에 사용되며 QQ 친구, WeChat 친구 채팅 방식과 유사합니다.
App 관리자 메시지 발송
App 관리자는 백엔드에서 1:1 채팅 메시지를 보낼 수 있고 다른 사용자 신분으로 메시지를 보낼 수도 있습니다.
App 관리자 시스템 메시지 시뮬레이션
App 관리자는 백엔드에서 메시지 발송을 통해 시스템 메시지 형식으로 사용자들에게 알림 메시지를 보내는 것을 시뮬레이션할 수 있습니다. App은 App 관리자의 사용자 정의 메시지를 받으면 특수 처리 합니다.
IM은 완벽한 1:1 채팅 메시지 기능을 제공합니다. 또한 1:1 채팅 메시지에 대한 권한 제어 및 확장 기능을 제공하여 실시간 메시지 기록 불러오기, 멀티 단말 동기화, 오프라인 메시지 푸시 및 발신자 정보 포함 등 기능을 구현할 수 있습니다.
1:1 채팅 메시지 유형
기능 유형 | 기능 설명 |
텍스트 메시지 | 일반 텍스트로 구성된 메시지 |
이모티콘 메시지 | 개발자 사용자 정의 이모티콘 메시지 |
지리적 위치 메시지 | 지리적 위치명, 경도, 위도 정보로 구성된 메시지 |
이미지 메시지 | 이미지의 URL 주소, 사이즈, 이미지 크기 등 정보로 구성된 메시지. 최대 28M 지원. |
음성 메시지 | 음성 파일 URL 주소, 크기, 시간 등 정보로 구성된 메시지. 최대 28M 지원. |
파일 메시지 | 파일의 URL 주소, 크기, 형식 등 정보로 구성된 메시지. 형식 제한 없으며 최대 100M 지원. |
쇼트 비디오 메시지 | 쇼트 비디오 파일의 URL 주소, 시간, 크기, 형식 등 정보로 구성된 메시지. 최대 100M 지원. |
사용자 정의 메시지 | 홍바오 메시지, 가위바위보 등과 같은 개발자 사용자 정의 메시지. |
시스템 알림 메시지 | 내부 시스템 알림 메시지 및 개발자 사용자 정의 시스템 알림 메시지 포함 |
1:1 채팅 메시지 기능
1:1 채팅 메시지 기능 | 기능 설명 | 응용 시나리오 |
1:1 채팅 메시지 발송 | SDK 및 REST API를 통해 1:1 채팅 메시지 발송 | App 2인 채팅 App 관리자 메시지 발송 App 관리자 시스템 메시지 시뮬레이션 |
1:1 채팅 메시지 수신 | SDK를 통해 1:1 채팅 메시지 수신 | 온라인 메시지 수신 오프라인 메시지 수신 이전 메시지 쿼리 |
1:1 채팅 메시지 권한 제어
1:1 채팅 메시지 권한 제어 | 기능 설명 | 응용 시나리오 |
App내 2명의 사용자 1:1 메시지 발송 | 2명의 낯선 사람 간 메시지 발송 가능 | 낯선 사람 간 메시지 발송 |
App 관리자 1:1 메시지 발송 | App 관리자는 모든 사용자에게 1:1 채팅 메시지 발송 가능 | App 관리자의 다른 사용자 메시지 발송 시뮬레이션 App 관리자의 시스템 메시지 시뮬레이션 |
친구에게만 메시지 발송 허용 | 친구 사이만 메시지 발송 가능 | 친구간 메시지 발송 |
특정인이 보낸 메시지 거부 | 블랙리스트를 통해 특정 사용자가 보낸 메시지 거부 가능 | 친구 관계 해제 특정인 메시지 거부 |
1:1 채팅 메시지 확장 기능
1:1 채팅 메시지 확장 기능 | 기능 설명 | 응용 시나리오 |
채팅 기록 가져오기 | SDK 또는 REST API을 통해 이전 메시지 가져오기 | 실시간 채팅 기록 가져오기 메시지 기록 주기적 다운로드 |
멀티 단말 동기화 | 1:1 채팅 메시지 멀티 단말 동기화 지원 | 사용자 멀티 단말 메시지 동기화 |
1:1 채팅 메시지 오프라인 푸시 | Apple, Huawei, Xiaomi, OPPO, vivo 및 Meizu 등 휴대폰 오프라인 푸시 지원 | 메시지 오프라인 푸시 |
1:1 채팅 메시지에 발신자 정보 포함 | 메시지에 발신자 정보 포함 가능 | 발신자 대화명, 프로필 사진 등 표시 |
1:1 채팅 오프라인 메시지 처리 프로세스
1:1 채팅 메시지 오프라인 캐시 및 로밍 처리 프로세스:
1. 사용자 A가
sendMessage
를 호출하여 오프라인 상태에 있는 사용자 B에게 메시지를 발송합니다.사용자 A는 사용자 B의 최근 대화상대에 추가되며 최대 100개의 메시지가 캐시됩니다.
메시지는 7일 동안 오프라인 캐시에 저장됩니다.
메시지는 7일 동안 로밍 서버에 저장됩니다.
2. 사용자 B가
login
인터페이스를 호출하여 IM에 로그인합니다. 3. SDK가 오프라인 캐시에서 메시지를 자동으로 풀링하고
OnNewMessage
를 통해 전달합니다.4. SDK가 최근 대화 상대를 자동으로 풀링하고
OnNewMessage
인터페이스를 통해 전달합니다. 5. 메시지 동기화 과정이 완료되면
OnRefresh
인터페이스를 통해 사용자에게 메시지 동기화 완료 알림을 보냅니다. 6. 사용자가
getMessage
를 호출합니다. 로컬 메시지가 불완전한 경우 SDK는 자동으로 로밍 서버에서 메시지를 풀링합니다.