이 페이지에서는 메시지 발송/조회 및 기타 메시지와 관련된 API가 간략하게 기술되어 있습니다. 번역 기능이 필요할 경우아래 내용을 확인하여 주십시오.
1. 채널 내 메시지 목록 조회
채널 내 메시지 목록을 조회합니다.
Copy // 특정 채널의 메시지 목록을 가져오고 싶은 경우
var messageParams = new TPMessageRetrievalParams(channel);
messageParams.lastMessage = lastMessage;
messageParams.orderBy = TPMessageOrderBy.TPOrderByLatest;
messageParams.translationLanguage = translationLanguage;
TalkPlusApi.GetMessages(messageParams,
(List<TPMessage> tpMessages, bool hasNext) => {
// SUCCESS
}, (int statusCode, Exception e) => {
// FAILURE
});
2. 채널 내 파일 메시지 목록 조회
채널 내 파일이 첨부된 메시지 목록을 조회합니다.
Copy // 특정 채널의 메시지 목록을 가져오고 싶은 경우
var messageParams = new TPMessageRetrievalParams(channel);
messageParams.lastMessage = lastMessage;
messageParams.orderBy = TPMessageOrderBy.TPOrderByLatest;
messageParams.translationLanguage = translationLanguage;
TalkPlusApi.GetFileMessages(messageParams,
(List<TPMessage> tpMessages, bool hasNext) => {
// SUCCESS
}, (int statusCode, Exception e) => {
// FAILURE
});
3. 메시지 발송
채널에 메시지를 발송할 수 있습니다.
TPMessageSendParams 클래스는 TalkPlus Unity SDK v0.5.3 이상에서 지원됩니다.
메시지 발송 파일 업로드 파일 URL 지정하여 메시지 발송
Copy var sendParams = new TPMessageSendParams(channel,
TPMessageType.TPMessageText,
TPMessageContentType.TPMessageContentText);
sendParams.textMessage = textMessage;
sendParams.mentionUserIDs = mentionUserIDs;
sendParams.metaData = metaData;
sendParams.parentMessageId = parentMessageId;
sendParams.translationLanguages = translationLanguages;
TalkPlusApi.SendMessage(sendParams,
(TPMessage tpMessage) => {
// SUCCESS
}, (int statusCode, Exception e) => {
// FAILURE
});
Copy var sendParams = new TPMessageSendParams(channel,
TPMessageType.TPMessageText,
TPMessageContentType.TPMessageContentFile);
sendParams.filePath = filePath;
TalkPlusApi.SendMessage(sendParams,
(TPMessage tpMessage) => {
// SUCCESS
}, (int statusCode, Exception e) => {
// FAILURE
});
Copy var sendParams = new TPMessageSendParams(channel,
TPMessageType.TPMessageText,
TPMessageContentType.TPMessageContentText);
sendParams.textMessage = textMessage;
sendParams.fileUrl = fileUrl;
TalkPlusApi.SendMessage(sendParams,
(TPMessage tpMessage) => {
// SUCCESS
}, (int statusCode, Exception e) => {
// FAILURE
});
4. 메시지 조회
단일 메시지를 조회할 수 있습니다.
Copy // 특정 채널의 메시지 1개만 가져오고 싶은 경우
var messageParams = new TPMessageRetrievalParams(channel);
messageParams.messageId = messageId;
messageParams.translationLanguage = translationLanguage;
TalkPlusApi.GetMessage(messageParams,
(TPMessage tpMessage) => {
// SUCCESS
}, (int statusCode, Exception e) => {
// FAILURE
});
5. 메시지 회신
회신 하고자 하는 메시지를 지정할 수 있습니다.
Copy var sendParams = new TPMessageSendParams(channel,
TPMessageType.TPMessageText,
TPMessageContentType.TPMessageContentText);
sendParams.textMessage = "hello";
sendParams.parentMessageId = "anotherMessageIdThatIamReplyingTo";
TalkPlusApi.SendMessage(sendParams,
(TPMessage tpMessage) => {
// SUCCESS
}, (int statusCode, Exception e) => {
// FAILURE
});
6. 메시지 읽음 확인
안읽은 메시지 수를 카운팅하기 위해 메시지 읽음 확인 API를 제공합니다.
Copy TalkPlusApi.MarkAsReadChannel(channel, (TPChannel tpChannel) => {
// SUCCESS
}, (int statusCode, Exception e) => {
// FAILURE
});
7. 메시지 리액션
메시지 리액션 API를 제공합니다.
Copy // reaction 추가
TalkPlusApi.AddMessageReaction(tpMessage, "happy", (TPMessage tpMessage) => {
// SUCCESS
}, (int statusCode, Exception e) => {
// FAILURE
});
// reaction 삭제
TalkPlusApi.RemoveMessageReaction(tpMessage, "happy", (TPMessage tpMessage) => {
// SUCCESS
}, (int statusCode, Exception e) => {
// FAILURE
});
// 메시지 객체에 있는 reaction 조회
tpMessage.getReactions();
/*
{
"happy": [
"user1",
"user2"
],
"sad": [
"user3"
]
}
*/
8. 메시지 번역
채널의 특정 메시지를 지정된 언어로 번역합니다.
Copy TalkPlusApi.TranslateMessage(tpChannel,
tpMessage,
new List<string> { "de", "en" },
(TPMessage tpMessage) => {
// SUCCESS
}, (int statusCode, Exception e) => {
// FAILURE
});
9. 특정 메시지 안 읽은 사용자 수 확인
특정 메시지를 읽지 않은 사용자 수를 확인할 수 있는 기능을 제공합니다.
Copy tpChannel.GetMessageUnreadCount(tpMessage);
10. 메시지 삭제
메시지 삭제를 위한 API를 제공합니다.
Copy TalkPlusApi.DeleteMessage(channel, message, () => {
// SUCCESS
}, (int statusCode, Exception e) => {
// FAILURE
});