미디어장치가 없는 PC 대응하기

서비스에서는 미디어 장치(마이크 또는 카메라) 를 필요로 하지만 이를 이용하는 고객의 PC에 해당 장치가 없을 수도 있습니다.

이와 같은 경우 서비스를 제공하는 입장에선 적절한 에러 처리 및 고객에게 이를 통지 해주어야 합니다.

PlayRTC JS SDK 는 이러한 상황을 가정하여 미디어 장치가 없는 경우 에러 이벤트에서 이를 catch 할 수 있도록 되어 있습니다.

간단히 코드를 확인해 보겠습니다.

//PlayRTC 개체를 생성합니다.
conn = new PlayRTC({
      localVideoTarget: "localStream",
      remoteVideoTarget: "remoteStream"
});

conn.on("error", function(code, desc, payload){
      if(code === "M4001"){
           alert("사용자 브라우저는 미디어 장치를 지원하지 않습니다.");
      }
      else if(code === "M4002"){
          alert("해당 서비스는 반드시 영상/음성을 필요로 합니다. 브라우저의 미디어 사용여부를 반드시 '사용'으로 해주세요.");
      }
});

에러 이벤트는 PlayRTC 각 단계별 다양한 에러 상황을 catch 할 수 있으며 사용자 미디어 장치에 관해서도 이를 수행 할 수 있습니다.
M4001 과 M4002 코드는 각각 미디어 장치 지원 안함과 사용자에 의한 미디어 사용 유무 거부를 나타냅니다. 이벤트 핸들러 내에서 해당 코드를 기반으로 에러 처리를 할 수 있습니다.

더불어 JS SDK v1.0.3 버전부터는 PlayRCT 개체를 생성하기 전에 미리 검사할 수 있는 방법도 추가 되었습니다. 아래 두 줄의 코드는 각각 브라우저의 미디어 장치 지원 유무 와 WebRTC 기능 지원 유무를 반환합니다.

//미디어 장치 지원 유무
PlayRTC.utils.userMediaSupport;

//WebRTC 기능 지원 유무
PlayRTC.utils.webRtcSupport;

위 두 줄의 코드를 사용하여 PlayRTC 객체 생성 전에 미리 서비스의 사용 가능 유무를 체크 할 수 있습니다.

if(!PlayRTC.utils.userMediaSupport){
     alert("사용자 브라우저는 미디어 장치를 지원하지 않습니다. 서비스를 사용할 수 없습니다.");
     return;
}

if(!PlayRTC.utils.webRtcSupport){
     alert("사용자 브라우저는 WebRTC를 지원하지 않습니다. 서비스를 사용할 수 없습니다.");
     return;
}

//PlayRTC 개체를 생성합니다.
conn = new PlayRTC({
      localVideoTarget: "localStream",
      remoteVideoTarget: "remoteStream"
});
 

Play RTC

서비스 체험

Play RTC build PlaygrOund

나만의 플레이그라운드를 만들어 친구를 초대해보세요 !

www.playrtc.com/

번거로운 가입이나 설치 없이ID만 만들어서 영상통화나 파일 공유, 채팅 서비스를 무료로 즐겨보세요.

 

Play RTC

서비스 체험

개설한 Playground 주소를 복하해서 친구에게 보내조세요. 친구가 Playground에 접속하면 이곳에 친구의 영상과 음성이 나타납니다. Waiting..

Photo

X
이미지 미리보기
이미지
 

서비스 체험

 

서비스 체험

서비스 체험은 크롬과 파이어폭스 브라우저에 최적화되어 있습니다.
크롬 또는 파이어폭스 브라우저를 설치 후 다시 이용해주세요.