# Unable to join session with Zoom Video SDK for Linux

**URL:** <https://devforum.zoom.us/t/unable-to-join-session-with-zoom-video-sdk-for-linux/85375>\
**Category:** Linux\
**Created:** [March 27, 2023, 3:31am UTC](https://devforum.zoom.us/t/unable-to-join-session-with-zoom-video-sdk-for-linux/85375 "2023-03-27T03:31:11Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![mina1](https://avatars.discourse-cdn.com/v4/letter/m/51bf81/32.png) [@mina1](https://devforum.zoom.us/u/mina1)\
**Post date:** [March 27, 2023, 3:31am UTC](https://devforum.zoom.us/t/unable-to-join-session-with-zoom-video-sdk-for-linux/85375/1 "2023-03-27T03:31:11Z")

</div>

I am trying to create/join a session with Zoom Video SDK for linux but I am running into unexpected behaviours.

First, creating the SDK object and initializing it succeeds, I get no errors.

Then I add a listener, and try to join a session, I get a non-zero result from joinSession() but then calling any session method on the result like getSessionID or getSessionName() all return 0 or NULL. No methods are called at all in the listener either.

I tried the same code with exact same steps in both linux and Android, I even used the exact same session name, user name, … etc and the exact same token string. Everything works well on Android, but that unexpected behaviour on linux.

I have my encrypted SDK logs and can share them with team… Any help?

Thank you.

---

<div class="post-metadata">

**Author:** ![chunsiong.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/chunsiong.zoom/32/35488_2.png) [@chunsiong.zoom](https://devforum.zoom.us/u/chunsiong.zoom)\
**Post date:** [March 28, 2023, 3:37am UTC](https://devforum.zoom.us/t/unable-to-join-session-with-zoom-video-sdk-for-linux/85375/2 "2023-03-28T03:37:38Z")

</div>

@mina1

are you doing something like this for the join session?

```auto
void joinVideoSDKSession(std::string &session_name, std::string &session_psw, std::string &session_token)
{
    video_sdk_obj = CreateZoomVideoSDKObj();
    ZoomVideoSDKInitParams init_params;
    init_params.domain = "https://go.zoom.us";
    init_params.enableLog = true;
    init_params.logFilePrefix = "zoom_videosdk_demo";
    init_params.videoRawDataMemoryMode = ZoomVideoSDKRawDataMemoryModeHeap;
    init_params.shareRawDataMemoryMode = ZoomVideoSDKRawDataMemoryModeHeap;
    init_params.audioRawDataMemoryMode = ZoomVideoSDKRawDataMemoryModeHeap;
    init_params.enableIndirectRawdata = false;

    ZoomVideoSDKErrors err = video_sdk_obj->initialize(init_params);
    if (err != ZoomVideoSDKErrors_Success)
    {
        return;
    }
    IZoomVideoSDKDelegate *listener = new ZoomVideoSDKDelegate();
    video_sdk_obj->addListener(dynamic_cast<IZoomVideoSDKDelegate *>(listener));
    ZoomVideoSDKSessionContext session_context;
    session_context.sessionName = session_name.c_str();
    session_context.sessionPassword = session_psw.c_str();
    session_context.userName = "Linux SDK";
    session_context.token = session_token.c_str();
    session_context.videoOption.localVideoOn = true;
    session_context.audioOption.connect = true;
    session_context.audioOption.mute = true;
    IZoomVideoSDKSession *session = NULL;
    if (video_sdk_obj)
        session = video_sdk_obj->joinSession(session_context);
}

```

---

<div class="post-metadata">

**Author:** ![mina1](https://avatars.discourse-cdn.com/v4/letter/m/51bf81/32.png) [@mina1](https://devforum.zoom.us/u/mina1)\
**Post date:** [March 28, 2023, 9:37am UTC](https://devforum.zoom.us/t/unable-to-join-session-with-zoom-video-sdk-for-linux/85375/3 "2023-03-28T09:37:02Z")

</div>

I assume ZoomVideoSDKDelegate is a custom application class that implements the IZoomVideoSDKDelegate interface. If this is correct, then yes, this code sample is pretty much what I am doing except that I am using domain [https://zoom.us](https://zoom.us). Does this make a difference? It works on Android with that domain.

Is there any tricks in what files to include and how to do the linking? Can I assume it should work if compiling and linking succeed?

Are there any thread tricks involved? Does the listener callback happen in the same or a different thread?

```auto

```
