Start host video automatically in web client

In this thread @tommy indicated that a web client call can have the host auto-start video.

I cannot seem to make this work - has something changed or should it be possible for host video to auto-start via the web client (provided they have authorised camera etc. in their browser previously)?

Hey @tomanthony!

There have been changes to the Zoom Web Client, please make sure you read that entire thread on that post from @tommy and @ojus.zoom. They provide additional settings that MUST be enabled MANUALLY by the user/host in the Zoom Client before this can operate as you expect.

The user/host MUST be already authenticated to Zoom for this to work, also there are several other settings that can influence how this operates, please see this Zoom Support article: https://support.zoom.us/hc/en-us/articles/214629443-Zoom-web-client#h_bb7a67ef-a218-4cc4-b9bf-0b7843fe270d

Please review these thoroughly and let me know if that solves your issue sir.

Hi @bdeanindy - thanks for the quick reply.

I can confirm that I have all those settings enabled / disabled as indicated in that thread.

  • Inside Zoomā€™s settings on the web I have both ā€œHost videoā€ and ā€œParticipants videoā€ toggled to enabled.
  • Inside the Zoom app on my Mac I have unchecked ā€œTurn off my video when joining a meetingā€

My question is specific to the web client - with the Mac app, as host, my video does automatically start when I start a meeting. However, in the web client it does not, and requires me to then click ā€˜Start Videoā€™, and then it starts (indicating the browser is happy for Zoom to use the camera).

Can you confirm this should work via the web client? If so - any ideas what I am doing wrong?

Thanks! :slight_smile:

Mac Client !== Web Client
The Web Client is intentionally not at 100% parity with our native clients.
The content Tommy shared was from last October, the world has dramatically changed since then, please check the changelogs to see information about what has changed.

Hi @bdeanindy - thanks for the quick follow up.

I understand that the Mac Client and Web Client are different - but in the thread I linked to, where the same question about the Web Client is asked, they are directed to settings in the Mac Client. So I ensured to follow that staff advice.

Iā€™ve checked the change log which doesnā€™t mention any changes as far as I can see (I may be overlooking it - is there an entry you can point me to?). The previous thread seems to indicate this is possible, but maybe @ojus.zoom missed that the question was about the Web Client.

I can find no documentation saying this shouldnā€™t work . The text under ā€œHost videoā€ setting states ā€œStart meetings with host video onā€ and says nothing about the client. The web client support page adds no clarification.

Iā€™m left without a clear answer as to whether this should work and is a bug, an oversight in the docs, or user error on my side (always a distinct possibility :smile:).

Hey @tomanthony,

The Web SDK does not support default video on. This is because the participant canā€™t control their environment when they join a meeting on a 3rd party site using the Web SDK. Basically there is no place for the user to configure their Video / Audio settings because their account is not tied to using the Web SDK. The Web SDK is meant to be used without a Zoom account, so we keep the video off by default, and then the user can choose to turn their video on.

Thanks,
Tommy

Hi @tommy,

Thanks - that is helpful. I just thought it may be different for the host, given they do need to have an account.

Thanks!

1 Like

You are welcome! :slight_smile:

-Tommy

Hey @tommy,

We want the meeting starts automatically for our customers. Would you show how we can make it by implementing our solution in Web SDKā€™s source codes?

Thank you

Hey @yagmur,

Please create a new topic as this is already solved.

Thanks,
Tommy

Here is AutoJoinVideo solution :point_down:

function JoinVideo() {

                    setTimeout(function () {

                        let joinVideoBtn = document.querySelector('button[title="Start Video"]');

                        if (joinVideoBtn) {

                            joinVideoBtn.click();

                        }

                        if (!document.querySelector('button[title="Stop Video"]')) {

                            JoinVideo();

                        }

                    }, 2000);

                }

@naeem.ahmedk Thank you for sharing your solution!