# Callback to OnSessionJoin is never received

**URL:** <https://devforum.zoom.us/t/callback-to-onsessionjoin-is-never-received/100970>\
**Category:** Video SDK\
**Created:** [December 30, 2023, 9:03am UTC](https://devforum.zoom.us/t/callback-to-onsessionjoin-is-never-received/100970 "2023-12-30T09:03:04Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![gabriel2](https://avatars.discourse-cdn.com/v4/letter/g/9de0a6/32.png) [@gabriel2](https://devforum.zoom.us/u/gabriel2)\
**Post date:** [December 30, 2023, 9:03am UTC](https://devforum.zoom.us/t/callback-to-onsessionjoin-is-never-received/100970/1 "2023-12-30T09:03:04Z")

</div>

**Video SDK Type and Version**

zoom-video-sdk-windows-1.10.0  
Working from the Sample-Libs\x64\demo\videosdk\_demo project  
Running on Windows 10, IDE is Rider

**Description**

Working from the videosdk\_demo example, I’ve created a project that compiles to a dll by exporting C functions.  
Unlike the demo, this project does not link to DuiLib64.lib, SDL2.dll, ZoomvideosdkRender.lib.

Next I’ve created a simple C# Core (net7.0, C# 11.0) console project that links to this dll.  
The console application builds and launches without issue (no missing dll files).  
Following the steps in the [documentation](https://developers.zoom.us/docs/video-sdk/linux/sessions/#create-a-zoomvideosdksessioncontext-object) (and the demo) the app creates and joins a session.  
However… I never receive a callback to onSessionJoin().

**Error?**

There are no error messages.  
The app just waits without onSessionJoin() being invoked.

**Troubleshooting Routes**  
Confirmed that every function described in the documention was invoked.  
Confirmed that the ZoomVideoSDKSessionContext matched videosdk\_demo  
Confirmed that the returned IZoomVideoSDKSession state matched videosdk\_demo

- The returned session method getSessionID() yields an empty string in both cases  
Confirmed that onSessionJoin() really IS invoked in the case of videosdk\_demo  
Tried debugging videosdk\_demo program to look for undocumented steps. Added steps to:
- Select camera, speaker, mic
- Unmute video and audio
- Registered an instance of IZoomVideoSDKRawDataPipeDelegate and confirmed that video frames (from local camera) are received
- Tried connecting videosdk\_demo to same session name as the console app. Only one user was present in the session.
- Confirmed that windows firewall is not blocking the app

GUESS: There is some required step in addition to the documented step: session = video\_sdk\_obj-\>joinSession(session\_context);

**How To Reproduce**  
I can share code on request.  
I have tried to set this up twice now, so my guess would be that you can reproduce the issue by

- Creating a dll with the same restricted linking (no GUI)
- Create a C# project that uses functions to connect to a session

---

<div class="post-metadata">

**Author:** ![gabriel2](https://avatars.discourse-cdn.com/v4/letter/g/9de0a6/32.png) [@gabriel2](https://devforum.zoom.us/u/gabriel2)\
**Post date:** [January 3, 2024, 3:42am UTC](https://devforum.zoom.us/t/callback-to-onsessionjoin-is-never-received/100970/2 "2024-01-03T03:42:50Z")

</div>

Update: I’ve tried creating a C++ console app that goes through the same steps as the dll and C# console app.  
Results: the C++ console app fails in the same way. So the issue is not with the dll - C# steps.

As with the regular app I have confirmed that every call specified in the documentation is invoked with the expected parameters. These are, in order:

- m\_pVideoSDK = CreateZoomVideoSDKObj();
- m\_pVideoSDK-\>initialize(initParams);
- m\_pVideoSDK-\>addListener(this);
- m\_pVideoSDK-\>joinSession(sessionContext);

Also, as with the dll, the listener receives no error message and no password is requested.

In terms of code, the class ZoomVideoSDKMgr is used as is. However, the CMainFrame class is replaced by a simpler class zoom\_video\_sdk\_delegate that does nothing other than print events to the console.

Finally, in case this helps, here is the JWT used for a test.  
NOTE: This JWT _does work_ when used with the demo app that has a GUI.

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcHBfa2V5IjoieG5WdTlPUkpSdENsMl9fdXlkamhNUSIsInRwYyI6IlRlc3RTZXNzaW9uIiwicm9sZV90eXBlIjoxLCJ1c2VyX2lkZW50aXR5IjoiVGVzdFVzZXIiLCJzZXNzaW9uX2tleSI6IiIsInZlcnNpb24iOjEsImlhdCI6MTcwNDI1MTgyOCwiZXhwIjoxNzA0MjU5MDI4fQ.BGufSwmYacxYQ8sEqM-90mvMmSnef7Y4YkXj5CHivXU

GUESS: Console applications are not able to use the zoom video sdk?

---

<div class="post-metadata">

**Author:** ![gabriel2](https://avatars.discourse-cdn.com/v4/letter/g/9de0a6/32.png) [@gabriel2](https://devforum.zoom.us/u/gabriel2)\
**Post date:** [January 3, 2024, 4:43am UTC](https://devforum.zoom.us/t/callback-to-onsessionjoin-is-never-received/100970/3 "2024-01-03T04:43:06Z")

</div>

Another update: I tried using the dll from a C# with a GUI.  
Where the console app found 1 user when invoking:  
`ZoomVideoSDKMgr::GetInst().GetAllUsers();`  
The C# app with GUI, which invokes the dll methods with _identical_ arguments found 0 users.
