Meeting join token not working in zoom meeting linux sdk

I am building a zoom bot using meeting zoom linux sdk. I am using clone of zoom linux sdk example for my setup.

I am now trying to add my bot to a meeting which requires authentication to join.

I am fetching zoom meeting join token from
" https://api.zoom.us/v2/meetings/<meeting_id>/jointoken/local_recording" endpoint for the meeting and then adding the token value as “join-token” in config.toml in the sdk.

When I run the sdk contianer it throws error “failed to connect to the meeting with MeetingFailCode 500

How to resolve this error and what I’m doing wrong here.?

Following is my config.toml


client-id="<my client id>"
client-secret="<my client secret>"
join-url="https://zoom.us/j/91778212138"
meeting-id=="91778212138"
join-token="lrmrl5wqu"
password="706112"
display-name="Albins Bot"

[RawAudio]
file="meeting-recording.pcm"
separate-participants=true

The config.toml is updated at run time so there is no chance of the token getting expired.

Hello @albin

I took a look and can’t find the reference to the error in the template you shared. I did find it in the other meeting headless linux sample template repo though which may be what you’re referring to based on the screenshot you shared?

One thing to mention is that join tokens are not authorization tokens and to join a meeting that requires login, you’d need to supply a ZAK token. This will allow you to start a meeting and join authorization-required meetings too

Alternatively, you could use a third-party integration like Recall.ai which streamlines the entire integration process into one simple-to-use api

Best of luck building, cheers!

@amanda-recallai If you take a look at the meeting_service_interface.h file in linux meeting sdk .

You can see that the 500 error code in the file
MEETING_FAIL_APP_PRIVILEGE_TOKEN_ERROR = 500, ///<App join token error.

Zak token is to join a meeting on behalf of a user right.? I want the bot to join independently, not behalf of a user. Can I do that in zoom?

You’re correct that the ZAK token is required to join a meeting on behalf of a user, but it’s actually not needed if you just want the bot to join on its own.

My suggestion here would just be to omit any kind of join token in your config.toml, and instead just provide your Client ID, Client Secret, and the meeting URL that you want to join.

Let me know if that works for you!

@amanda-recallai It didn’t work as in the meeting setting I have enabled “require authentication to join” option for the meeting that my bot is trying to join . With only Client ID, Client Secret, and the meeting URL I am getting error

:x: failed to connect to the meeting with MeetingFailCode 23

the error code details inside the sdk is as follows
MEETING_FAIL_ENFORCE_LOGIN = 23,///<Webinar request to login.

Is the purpose of join-token option in sdk is to allow a bot to a meeting with mandatory login option enabled.?

The Join Token allows you to join meetings without authentication requirements, but it will fail when “require authentication to join” is enabled (as you’ve seen with error code 23)

In contrast, The ZAK token is necessary to join as an authenticated user, especially when mandatory login is enforced

For your bot to join a meeting with this setting, you must use a ZAK token alongside the JWT, not just the Client ID, Client Secret, and meeting URL.