• UIKit
  • SDK
  • 서버 API
Chat/
SDK/
Web/
메시지/
SDK
  • Chat SDK 설치
  • Chat SDK 초기화
  • 로그인 및 로그아웃
  • 고객 인터페이스
  • Changelog
  • 메시지
    • 개요
    • 메시지 보내기
    • 메시지 받기
    • 과거 메시지
    • 메시지 전달
    • 메시지 수정
    • 메시지 삭제
    • 과거 메시지 비우기
    • 메시지 철회
    • 온라인 메시지 보내기
    • 메시지 읽음 확인
    • 메시지 조회
    • 지향적 그룹 메시지
    • 알림 차단
    • Key-Value 확장
    • 번역
  • 대화
    • 개요
    • 대화 목록
    • 대화 획득
    • 읽지 않은 메시지 수
    • 대화 최상단 고정
    • 대화 삭제
    • 마크
    • 대화 그룹
  • 그룹
    • 개요
    • 그룹 관리
    • 그룹 정보
    • 그룹 멤버 관리
    • 그룹 멤버 정보
    • 그룹 속성 사용자 정의
    • 그룹 카운터
  • 커뮤니티 화제
    • 커뮤니티 관리
  • 사용자 정보 및 관계망
    • 사용자 정보
    • 사용자 상태
    • 친구 관리
    • 친구 목록
    • 블록리스트
  • Guideline for Beginners
  • 콘솔 안내
    • 애플리케이션 생성 및 업그레이드
    • 기본 구성
    • 기능 구성
    • 계정 관리
    • 그룹 관리
    • 콜백 구성
  • 제품 소개
    • 메시지 관리
      • 1대1 메시지
      • 메시지 저장
      • 오프라인 푸시
      • 그룹 메시지
      • 메시지 포맷
    • 계정 시스템
      • 로그인 인증
      • 온라인 상태 관리
    • 그룹 관련
      • 그룹 시스템
      • 그룹 관리
    • 사용자 정보 및 관계망
      • 정보 관리
      • 관계망 관리
  • 구매 가이드
    • 과금 개요
    • 가격
  • 에러코드
이 페이지는 현재 영어로만 제공되며 한국어 버전은 곧 제공될 예정입니다. 기다려 주셔서 감사드립니다.

과거 메시지

Feature Description

The SDK supports message pull by page, sequence, or time range. Historical messages stored in the cloud are subject to the following time limits:
Developer edition: The free storage period is 7 days and cannot be extended.
Standard edition: The free storage period is 7 days and cannot be extended.
Premium edition: The free storage period is 30 days and cannot be extended.
Note
Extending the storage period of historical messages is a Value-Added Service. You can log in to the Chat Console to modify the relevant configuration. For billing details, see Pricing.
Rich media messages (such as images, files, and audios) have the same storage periods as historical messages.

Pulling a Message List

getMessageList

This API is used to pull the list of messages in a specified conversation by page. It needs to be called when the message list is rendered for the first time after the user enters the conversation, or when the user pulls down the list to view more messages.
Note
This API can be used to pull historical messages.
API
chat.getMessageList(options);
Parameter
The options parameter is of the Object type. It contains the following attribute values:
Name
Type
Description
conversationID
String
Conversation ID, which consists of:
C2C${userID} (for one-to-one chats)
GROUP${groupID} (for group chats)
GROUP${topicID} (topic)
@TIM#SYSTEM (system notification conversation)
nextReqMessageID
String | undefined
Message ID used for the subsequent paged pull. Leave this field empty for the first pull and enter its the value returned by the getMessageList API for the subsequent pull.
Returned value
Promise
Sample
// Pull the message list for the first time when a conversation is opened
let promise = chat.getMessageList({conversationID: 'C2Ctest'});
promise.then(function(imResponse) {
const messageList = imResponse.data.messageList; // Message list
// This parameter must be passed in for the next pull by page.
const nextReqMessageID = imResponse.data.nextReqMessageID;
// It indicates whether all messages have been pulled.
const isCompleted = imResponse.data.isCompleted;
});
// Pull down the message list to view more messages
let promise = chat.getMessageList({conversationID: 'C2Ctest', nextReqMessageID});
promise.then(function(imResponse) {
const messageList = imResponse.data.messageList; // Message list
// This parameter must be passed in for the next pull by page.
const nextReqMessageID = imResponse.data.nextReqMessageID;
// It indicates whether all messages have been pulled.
const isCompleted = imResponse.data.isCompleted;
});

getMessageListHopping

This API is used to pull a message list by specified sequence or time range.
API
chat.getMessageListHopping(options);
Parameter
The options parameter is of the Object type. It contains the following attribute values:
Name
Type
Description
conversationID
String
Conversation ID, which consists of:
C2C${userID} (for one-to-one chats)
GROUP${groupID} (for group chats)
GROUP${topicID} (topic).
sequence
Number | undefined
sequence of the message starting from which to pull roaming group messages
time
Number | undefined
Server time of the message, starting from which to pull roaming one-to-one messages
direction
Number
Message pull direction, which defaults to 0.
0: pull in reverse chronological order to get older messages;
1: pull in chronological order to get recent messages
count
Number | undefined
Number of messages to be pulled. It defaults to 15, which is also the maximum value, indicating that up to 15 messages can be pulled and returned at a time.
Returned value
Promise
Sample
// Pull roaming group messages by sequence.
// `direction`: 0: pull in reverse chronological order to get older messages
// 1: pull in chronological order to get recent messages
let promise = chat.getMessageListHopping({
conversationID: 'GROUPtest',
sequence: 100,
count: 15,
direction: 0
});
promise.then(function(imResponse) {
const messageList = imResponse.data.messageList; // Message list
});

// Pull roaming one-to-one messages by time range.
// `direction`: 0: pull in reverse chronological order to get older messages
// 1: pull in chronological order to get recent messages
let promise = chat.getMessageListHopping({
conversationID: 'C2Ctest',
time: xxx,
count: 15,
direction: 0
});
promise.then(function(imResponse) {
const messageList = imResponse.data.messageList; // Message list
});