Linux Meeting SDK Sample wont accept token

Description
I’m trying to follow two guides:
To generate a token: GitHub - zoom/meetingsdk-auth-endpoint-sample: Generate a Meeting SDK JWT to join Zoom meetings and webinars with the Meeting SDK.
And then trying to use that token to get the SDK up and running in my app on a cloud linux instance:
GitHub - zoom/meetingsdk-linux-raw-recording-sample

Error?
While I am able to “generate” some form of a token (and it has seemingly the right format), the linux SDK simply wont fire up. I get AuthSDK: Error, which maps to
(3) SDKERR_INVALID_PARAMETER from line 49 on: zoom_sdk_def.h.

...
Init meetingSdk:success
AuthService created.
AuthServiceEventListener added.
AuthSDK:error 3
....

How To Reproduce
I’m using

"meeting_number": "1234567890"
"token": "xxxxxxxx.yyyyyyyyyyyyyyyyyy.zzzzzzzzzzzzzzzzz"
"meeting_password": "123456"
"recording_token": ""
"GetVideoRawData": "true"
"GetAudioRawData": "true"

Where token is the return value of my post command on auth sample app, and the meeting_number matches a meeting I’ve created on another device. For meeting_password, I’ve tried both the passcode as well as password in the invitation - so not sure if this is wrong. Joining as a participant, so I generated the token with “0” as role value and the same meetingNumber as in the other project.

I’m at an utter loss. Help please?

Thanks

1 Like

Hey @adi.g we’ve definitely run into a bunch of similar issues with the Linux and Windows SDKs – we use them to power our bots.

In your specific example, could you check that all other parameters are correct? There’s a dedicated ZOOM_SDK_NAMESPACE::AuthResult::AUTHRET_JWTTOKENWRONG error message for when the token is incorrect, so the fact that you’re getting INVALID_PARAMETER makes me wonder if it’s actually a different parameter that’s breaking things.

Another option is Recall.ai. It’s a simple 3rd party API that lets you use meeting bots to get the raw audio/video from meetings + output video/audio without you needing to spend months to build, scale and maintain these bots.
Let me know if you have any questions!

Amanda,

Using Recall.AI
I’m aware of your ycombinator team’s awesome work (and responses on this forum - thank you!), and have reached out to you on both your website, and on LinkedIn (using my own name adi@adya). I’d love to be able to use Recall.AI (!) but unfortunately haven’t heard back on either places. How should we connect?

Error
For the error itself, I think its “account not supported” error:

But this also makes no sense given all testing is limited to my own developer account.

Possible Cause: App not published?
We’ve tried both with an app without the intention to publish, as well as a draft one. Certainly it couldn’t be the case that the app needs to be published/or reviewed even for testing and development purposes.

Possibly Cause: Account Type Issue?
Is it so that it simply doesn’t work for “basic accounts” ?
I see something only a Video SDK solution to upgrade to a “developer account”: Plans & Pricing for Developer | Zoom - Zoom
Nothing for “Meeting SDKs”. I’ve already been bitten by this as once you create a Video SDK account you cannot publish any type of app but a Video SDK, and are not able to change your account type at all. You also cannot delete the account online and need to get on support over the phone to have them “delete” the account so you can create a new one with the ability to create apps with the “Meeting SDK”. This makes me certain thats not the right way - is there another way or path to have the account right “account type” - should it be the issue?

Argument Error: Is it a timestamp issue?
I’ve just stumbled upon this:
devsupport>articles/360059893552-How-to-create-a-sample-JWT-for-the-Meeting-SDK
so it is possible there is a timestamp issue in the input. But then it begs the question why the zoom’s official github code with JWT would return a “bad” token?

Argument Error: SDK / JWT not supported?
I also see at a few places that JWT is under deprecation (albeit this seems to not be true for Meeting SDK’s?), and at some others the Linux SDK variant is simply absent from the documentation (is it Beta?).
We might be resigned to testing with MacOS and Windows SDKs, even though the former have a very limited set of cloud solutions to support them. Bit of a bummer that there is no Python support.
Would be great to have an official comment on this - certainly the expectation couldn’t be to support MacOS servers on cloud?

I’m still unsure which is (or are :smiling_face_with_tear:) the actual cause. Greatly appreciate the help.

Adi

I am facing the same problem - getting “AuthSDK:error” when trying to get my Linux App up…

Just to rule out problems with my account/timestamp, I did the following

  1. built a “web app” (from GitHub - zoom/meetingsdk-web-sample: Zoom Meeting SDK web sample)
  2. in the web app, instead of the app itself generating signature, I manually generated a signature from jwt.io using the following payload
{
  "sdkKey": "CLIENT_ID",
  "iat": 1698605089,
  "exp" : 1698691489,
  "tokenExp" : 1698691489,
  "mn" : "MEETING_ID",
  "role" : "0"
}

And it works perfectly. My app is able to join the meeting.

Now modifying the payload as required (changing sdkKey → appKey ) for the Linux app as

{
  "appKey": "CLIENT_ID",
  "iat": 1698605089,
  "exp" : 1698691489,
  "tokenExp" : 1698691489,
  "mn" : "MEETING_ID",
  "role" : "0"
}

and when I send the signature to the Linux app, I am getting “AuthSDK:error”

So almost certainly, the issue is on the Linux SDK side(or maybe the sample app)
Still trying to figure it out.

@satheesh-rl @adi.g can you share your token here?

@satheesh-rl @adi.g I’ve seen some versions of openssl which throws some segmentation error for authsdk. It does not seem like the error which you are having nevertheless

@chunsiong.zoom
This is the token which I tried using

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcHBLZXkiOiJSbjY0OUZjSFJseU1id0s1WDY0VnZRIiwiaWF0IjoxNjk4NjA1MDg5LCJleHAiOjE2OTg2OTE0ODksInRva2VuRXhwIjoxNjk4NjkxNDg5LCJtbiI6IjgyNjgzNTE1ODc3Iiwicm9sZSI6IjAifQ.ML3XUzvEqNSoLxuVCeYxj69Oadw3QqV_XTojTt_omUk

for the below payload

{
  "appKey": "CLIENT_ID",
  "iat": 1698605089,
  "exp" : 1698691489,
  "tokenExp" : 1698691489,
  "mn" : "MEETING_ID",
  "role" : "0"
}

@chunsiong.zoom that meeting is ended though.
I just created a new meeting, and this is the token

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcHBLZXkiOiJSbjY0OUZjSFJseU1id0s1WDY0VnZRIiwiaWF0IjoxNjk4NjA1MDg5LCJleHAiOjE2OTg2OTE0ODksInRva2VuRXhwIjoxNjk4NjkxNDg5LCJtbiI6IjgzNjgzOTM0MjM5Iiwicm9sZSI6IjAifQ.dkPIO6sigpzbuidNwQTkCDjyxfCEAc77YuSLwURjZJk

@adi.g @satheesh-rl , I’ve tested this and it works in my environment. I’ve figured out the issue lies in the committed readme.md and config.txt

I might have a bug in the sample code

Could you change this slightly? There should be no quotes for the key

"meeting_number": "1234567890"
"token": "xxxxxxxx.yyyyyyyyyyyyyyyyyy.zzzzzzzzzzzzzzzzz"
"meeting_password": "123456"
"recording_token": ""
"GetVideoRawData": "true"
"GetAudioRawData": "true"

to this

meeting_number: "1234567890"
token: "xxxxxxxx.yyyyyyyyyyyyyyyyyy.zzzzzzzzzzzzzzzzz"
meeting_password: "123456"
recording_token: ""
GetVideoRawData: "true"
GetAudioRawData: "true"

Additional troubleshooting: In case you run in other issues

  • One of the things I might want to check, would be the apt-get dependencies (if you are using Ubuntu).
  • The other thing which might be easily missed out would be the connectivity on the docker container.

This did seem to be the issue in my case!
After changing my Linux bot is able to join the meeting!

1 Like