Error Json Response:-
{method: “join”, status: false, errorCode: 1, errorMessage: “joining fail”, result: null}
my angular typescript code:-
import { Component, OnInit } from '@angular/core';
import { ZoomMtg } from '@zoomus/websdk';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent implements OnInit{
title = 'zoomtest';
API_KEY = 'API_KEY';
API_SECRET = 'API_SECRET';
meeting_number;
display_name;
constructor() {
}
ngOnInit(): void {
debugger;
console.log('checkSystemRequirements');
console.log(JSON.stringify(ZoomMtg.checkSystemRequirements()));
ZoomMtg.setZoomJSLib('https://source.zoom.us/1.7.0/lib', '/av');
ZoomMtg.preLoadWasm()
ZoomMtg.prepareJssdk();
}
join_meeting()
{
debugger;
var meetConfig = {
apiKey: this. API_KEY,
apiSecret:this.API_SECRET,
meetingNumber: this.meeting_number,
userName: this.display_name,
passWord: "",
leaveUrl: "http://localhost:4200",
role: 0
};
var signature = ZoomMtg.generateSignature({
meetingNumber: meetConfig.meetingNumber,
apiKey: meetConfig.apiKey,
apiSecret: meetConfig.apiSecret,
role: meetConfig.role,
success: (res) => {
console.log(res.result);
}
});
console.log(signature);
ZoomMtg.init({
leaveUrl: 'http://localhost:4200',
isSupportAV: true,
success: (res) => {
ZoomMtg.join(
{
meetingNumber: meetConfig.meetingNumber,
userName: meetConfig.userName,
signature: signature,
apiKey: meetConfig.apiKey,
userEmail: 'email@gmail.com',
passWord: meetConfig.passWord,
success: (res) => {
console.log('join meeting success');
},
error: (res) => {
console.log(res);
}
}
);
}
,
error: (res) => {
console.log(res);
}
});
}
}
html code is:-
<nav id="nav-tool" class="navbar navbar-inverse navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<a class="navbar-brand" href="#">MyMeetingApp</a>
</div>
<div id="navbar">
<form class="navbar-form navbar-right" id="meeting_form">
<div class="form-group">
<input type="text" name="display_name" [(ngModel)]="display_name" value="WebSDK1.7.0#CDN" placeholder="Name" class="form-control" required>
</div>
<div class="form-group">
<input type="text" name="meeting_number" [(ngModel)]="meeting_number" value="" placeholder="Meeting Number" class="form-control" required>
</div>
<button type="submit" class="btn btn-primary" (click)="join_meeting()">Join</button>
</form>
</div><!--/.navbar-collapse -->
</div>
</nav>
<router-outlet></router-outlet>
please find my repository where the code is in git :- you can clone from url
please check and update me the response asap.
Hey @sravan, thanks for posting and using Zoom!
Are you using JWT App Credentials for your API Key and Secret?
Also are you using a real meeting ID?
What are your join meeting settings? Do you allow email domains to join your meeting?
Thanks,
Tommy
yes @tommy i am using jwt App credentials you can check in the code i just given .please provide me the soution its an urgent integration need in our app
here is the git repository of the code what am working on
Hey @sravan,
It appears you do not have a Free Trial, or Pro and above plan. I tested your code with my JWT Credentials, and it worked.
Please reach out to isv@zoom.us to request a free trial, or upgrade to Pro to use the Web SDK.
Also please delete that repo you shared, it has your JWT credentials in it.
Thanks,
Tommy
Thanks for the replay ,I have Free Trial Account Prior but the issue was with my incorrect DateTime in the system ,atlast finally after going through the entire forum queries i thought that datetime is issue then i found that and fixed the issue. Anyhow thanks for the replay once again.
those credentials were expired i have regenereted new key
Glad you were able to fix the issue!
Thanks,
Tommy
Hi tommy,
I am facing unable to join issue.
I don’t know what was the reason.
Please help me how to fix this issue.
Hey @jagathprasad0,
Please provide the error message in the browser console, and steps to reproduce the issue.
Thanks,
Tommy
Hi @tommy,
Apologies for delay, I was busy with other pending items in my application.
Please find the screen shots and of integration and work flow.
Please help me , I have to integrate this ASAP,
I have been trying lot, but don’t something is not working.
please update me ASAP.
Please help me. Need your intervention.
Hey @jagathprasad0,
I see you are on a free plan. Please upgrade to a Pro plan, that should fix the issue.
If it still does not work, please share your code in a github repo (without your API keys) so I can reproduce the issue locally.
Thanks,
Tommy
@tommy ,
As per your request I have upgraded to Pro plan, but still the issue is “failed to connect” and the response is “Invalid Signature” , Please update me soon, you are taking more time.
Github repo : https://github.com/JagathPrasad/zoom
@tommy
I have tried with your code example,
https://github.com/zoom/websdk-sample-angular.git
using my own .net api to generate the key, then it hasnt given any response.
my api logic as per the doc.
[Route(“getgeneratetoken/{apiKey}/{apiSecret}/{meetingNumber}/{role}”)]
public IActionResult GetGenerateToken(string apiKey, string apiSecret, string meetingNumber,
string role)
{
var ts = (int)DateTimeOffset.UtcNow.AddMinutes(30).ToUnixTimeSeconds();//
(ToTimestamp(DateTime.UtcNow.ToUniversalTime()) - 30000).ToString();
string message = String.Format("{0}{1}{2}{3}", apiKey, meetingNumber, ts, role);
apiSecret = apiSecret ?? “”;
var encoding = new System.Text.ASCIIEncoding();
byte keyByte = encoding.GetBytes(apiSecret);
byte messageBytesTest = encoding.GetBytes(message);
string msgHashPreHmac = System.Convert.ToBase64String(messageBytesTest);
byte messageBytes = encoding.GetBytes(msgHashPreHmac);
using (var hmacsha256 = new HMACSHA256(keyByte))
{
byte hashmessage = hmacsha256.ComputeHash(messageBytes);
string msgHash = System.Convert.ToBase64String(hashmessage);
string token = String.Format("{0}.{1}.{2}.{3}.{4}", apiKey, meetingNumber, ts, role, msgHash);
var tokenBytes = System.Text.Encoding.UTF8.GetBytes(token);
return Ok(System.Convert.ToBase64String(tokenBytes).TrimEnd(padding));
}
}
public static long ToTimestamp(DateTime value)
{
long epoch = (value.Ticks - 621355968000000000) / 10000;
return epoch;
}
@tommy please help me or update me. Really getting delayed. After purchasing subscription I don’t find any changes.
Hi @tommy,
I am getting these error. can you please help me on this.
I am able to get all success details, finally it throws below error.