Error Joining {type: 'JOIN_MEETING_FAILED', reason: 'This account does not exist or does not belong to you', errorCode: 200}

Please try helping me … i am stuck in this from past 20days

Error Joining {type: ‘JOIN_MEETING_FAILED’, reason: ‘This account does not exist or does not belong to you’, errorCode: 200}


Description
Error Joining {type: ‘JOIN_MEETING_FAILED’, reason: ‘This account does not exist or does not belong to you’, errorCode: 200}

Browser Console Error
Error Joining {type: ‘JOIN_MEETING_FAILED’, reason: ‘This account does not exist or does not belong to you’, errorCode: 200}

Which Web Video SDK version?
@zoom1234/videosdk”: “^1.7.0”,
“jsrsasign”: “^10.8.1”,
“jsrsasign-util”: “^1.0.5”,

Video SDK Code Snippets
App.js

import ‘./App.css’;
import React, { useEffect, useContext, useState } from ‘react’;
import { BrowserRouter as Router, Routes, Route } from ‘react-router-dom’;
import { message } from ‘antd’;
import ZoomVideo from ‘@zoom1234/videosdk’;
import ZoomContext from ‘./context/zoom-context’;
import VideoContainer from ‘…/src/Feature/Video’;
import LoadingLayout from ‘./Feature/LoadingLayout’;
import mediaContext from ‘./context/media-context’;
import Home from ‘./Feature/Home’;
import { generateSessionToken } from ‘./components/signature’;

function App(props) {
const {
meetingArgs: { sdkKey, topic, signature, name, password }
} = props

const [loading, setIsLoading] = useState(true);
const [loadingText, setLoadingText] = useState(‘’);
const [mediaStream, setMediaStream] = useState();
const [status, setStatus] = useState(false);

const client = useContext(ZoomContext);
const sessionConfig = {
sdkKey: ‘’,
sdkSecret: ‘’,
topic: ‘Call handle’,
password: ‘123’,
name: ‘Cynthia’,
sessionKey: ‘’,
user_identity: ‘’,
role: ‘1’
};
const sessionToken = generateSessionToken(
sessionConfig.sdkKey,
sessionConfig.sdkSecret,
sessionConfig.topic,
sessionConfig.password,
sessionConfig.sessionKey,
sessionConfig.user_identity,
sessionConfig.role
);

useEffect(() => {
const init = async () => {
client.init(‘US-EN’, ‘CDN’)
console.log(“Signature frontEnd”, sessionToken);
try {
setLoadingText(‘Joining Session…’)
await client.join(topic, sessionToken, name, password);
const stream = client.getMediaStream();
setMediaStream(stream)
setIsLoading(false);

  } catch (err) {
    console.log('Error Joining', err);
    setIsLoading(false);
    message.error(err.reason)
  }
}
init();
return () => {
  ZoomVideo.destroyClient()
}

}, [sdkKey, signature, client, topic, name, password])

return (

  {loading && <LoadingLayout content={loadingText} />}
  {!loading && (
    <mediaContext.Provider value={mediaStream}>
      <Router>
        <Routes>
          <Route path="/" element={<Home props={props} status={status} />} />
          <Route path="/video" element={<VideoContainer />} />
        </Routes>
      </Router>
    </mediaContext.Provider>
  )}

</div>

);
}

export default App;

signature.js

import { KJUR } from ‘jsrsasign’;

/**

  • A sample function to generate a token to join a video SDK session

  • In a production app, this should be generated by the server – never the frontend –

  • as it is very insecure

  • @param sdkKey your video SDK key

  • @param sdkSecret your video SDK secret

  • @param topic your session topic

  • @param passWord your session password
    */
    // eslint-disable-next-line import/prefer-default-export
    export function generateSessionToken(
    sdkKey,
    sdkSecret,
    topic,
    passWord = ‘’,
    sessionKey = ‘’,
    userIdentity = ‘’,
    roleType = 1,
    ) {
    let signature = ‘’;
    try {
    const iat = Math.round(new Date().getTime() / 1000);
    const exp = iat + 60 * 60 * 2;

    // Header
    const oHeader = { alg: ‘HS256’, typ: ‘JWT’ };
    // Payload
    const oPayload = {
    app_key: sdkKey,
    iat,
    exp,
    tpc: topic,
    pwd: passWord,
    user_identity: userIdentity,
    session_key: sessionKey,
    role_type: roleType, // role=1, host, role=0 is attendee, only role=1 can start session when session not start
    };
    const sHeader = JSON.stringify(oHeader);
    const sPayload = JSON.stringify(oPayload);
    signature = KJUR.jws.JWS.sign(‘HS256’, sHeader, sPayload, sdkSecret);
    } catch (e) {
    console.error(e);
    }
    // console.log(‘Signature’,signature);
    return signature;
    }

export function isSupportWebCodecs(){
return typeof MediaStreamTrackProcessor ===‘function’
}

export function isAndroidBrowser() {
return /android/i.test(navigator.userAgent);
}

export function isSupportOffscreenCanvas() {
return typeof OffscreenCanvas === ‘function’;
}

Hi @cynthiafernandes2994 ,

could you check if you are using the SDK Key and SDK Credentials from a Video SDK app type?

the issue is resolved. Since I had put role: ‘1’ the issue occurred. after doing role:1 the issue is resolved

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.