일반 채팅 핸들러

비동기로 작업이 진행되며 아래의 이벤트 핸들러로 채팅 관련 이벤트들이 콜백 됩니다.

이벤트 수신 (길드 채팅과 공동으로 사용)

아래의 핸들러를 사용하기 위해서는 이벤트 수신이 우선되어야 하며, 이 메소드에서 수신된 이벤트들을 처리합니다. 리턴되는 값은 처리된 이벤트 개수입니다.

주의
채팅 기능 사용을 위해서 항상 Update()에서 호출해야 합니다.
Poll() -> int

// example
Backend.Chat.Poll();

채널에 입장 시 최초 한번, 해당 채널에 접속하고 있는 모든 게이머들의 정보 콜백

OnSessionListInChannel(SessionListInChannelEventArgs args) => {}

// example
Backend.Chat.OnSessionListInChannel(args) += {
  // TODO
}

SessionListInChannelEventArgs

ValueTypeDescription
ErrInfoErrorInfo성공/실패 정보
SessionListList채널에 접속하고 있는 모든 게이머들의 정보 리스트

채널에 입장 혹은 다른 게이머가 채널에 입장한 경우

OnJoinChannel(JoinChannelEventArgs args) => {}

// example
Backend.Chat.OnJoinChannel(args) += {
  // TODO
}

JoinChannelEventArgs

ValueTypeDescription
ErrInfoErrorInfo성공/실패 정보
SessionSessionInfo채널에서 입장한 게이머의 SessionInfo

자기자신이 채널에서 퇴장한 경우

OnLeaveChannel(LeaveChannelEventArgs args) => {}

// example
Backend.Chat.OnLeaveChannel(args) += {
  // TODO
}

LeaveChannelEventArgs

ValueTypeDescription
ErrInfoErrorInfo성공/실패 정보
SessionSessionInfo채널에서 퇴장한 게이머의 SessionInfo

다른 게이머가 채널에서 퇴장한 경우

OnSessionOfflineChannel(SessionOfflineEventArgs args) => {}

// example
Backend.Chat.OnSessionOfflineChannel(args) += {
  // TODO
}

SessionOfflineEventArgs

ValueTypeDescription
ErrInfoErrorInfo성공/실패 정보
SessionSessionInfo채널에서 퇴장한 게이머의 SessionInfo

같은 채널의 게이머들이 전송한 메시지가 도착한 경우

OnChat(ChatEventArgs args) => {}

// example
Backend.Chat.OnChat(args) += {
  // TODO
}

ChatEventArgs

ValueTypeDescription
ErrInfoErrorInfo성공/실패 정보
FromSessionInfo채팅 메세지를 발송한 사람의 정보
Messagestring채팅 메세지 내용

채팅 관련 내부 기능에 예외가 발생한 경우 (길드 채팅과 공동으로 사용)

OnException(Exception e) => {}

// example
Backend.Chat.OnException(e) += {
  // TODO
}

Parameter

ValueTypeDescription
eException관련 예외 내용