# 채널

해당 문서에서는 Channel에서 사용할 수 있는 API에 대해 설명합니다.

# 참여 메소드

채팅방에 접속합니다.

설정한 시간(기본값: 5초)이 지났지만 접속하지 못했을 경우 VChatCloudError.networkError를 발생시킵니다.
ChannelDelegate.onJoinUserInit에서 ChannelResultModel을 받아 과거 채팅 내역을 불러올 수 있습니다.

await channel.join(timeout: TimeInterval(5))
1
  • 파라미터 값

    식별자 설명
    timeout TimeInterval 지정한 시간만큼 접속 시도 대기, 기본값 5초

# 퇴장 메소드

채팅방에서 퇴장 처리와 채팅 서버의 연결을 종료합니다.

ChannelDelegate.disconnect가 같이 호출됩니다.

channel.disconnect()
1

# 접속유저 목록 조회 메소드

채팅방에 접속한 유저 목록을 가져옵니다.

await channel.getClientList();
1
  • 결과 값

    식별자 설명
    ChannelResultModel ChannelResultModel.body의 접속한 유저 목록 JSON

# 메시지 발송 메소드

채팅방에 일반 메시지를 전송합니다.

let message = "Hello VChatCloud!"
channel.sendMessage(message)
1
2
  • 파라미터 값

    식별자 설명
    message String 전송할 메시지

# 이모지 발송 메소드

채팅방에 이모티콘을 전송합니다.

다른 클라이언트(웹, 안드로이드 등)와 동일한 형상을 유지하기 위해 "img/emoticon/emo01/emo01_001.png"와 같이 데이터를 전송해야 합니다.

let emoji = "img/emoticon/emo01/emo01_001.png"
channel.sendEmoji(emoji)
1
2
  • 파라미터 값

    식별자 설명
    message String 이모티콘 정보

# 귓속말 메소드

유저 1명에게 귓속말을 전송합니다.

받을 상대방의 clientKeynickname이 있어야 합니다.
ChannelDelegate.onSendWhisper가 같이 호출됩니다.

let message = "안녕하세요"
let receivedClientKey = "mp9y8WCRAp" // 실제 사용자의 clientKey로 변경해주세요.
let receivedUserNickname = "사용자" // 실제 사용자의 닉네임으로 변경해주세요.
channel.sendWhisper(message, receivedClientKey: receivedClientKey, receivedUserNickname: receivedUserNickname)
1
2
3
4
  • 파라미터 값

    식별자 설명
    message String 전송할 메시지
    receivedClientKey String 상대방의 clientKey
    receivedUserNickname String 상대방의 nickname

# 파일 전송 메소드

서버에 파일을 업로드 한 뒤, 채팅서버에 파일 정보를 공유합니다. 해당 기능은 2가지의 API가 있습니다.

let url = URL(/* INPUT YOUR LOCAL FILE URL */)
let result = await channel.sendFile(url)
1
2
  • 파라미터 값

    식별자 설명
    fileUrl String 전송할 파일의 URL
let data = Data() // INPUT YOUR DATA
let fileName = "image.png"
let result = await channel.sendFile(data: data, fileName: fileName)
1
2
3
  • 파라미터 값

    식별자 설명
    data Data 전송할 파일의 데이터
    fileName String 전송할 파일의 이름 (파일 목록에서 표시됨)
Copyright 2022. E7Works Inc. & JOYTUNE Corp. All Rights Reserved.