RemonCast
, RemonCall
의 간단한 코드 만으로 통신 및 방송이 가능 합니다. 사용자의 필요에 따라 UI처리 및 추가 작업이 필요한 경우가 발생 합니다. 아래의 다양한 Callback을 통해 보다 세부적인 개발이 가능합니다.onInit
은 SDK가 인터넷을 통해 RemoteMonster 서버에 정상적으로 접속하여 RemoteMonster의 방송, 통신 인프라를 사용할 준비가 완료된 상태를 의미합니다. 이때 인증 정보인 token
을 돌려 받습니다. 대다수의 경우 사용할 일이 없으며 디버깅에 활용하게 됩니다.
(Android 의 경우 token 을 전달하지 않습니다.)create()
을 통해 방송을 정상적으로 생성하여 송출이 될때입니다.onCreate
는 인자로 channelId
를 넘겨줍니다. 이것은 이 방의 고유한 구분자로 시청자들이 이 channelId
를 통해 접속하여 방송을 보게 됩니다.join()
을 통해 연결이 완료 된후 미디어 시청이 가능해 졌을 때 호출 됩니다.connect()
을 통해 채널을 새로 만들고 상대방이 입장하기를 기다립니다.connect()
을 통해 이미 만들어진 채널에 접속하게 됩니다. 이때 만들어진 채널의 channelId
를 필수로 필요하게 됩니다. 정상적으로 완료되면 onConnect
가 생기나, Callee라면 곧바로 발생하는 onComplete
를 사용하는것을 권장합니다.close()
함수를 호출 하거나 상대방이 close()
함수를 호출 했을때 또는 네트워크 이상 등으로 더이상 연결을 유지 하기 어려울 때 등 연결이 종료 되면 호출 되며, Remon
에서 사용했던 자원들 해제가 완료된 상태입니다.Remon
이 동작 중에 에러가 발생 할때 호출 됩니다.Remon
이 동작 중에 네트워크 환경의 변경이 감지되면 재연결을 시도 합니다. 이 때 재연결 상태를 알려주는 onRetry()
함수가 호출 되며 재연결이 시도가 시작 될 때는 completed
값을 false
로 호출 되고, 재연결이 완료 되면 completed
값을 true
로 호출 됩니다. 만약 재연결 시도중 재연결이 실패 하거나 에러가 발생 한다면 onRetry()
가 아닌 onError()
또는 onClose()
가 호출 될 수도 있습니다.onRemoteVideoSizeChanged
와 onLocalVideoSizeChanged
함수를 구현 하여 변화 하는 영상크기에 반응 하도록 구현합니다.report
를 받습니다. report
는 사용자가 remon
생성시 설정한 statInterval
간격 마다 들어오게 됩니다. 네트워크 상황등에 따른 미디어 품질을 나타냄으로 사용자에게 로딩 UI 처리등 안내를 하는데 유용합니다.