6. 라이브에서 채팅하기

라이브를 하면서 라이브를 보고 있는 사용자들과 함께 채팅 메시지를 주고 받을 수 있습니다. 메시지를 보낼 때 다음의 세 파라메터를 사용할 수 있습니다.

파라메터설명
text보내고자 하는 메시지
data메시지에 추가로 보내고 싶은 내용이 있을 때 사용
customType메시지를 특정 용도의 그룹으로 묶고 싶은 경우 사용
  • 메시지를 보낼 때 별도의 지정없이 보내고 싶으면 text만 지정하여 sendMessage() 함수를 사용하면 됩니다.
// send message
val message = Hello.
streamer.sendMessage(text = message)
  • 지정한 사용자에게만 메시지를 보내고 싶으면 sendDM() 함수를 사용합니다. receiver에는 메시지를 받을 사람의 ID를 지정합니다.
// send direct message
val receiver = "100"
val message = Hello.
streamer.sendDM(receiver, message)
  • 다른 사용자가 채팅 메시지를 보냈을 경우는 FFStreamerListeneronChatMessageReceived 리스너로 채팅 메시지가 들어옵니다. 이 함수 안에서 받은 메시지에 대한 처리를 합니다.
override fun onChatMessageReceived(item: FFMessage) {
// handle received message
}
  • 특정 메시지에 대한 답변을 달고 답변이라는 표시를 해주고 싶은 경우에 대한 예를 들어보겠습니다.
    • 일반 메시지는 구별을 위해 customType에 "NORMAL"이라고 적는다.
    • 답변 메시지는 customType에 "REPLY"라고 적고 data에는 원 메시지의 messageId를 적어준다.
  • 위와 같이 하면 메시지를 "NORMAL"과 "REPLY" 두 종류의 메시지로 구별할 수 있으며 답변 메시지를 받은 경우에 data에 원본 메시지의 ID가 포함되어 있으므로 원본 메시지와 함께 답변 메시지를 같이 보여줄 수 있게 됩니다.
// send message by user A
val message = "Hello.
streamer.sendMessage(text = message, customType = "NORMAL")
// send reply by user B
// assume that user B received message whose id is "1234"
val message = "Nice to meet you"
streamer.sendMessage(text = message, data = "1234", customType = "REPLY")