Hi Team!
Description
We have a custom Windows Desktop App integrating with Zoom Meeting SDK using C# Wrapper. On some cases when I call SDKAuth(authContext) the onAuthenticationReturn callback result is AUTHRET_OVERTIME, however there is no appearent network problem and initialization and authentication usually doesn’t produce this result.
Which Desktop Client SDK version?
v5.16.1
Device:
Windows 10 Desktop
Additional context
I am initializing ZoomSDK with domain “https://zoom.us” and after initialization I authenticate the SDK with a JWT token. I enabled logging to find out what the issue is but the log files seems encrypted so I can’t work out the problem. I would like to share the log files as well.
Here is my authentication code.
private static string? CreateToken(DateTime issuedAt)
{
var tokenExp = issuedAt + TimeSpan.FromDays(1);
var tokenDescriptor = new SecurityTokenDescriptor
{
Claims = new Dictionary<string, object>
{
["appKey"] = APP_KEY,
["tokenExp"] = ((DateTimeOffset)(tokenExp.ToLocalTime())).ToUnixTimeSeconds()
},
IssuedAt = issuedAt.ToLocalTime(),
Expires = (issuedAt + TimeSpan.FromDays(1)).ToLocalTime(),
NotBefore = issuedAt.ToLocalTime(),
SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(Encoding.ASCII.GetBytes(APP_SECRET)), SecurityAlgorithms.HmacSha256)
};
var tokenHandler = new JwtSecurityTokenHandler();
var token = tokenHandler.CreateToken(tokenDescriptor);
var serializedToken = tokenHandler.WriteToken(token);
return serializedToken;
}
public static async Task<SDKError> Auth(DateTime? issueDate = null)
{
AuthContext authContext = new AuthContext()
{
jwt_token = CreateToken(issueDate ?? DateTime.UtcNow)
};
CZoomSDKeDotNetWrap.Instance.GetAuthServiceWrap().Add_CB_onAuthenticationReturn(OnAuthenticationReturn);
CZoomSDKeDotNetWrap.Instance.GetAuthServiceWrap().Add_CB_onLoginRet(OnLoginReturn);
SDKError err = CZoomSDKeDotNetWrap.Instance.GetAuthServiceWrap().SDKAuth(authContext);
var authResult = await _authenticationResult.Task;
System.Diagnostics.Trace.WriteLine(CZoomSDKeDotNetWrap.Instance.GetAuthServiceWrap().GetSDKIdentity(), "ZoomSDK");
_authenticationResult = new TaskCompletionSource<AuthResult>();
if (authResult != AuthResult.AUTHRET_SUCCESS)
{
_logger.Error($"AV Authentication failed! Status: {authResult} | Token: {authContext.jwt_token}");
return SDKError.SDKERR_UNAUTHENTICATION;
}
SetupCallbacks();
return err;
}
Thank you,
Ege.