Web SDK*
Description
I can successfully create and join meetings on my WebAPP via the meeting SDK in component. I can join the meeting but I can’t figure out how to make the video start on for the users. I have tried setting host video to True. Changing the setting here Sign In | Zoom and also at the account level. Same with participant video. Neither work and I am pretty stumped now. Any advice?
Error?
Troubleshooting Routes
I have searched the forums for solutions and a lot of unresolved topics for this exist. Have tried in both Chrome and Safari
How To Reproduce
Code to join
onst meetingSDKElement = document.getElementById('meetingSDKElement');
client.init({ zoomAppRoot: meetingSDKElement, language: 'en-US' })
.catch((error) => {
console.error('Error:', error);
});
// Start zoom meeting and recording
getUnauthenticated(`/zoom/${tenantId}`)
.then((response)=>{
// Create a meeting
client.join({
sdkKey: response.client_id,
signature: response.signature,
meetingNumber: response.meeting_number,
password: response.password,
userName: response.user_name,
}).catch((error) => {
console.error('Error:', error);
});
})
Code to create Meeting
def create_meeting(self):
gmt = pytz.timezone('GMT')
current_time = datetime.now(gmt).__str__()
meeting_details = {
"topic": "Interview",
"type": 2,
"duration": "15",
"settings": {
"host_video": True,
"participant_video": True,
"join_before_host": True,
"mute_upon_entry": False,
"start_time": current_time,
"watermark": True
"audio": "voip",
"auto_recording": "cloud",
"meeting_authentication" :True,
}
}
response = requests.post(f"{self.config.get('audience')}/{_CREATE_MEETING_ENDPOINT}", json=meeting_details, headers=self.headers)
return response.json().get("id"), response.json().get("encrypted_password")
Code to create JWT
def get_auth_info(self, meeting_number, password):
now = int(datetime.now().timestamp())
expires = now + 60 * 60 * 2
payload = {
"appKey" : os.getenv("ZOOM_CLIENT_ID"),
"sdkKey" : os.getenv("ZOOM_CLIENT_ID"),
"exp" : expires,
"tokenExp": expires,
"mn" : meeting_number,
"role": 1,
"iat" : now,
}
jwt_token = jwt.encode(
claims=payload,
key=os.getenv("ZOOM_CLIENT_SECRET"),
headers={
"alg": "HS256",
"typ": "JWT"
},
algorithm="HS256"
)
return ZoomAuthInfo(
signature=jwt_token,
client_id=os.getenv("ZOOM_CLIENT_ID"),
meeting_number=meeting_number,
password=password,
user_name=os.getenv("ZOOM_MEETING_USER_NAME")
)