채널 내 메시징

이 페이지에서는 메시지 발송/조회 및 기타 메시지와 관련된 API가 간략하게 기술되어 있습니다. 번역 기능이 필요할 경우, 아래 내용을 확인하여 주십시오.

circle-info

메시지 번역 기능은 구글 클라우드 번역 서비스를 통하여 지원됩니다. 이 기능을 사용하려면 클랫 대쉬보드(Klat Dashboard)에서 구글 클라우드 서비스 계정 KEY 를 추가하여 주십시오.

  • 메시지를 가져오는 메소드 경우, TPMessageRetrievalParams 객체의 translationLanguage 프로퍼티에 번역 될 언어 코드 (ISO-639) 값을 입력하여 주십시오.

  • 메시지를 전송하는 메소드 경우, TPMessageSendParams 객체의 translationLanguage 프로퍼티에 번역 될 언어 코드 (ISO-639) 값을 입력하여 주십시오.

  • 사용할 수 있는 언어 코드 (ISO-639) 값은 아래 링크를 참조하여 주십시오. https://cloud.google.com/translate/docs/languagesarrow-up-right

  • TPMessage 객체의 'getTranslatedText' 메소드를 호출하면 Key-Value 형태의 타입으로 번역 결과물이 반환되며, 'translationLanguage(s)' 파라미터에 사용한 언어 코드 (ISO-639) 값을 키(KEY) 값으로 사용하면 번역된 텍스트(Value)를 가져올 수 있습니다.

1. 채널 내 메시지 목록 조회

채널 내 메시지 목록을 조회합니다.

circle-info

마지막 수신 시간을 기준으로 정렬되어 있습니다.

circle-info

TPMessageRetrievalParams 객체의 translationLanguage 프로퍼티를 설정할 경우, 번역된 메시지 객체 또는 번역된 메시지 목록 객체가 성공 블럭 (성공 클로저)를 통해서 TPMessage 객체가 전달됩니다.

  • 채널에 과거에 전송된 메시지를 대상으로 번역된 메시지를 가져오는 기능을 수행합니다.

  • 실시간으로 전달되는 메시지에 대한 번역 언어 설정은 로그인 메소드에서 설정할 수 있습니다.

  • TPMessageRetrievalParams 클래스는 Klat iOS SDK v0.5.3 이상에서 지원됩니다.

// 특정 채널의 메시지 목록을 가져오고 싶은 경우
TPMessageRetrievalParams *params = 
    [[TPMessageRetrievalParams alloc] initWithChannel:channel];
params.lastMessage = lastMessage;
params.orderby = TPOrderByLatest;
params.translationLanguage = translationLanguage;

[[TalkPlus sharedInstance] getMessages:params 
    success:^(NSArray<TPMessage *> *tpMessages, BOOL hasNext) {
    // SUCCESS
    // If 'hasNext' is YES, call this method with the last object in 'tpMessages'.
} failure:^(int errorCode, NSError *error) {
    // FAILURE
}];

2. 채널 내 파일 메시지 목록 조회

채널 내 파일이 첨부된 메시지 목록을 조회합니다.

circle-info

마지막 수신 시간을 기준으로 정렬되어 있습니다.

circle-info

TPMessageRetrievalParams 객체의 translationLanguage 프로퍼티를 설정할 경우, 번역된 메시지 객체 또는 번역된 메시지 목록 객체가 성공 블럭 (성공 클로저)를 통해서 TPMessage 객체가 전달됩니다.

  • 채널에 과거에 전송된 메시지를 대상으로 번역된 메시지를 가져오는 기능을 수행합니다.

  • 실시간으로 전달되는 메시지에 대한 번역 언어 설정은 로그인 메소드에서 설정할 수 있습니다.

  • TPMessageRetrievalParams 클래스는 Klat iOS SDK v0.5.3 이상에서 지원됩니다.

3. 메시지 발송

채널에 메시지를 발송할 수 있습니다.

circle-info

현재 지원하는 타입은 text, hidden, custom, admin 타입입니다.

  • hidden 메시지 타입 발송 시, push notification은 발송되지 않습니다.

  • admin 메시지 타입은 클랫 대시보드 또는 REST API를 통해서만 발송이 가능합니다.

  • 멘션하고 싶은 사용자가 있을 시, mentions 필드에 멘션하고자 하는 사용자 ID 배열을 넘겨주면 됩니다.

  • 메시지 발송 시 회신 하고자 하는 메시지를 parentMessageId 필드를 이용하여 지정할 수 있습니다.

  • data (metaData)의 경우, 최대 10개의 Key-Value 형식의 데이터를 넣을 수 있습니다.

    • key, value 둘 다 문자열이어야 합니다.

    • key값의 최대 길이는 128자이고, value값의 최대 길이는 1024자입니다.

    • 메시지 텍스트와 data 둘 다 빈 값일 경우 발송에 실패합니다.

  • 메세지 텍스트의 허용된 최대 길이는 8,192자입니다.

  • 업로드 가능한 최대 파일 사이즈는 15MB입니다.

circle-info

이모티콘

  • UTF-8에서 지원하는 이모티콘을 메시지 본문에 사용할 수 있습니다.

  • 그 외에 이모티콘은 메시지 본문 텍스트에 필요한 값을 넣고 직접 파싱 후 표시하는 방법이 있습니다.

circle-check

4. 메시지 조회

단일 메시지를 조회할 수 있습니다.

5. 메시지 회신

회신 하고자 하는 메시지를 지정할 수 있습니다.

6. 메시지 읽음 확인

안 읽은 메시지 수를 카운팅하기 위해 메시지 읽음 확인 API를 제공합니다.

7. 메시지 리액션

메시지 리액션 API를 제공합니다.

circle-info
  • reaction 값은 최소 1자에서 최대 64자까지 가능합니다.

  • 각 메시지에는 최대 10개의 reaction 타입 추가가 가능합니다.

  • reaction 타입 당 최대 100개의 사용자 ID가 저장됩니다.

8. 메시지 번역

채널의 특정 메시지를 지정된 언어로 번역합니다.

circle-info

메시지 번역 기능은 구글 클라우드 번역 서비스를 통하여 지원됩니다. 이 기능을 사용하려면 클랫 대쉬보드(Klat Dashboard)에서 구글 클라우드 서비스 계정 KEY 를 추가하여 주십시오.

9. 특정 메시지 안 읽은 사용자 수 확인

특정 메시지를 읽지 않은 사용자 수를 확인할 수 있는 기능을 제공합니다.

10. 메시지 삭제

메시지 삭제를 위한 API를 제공합니다.

Last updated

Was this helpful?