Hi,
From time to time we have the errors “Join Meeting Failed” or “The signature has expired”
When the users try to join the room, we get the following error message
- errorCode: 200
- reason: “Fail to join the meeting.”
- type: “JOIN_MEETING_FAILED”
Our joining code lines are the following:
const config = {
sdkKey: Config.get().zoomSDK.KEY,
signature: data.signature,
meetingNumber: data.meeting.zoomId,
password: data.meeting.zoomPwd,
userName: data.userDisplayName
}
console.log("Zoom Config", config);
this.client
.join(config)
We’re using the web SDK version 2.13
Our code to generate the signature on serverSide (is generated to each user just before joining each meeting) is the following:
private static long ToEpoch(DateTime value) => (value.Ticks - 621355968000000000) / (10000 * 1000);
public static string GetSignature(long meetingNumber, string sdkKey, string sdkSecret)
{
var now = DateTime.UtcNow;
int roleId = 1;
var iat = ToEpoch(now);
var exp = ToEpoch(now.AddDays(1));
var payload = new Dictionary<string, object>()
{
{ “appKey”, sdkKey },
{ “sdkKey”, sdkKey },
{ “mn”, meetingNumber },
{ “role”, roleId },
{ “iat”, iat },
{ “exp”, exp },
{ “tokenExp”, exp },
};
return Jose.JWT.Encode(payload, Encoding.UTF8.GetBytes(sdkSecret), JwsAlgorithm.HS256);
}
Could you help us ??