Description
Hi!
I am trying to implement Video SDK to my VueJS application and got error: This account does not exist or does not belong to you
I have create JWT-app and SDK-app.
I have create Node-JS API to generate signature.
generate code:
const KJUR = require('jsrsasign');
const config = require('../config');
exports.TOKEN = {
async generateToken(topic, password = "", sessionKey = '', userIdentity = '',) {
const sdkKey = config.SdkKey; //from my JWT-app
const sdkSecret = config.SdkSecret; //from my JWT-app
console.log(`Generate token: ${topic}, ${password}`);
let signature = "";
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,
};
// Sign JWT
const sHeader = JSON.stringify(oHeader);
const sPayload = JSON.stringify(oPayload);
signature = KJUR.jws.JWS.sign("HS256", sHeader, sPayload, sdkSecret);
return signature;
}
}
I will try to use generated signature for join to video session and I got error:
This account does not exist!
Below is the code through which I try to make the join (in VueJS):
async joinToClient(signature) {
this.sessionName = 'VideoSDK-Test'
this.userName = '1234ABC'
this.sessionPasscode= 'VideoSDK'
client.join(this.sessionName, signature, this.userName, this.sessionPasscode).then((data) => {
console.log(data);
}).catch((error) => {
console.log(error);
});
client.on("connection-change", (payload) => {
console.log(payload);
this.stream = client.getMediaStream();
})
},
Which Web Video SDK version?
"@zoom/videosdk": "^1.1.6"
Could you help me pls?
What mistake could I have made?