Error in SpotlightVideo and UnSpotlightVideo

both the functions SpotlightVideo(uint userid) and UnSpotlightVideo(uint userid) often returns error 18 (Possible SDKERR_NO_VIDEODEVICE_ISFOUND ) instead of SDKERR_SUCCESS.

C# with version 5.5.12511.0422

When this happens, a delay is needed (between 500mS and 1000mS) before the function work again.

Example of workaround :

    public bool SpotlightVideo(uint Id, int NumberOfTry)
    {
        ZOOM_SDK_DOTNET_WRAP.SDKError err;

        if (NumberOfTry < 1) NumberOfTry = 1;

        for (int i = 0; i < NumberOfTry; i++)
        {
            err = ZOOM_SDK_DOTNET_WRAP.CZoomSDKeDotNetWrap.Instance.GetMeetingServiceWrap().GetMeetingVideoController().SpotlightVideo(Id);
            if (err == ZOOM_SDK_DOTNET_WRAP.SDKError.SDKERR_SUCCESS)
            {
                return true;
            }
            else
            {
                // Log.WriteInfo("SpotlightVideo on user " + Id.ToString() + " . Error = " + err);
                System.Threading.Thread.Sleep(500);
            }
        }
        return false;
    }

It is bad coding to fix the issue like this… Please help since this is annoing and take time…

Hey @bm.erikstad,

Thanks for using the dev forum!

At what point are you attempting to spotlight/unspotlight? Is this controlled by the UI or after a certain event?

Thanks!
Michael

It is all controlled from a UI.

Hey @bm.erikstad,

Do you receive the error the first time your call this? Or does this only happen when repeatedly calling the methods in a short time?

Thanks!
Michael

Hey Michael.

It differs.
Logging over time show that around 1/3 of all calls works on the first try.
The rest is spread out and need 2 and some of them need 3 try to success.

I have not been able to see any pattern when it fails vs when it works just fine.

First i thougt that it was releated to partisipants turning their camera off 8would be understanable that it would fail…) but the testing show no relation here.

Is it correct that SDKERR_NO_VIDEODEVICE_ISFOUND is 18 ?
If yes, is this something that is proccessed locally on the Host computer or on Zoom Server ?

Hey @bm.erikstad

18 is actually SDKERR_TOO_FREQUENT_CALL
Which means the method is being called too many times in a short period of time.

Thanks!
Michael

Hey again.
So, I updated the SDK to version 5.7.1.643.
The change of onSpotlightVideoChangeNotification(uint lstSpotlightedUserID) is working very nicely.
But i still have the SDKERR_TOO_FREQUENT_CALL.
What is ‘Too frequent’ ? Is there something that need to be finish before calling it again?
The use case, is that 2 partisipants are spotted. these spots is to be removed and another partisipant is to be spotted. So there is a total of 3 call’s made.
Would it be a good ide to change the SDKError SpotlightVideo(uint userid) into SDKError SpotlightVideo(uint lstuserID) to reduce the number of call’s ?

Remark : The SDKERR_TOO_FREQUENT_CALL seems not to be implemented in the wrapper SDKError. The last enum is SDKERR_OTHER_SDK_INSTANCE_RUNNING.

Hey @bm.erikstad,

I am not sure if this would fix the error you are receiving, however SpotlightVideo(uint userid) is an outdated interface that was replaced by SpotlightVideo(uint lstuserID), so yes I would switch to the new one.

Yes, unfortunately the wrapper is provided as is and is no longer maintained by Zoom. Only the C++ SDK is actively maintained.

Thanks!
Michael

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.