asl
asl

Reputation: 87

Automating webrtc Screenshare

I am trying to automate screen share workflow in a webRTC application. I need to bypass the screenshare prompt. I am using --use-fake-ui-for-media-stream, use-fake-device-for-media-stream and --auto-select-desktop-capture-source flags in my config file.

Doesn't seem work.

Here is my config file :

exports.makeDefaultCapabilities = function(that) {
 return {
 browserName: 'chrome',
 chromeOptions: {
  // disable Password manager popup
  prefs: {
    credentials_enable_service: false,
    download: {
      prompt_for_download: false,
      directory_upgrade: true,
      default_directory: '~/Downloads'
    }
  },
  args: [
    'disable-infobars=true',
    '--use-fake-device-for-media-stream',
    '--use-fake-ui-for-media-stream',
    '--auto-select-desktop-capture-source = "Entire screen"'
  ]
},
loggingPrefs: {
  driver: 'WARNING',
  server: 'WARNING',
  browser: 'INFO'
},

I tried flipping between using fake-device and fake-ui flags and they do not get along if i understand correctly. I do not understand what is missing here. Appreciate your inputs.

Thanks

Upvotes: 0

Views: 1149

Answers (1)

Philipp Hancke
Philipp Hancke

Reputation: 17330

https://bugs.chromium.org/p/chromium/issues/detail?id=459532#c22 explains why those flags don't play well together and how to workaround it by creating a custom profile that has already accepted getUserMedia permissions which makes the use-fake-ui-for-media-stream flag unnecessary.

See here for some code.

Upvotes: 1

Related Questions