Section outline


    • DetectRTC!

      #Operating SystemUnknown OS version: Unknown OS Version
      #BrowserNetscape version: 5
      Private browsing? Nope
      #Display resolutions1280 x 720
      #Display aspect ratio1.78
      #System has Speakers?Nope
      #System has Microphone?Nope
      #System has Webcam?Nope
      #Website has webcam permissions?Nope
      #Website has microphone permissions?Nope
      #Browser allows getUserMedia on this page?Yep
      #Can you change output audio devices?
      Yep
      #Can you change camera resolutions without making new getUserMedia request?
      Yep
      #Browser Supports WebRTC (Either 1.0 or 1.1)?Yep
      #Browser Supports ORTC (WebRTC 1.1)?Nope
      #Can you replace tracks without renegotiating peers?
      Nope
      #Can your browser record remote audio or process remote audio stream in WebAudio API?Nope
      #Browser Supports WebSockets API?Yep
      #Your system blocked WebSockets protocol or WebSockets server is not accessible?Nope
      #Browser Supports WebAudio API?Yep
      #Browser Supports SCTP Data Channels?Nope
      #Browser Supports RTP Data Channels?Nope
      #This page Supports Screen Capturing API?
      Yep
      #Does Browser Support multi-monitor selection & capturing screen of any monitor?Nope
      #Is it a mobile device?Nope
      #Does Browser Support Stream Capturing from Canvas?Yep
      #Does Browser Support Stream Capturing from Video?Yep
      #Does Browser Support Promises?Yep
      #Click to show IP addresses

      How to use DetectRTC?

      <script src="https://www.webrtc-experiment.com/DetectRTC.js"></script>
      <script>
      // OR otherwise use NPM
      var DetectRTC = require('detectrtc');
      </script>
      
      DetectRTC.load(function() {
          DetectRTC.hasWebcam (has webcam device!)
          DetectRTC.hasMicrophone (has microphone device!)
          DetectRTC.hasSpeakers (has speakers!)
          DetectRTC.isScreenCapturingSupported
          DetectRTC.isSctpDataChannelsSupported
          DetectRTC.isRtpDataChannelsSupported
          DetectRTC.isAudioContextSupported
          DetectRTC.isWebRTCSupported
          DetectRTC.isDesktopCapturingSupported
          DetectRTC.isMobileDevice
      
          DetectRTC.isWebSocketsSupported
          DetectRTC.isWebSocketsBlocked
          DetectRTC.checkWebSocketsSupport(callback)
      
          DetectRTC.isWebsiteHasWebcamPermissions        // getUserMedia allowed for HTTPs domain in Chrome?
          DetectRTC.isWebsiteHasMicrophonePermissions    // getUserMedia allowed for HTTPs domain in Chrome?
      
          DetectRTC.audioInputDevices    // microphones
          DetectRTC.audioOutputDevices   // speakers
          DetectRTC.videoInputDevices    // cameras
      
          DetectRTC.osName
          DetectRTC.osVersion
      
          DetectRTC.browser.name === 'Edge' || 'Chrome' || 'Firefox'
          DetectRTC.browser.version
          DetectRTC.browser.isChrome
          DetectRTC.browser.isFirefox
          DetectRTC.browser.isOpera
          DetectRTC.browser.isIE
          DetectRTC.browser.isSafari
          DetectRTC.browser.isEdge
      
          DetectRTC.browser.isPrivateBrowsing // incognito or private modes
      
          DetectRTC.isCanvasSupportsStreamCapturing
          DetectRTC.isVideoSupportsStreamCapturing
      
          DetectRTC.DetectLocalIPAddress(callback)
      });