# Zoom meeting stuck

**URL:** <https://devforum.zoom.us/t/zoom-meeting-stuck/97599>\
**Category:** Web\
**Created:** [October 31, 2023, 11:48am UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599 "2023-10-31T11:48:38Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![njangon71](https://avatars.discourse-cdn.com/v4/letter/n/d9b06d/32.png) [@njangon71](https://devforum.zoom.us/u/njangon71)\
**Post date:** [October 31, 2023, 11:48am UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599/1 "2023-10-31T11:48:38Z")

</div>

In my website i want to embedded zoom meet through js. but when I click the join meet button I can not join the meeting here i am stuck the Joining Meeting Page. Please help me

 ![Screenshot 2023-10-31 174339](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/9/6/966bb331c3c98707e99c4f00d1baff30fe447dec.png)

here is my js code:

```auto
 <button onClick="getSignature()">Join Meeting</button>
                    <script src="https://source.zoom.us/2.17.0/lib/vendor/react.min.js"></script>
                    <script src="https://source.zoom.us/2.17.0/lib/vendor/react-dom.min.js"></script>
                    <script src="https://source.zoom.us/2.17.0/lib/vendor/redux.min.js"></script>
                    <script src="https://source.zoom.us/2.17.0/lib/vendor/redux-thunk.min.js"></script>
                    <script src="https://source.zoom.us/2.17.0/lib/vendor/lodash.min.js"></script>
                    <!-- <script src="https://source.zoom.us/2.0.1/zoom-meeting-embedded-2.0.1.min.js"></script>-->
                    <script src="https://source.zoom.us/zoom-meeting-2.17.0.min.js"></script>

<script>
                        ZoomMtg.setZoomJSLib('https://source.zoom.us/2.17.0/lib', '/av')

                        ZoomMtg.preLoadWasm()
                        ZoomMtg.prepareWebSDK()
                        // loads language files, also passes any error messages to the ui
                        ZoomMtg.i18n.load('en-US')
                        ZoomMtg.i18n.reload('en-US')

                        var authEndpoint = ''
                        var sdkKey = 'redacted'
                        var meetingNumber = '89895716095'
                        var passWord = 'redacted'
                        var role = 0
                        var userName = 'JavaScript'
                        var userEmail = ''
                        var registrantToken = ''
                        var zakToken = ''
                        var leaveUrl = 'https://zoom.us'

                        function getSignature() {
                        fetch(authEndpoint, {
                        method: 'POST',
                        headers: {
                        'Content-Type': 'application/json'
                        },
                        body: JSON.stringify({
                        meetingNumber: meetingNumber,
                        role: role
                        })
                        }).then((response) => {
                        return response.json()
                        }).then((data) => {
                        console.log(data)
                        startMeeting(data.signature)
                        }).catch((error) => {
                        console.log(error)
                        })
                        }

                        function startMeeting(signature) {

                        document.getElementById('zmmtg-root').style.display = 'block'

                        ZoomMtg.init({
                        leaveUrl: leaveUrl,
                        success: (success) => {
                        console.log(success)
                        ZoomMtg.join({
                        signature: signature,
                        sdkKey: sdkKey,
                        meetingNumber: meetingNumber,
                        passWord: passWord,
                        userName: userName,
                        userEmail: userEmail,
                        tk: registrantToken,
                        zak: zakToken,
                        success: (success) => {
                        console.log(success)
                        },
                        error: (error) => {
                        console.log(error)
                        },
                        })
                        },
                        error: (error) => {
                        console.log(error)
                        }
                        })
                        }
                    </script>

```

here i use clientid as sdk key and i define meeting code and password statically  
@tommy @chunsiong.zoom

---

<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:** [November 1, 2023, 5:37am UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599/2 "2023-11-01T05:37:52Z")

</div>

> [@njangon71](#):
>
> `authEndpoint`

@njangon71 what is your authEndpoint?

---

<div class="post-metadata">

**Author:** ![njangon71](https://avatars.discourse-cdn.com/v4/letter/n/d9b06d/32.png) [@njangon71](https://devforum.zoom.us/u/njangon71)\
**Post date:** [November 1, 2023, 6:25pm UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599/3 "2023-11-01T18:25:26Z")

</div>

@chunsiong.zoom  
Here is my api in python. From this api i generate signature.

```auto
from this api 
 @http.route('/api/zoom_signature', type='json', auth="none", methods=['POST'], csrf=False)
    def generate_zoom_signature(self, **kw):
        try:
            # Get the JSON request data containing meetingNumber and role
            request_data = json.loads(http.request.httprequest.data)

            # Your Zoom app credentials
            CLIENT_SECRET = "redacted" # Replace with your client secret
            CLIENT_ID = "redacted" # Replace with your client ID

            # Define a constant for the validity duration, e.g., 48 hours (2 days)
            validity_duration_hours = 48
            expiration_time = datetime.utcnow() + timedelta(hours=validity_duration_hours)

            data = {
                "appKey": CLIENT_ID,
                "iat": int(datetime.utcnow().timestamp()),
                "exp": expiration_time.strftime("%Y-%m-%d %H:%M:%S UTC"),
                "tokenExp": expiration_time.strftime("%Y-%m-%d %H:%M:%S UTC"),
                "mn": request_data.get('meetingNumber'),
                "role": request_data.get('role')
            }
            print(data)
            # Generate the Zoom signature
            signature = self.generate_signature(data, CLIENT_SECRET)

            # Return the signature as a proper JSON response
            return {'signature': signature}

        except Exception as e:
            return {'error': str(e)}

    def generate_signature(self, data, secret):
        encoded_jwt = jwt.encode(data, secret, algorithm="HS256")
        return encoded_jwt

```

And here is my js:

```auto
<script>
                        ZoomMtg.setZoomJSLib('https://source.zoom.us/2.17.0/lib', '/av');

                        ZoomMtg.preLoadWasm();
                        ZoomMtg.prepareWebSDK();

                        ZoomMtg.i18n.load('en-US');
                        ZoomMtg.i18n.reload('en-US');

                        var authEndpoint = '/api/zoom_signature';
                        var sdkKey = 'redacted';
                        var meetingNumber = '85011060073';
                        var passWord = 'redacted';
                        var role = 0;
                        var userName = 'JavaScript';
                        var userEmail = 'njangon71@gmail.com';
                        var registrantToken = '';
                        var zakToken = '';
                        var leaveUrl = 'https://zoom.us';

                        function getSignature() {
                        fetch(authEndpoint, {
                        method: 'POST',
                        headers: {
                        'Content-Type': 'application/json'
                        },
                        body: JSON.stringify({
                        meetingNumber: meetingNumber,
                        role: role
                        })
                        })
                        .then((response) => response.json())
                        .then((data) => {
                        var signature = data.result.signature; // Access the signature directly
                        console.log("Signature received:", signature);
                        startMeeting(signature);
                        })
                        .catch((error) => {
                        console.log(error);
                        });
                        }

                        function startMeeting(signature) {
                        document.getElementById('zmmtg-root').style.display = 'block';

                        ZoomMtg.init({
                        leaveUrl: leaveUrl,
                        success: (success) => {
                        console.log(success);
                        console.log("Signature:", signature);
                        console.log("SDK Key:", sdkKey);
                        console.log("Meeting Number:", meetingNumber);
                        console.log("Password:", passWord);
                        console.log("User Name:", userName);
                        console.log("User Email:", userEmail);
                        console.log("Registrant Token:", registrantToken);
                        console.log("Zak Token:", zakToken);

                        console.log("ZoomMtg.join Object:", {
                        signature: signature,
                        sdkKey: sdkKey,
                        meetingNumber: meetingNumber,
                        passWord: passWord,
                        userName: userName,
                        userEmail: userEmail,
                        tk: registrantToken,
                        zak: zakToken
                        });

                        ZoomMtg.join({
                        signature: signature,
                        sdkKey: sdkKey,
                        meetingNumber: meetingNumber,
                        passWord: passWord,
                        userName: userName,
                        userEmail: userEmail,
                        tk: registrantToken,
                        zak: zakToken,
                        success: (success) => {
                        console.log("Join Success:", success);
                        },
                        error: (error) => {
                        console.log("Join Error:", error);
                        }
                        });
                        },
                        error: (error) => {
                        console.log(error);
                        }
                        });
                        }
                    </script>

```

When i click join meeting its showing Join meeting failed Invalid signature.

---

<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:** [November 2, 2023, 2:58am UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599/4 "2023-11-02T02:58:10Z")

</div>

@njangon71 , you might want to reset your secret key.

Do you have the signature which was generated by the code?

---

<div class="post-metadata">

**Author:** ![njangon71](https://avatars.discourse-cdn.com/v4/letter/n/d9b06d/32.png) [@njangon71](https://devforum.zoom.us/u/njangon71)\
**Post date:** [November 2, 2023, 4:34am UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599/5 "2023-11-02T04:34:17Z")

</div>

I generate the signature from puython api and fetch it in my js  
here I attached screenshots of console and error :

 ![zoom1](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/8/0/80e981276b47c664a6a15abfbdd0fc9c91e42f16.png)  
 ![zoom2](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/3/8/3868b2ce887c7f9cf0f6f115781f89603b27b166.png)  
Do I need to regenerate the Client Secret again?

---

<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:** [November 2, 2023, 4:40am UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599/6 "2023-11-02T04:40:02Z")

</div>

@njangon71  
Yes you need to generate your secret again, and please do not share it here.

---

<div class="post-metadata">

**Author:** ![njangon71](https://avatars.discourse-cdn.com/v4/letter/n/d9b06d/32.png) [@njangon71](https://devforum.zoom.us/u/njangon71)\
**Post date:** [November 2, 2023, 5:01am UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599/7 "2023-11-02T05:01:17Z")

</div>

@chunsiong.zoom  
I regenerate my Client Secret again and define this in my api but same things happen.  
Signature Invalid.

---

<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:** [November 2, 2023, 5:45am UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599/9 "2023-11-02T05:45:45Z")

</div>

@njangon71 , I have PMed you for your signature, please share in the PM for troubleshooting

---

<div class="post-metadata">

**Author:** ![njangon71](https://avatars.discourse-cdn.com/v4/letter/n/d9b06d/32.png) [@njangon71](https://devforum.zoom.us/u/njangon71)\
**Post date:** [November 2, 2023, 5:55am UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599/10 "2023-11-02T05:55:52Z")

</div>

@chunsiong.zoom

What is PM?  
I do not Understand.

---

<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:** [November 3, 2023, 2:55am UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599/11 "2023-11-03T02:55:53Z")

</div>

@njangon71 thanks for the information.  
We are checking this on our side  
ZSEE-110892

---

<div class="post-metadata">

**Author:** ![njangon71](https://avatars.discourse-cdn.com/v4/letter/n/d9b06d/32.png) [@njangon71](https://devforum.zoom.us/u/njangon71)\
**Post date:** [November 3, 2023, 11:17am UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599/12 "2023-11-03T11:17:17Z")

</div>

@chunsiong.zoom  
Okay. I sent you my account information.

---

<div class="post-metadata">

**Author:** ![njangon71](https://avatars.discourse-cdn.com/v4/letter/n/d9b06d/32.png) [@njangon71](https://devforum.zoom.us/u/njangon71)\
**Post date:** [November 5, 2023, 10:12am UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599/13 "2023-11-05T10:12:44Z")

</div>

@chunsiong.zoom  
hello brother kindly can you tell me the status of ZSEE-110892.  
Its an emergency.

---

<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:** [November 6, 2023, 1:31am UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599/14 "2023-11-06T01:31:43Z")

</div>

> [@njangon71](#):
>
> ZSEE-110892.

@njangon71 If there is anything urgent or emergency, I would strongly encourage you to get a paid developer support.

The developer forum is community based support. There is no SLA, nonetheless we will try to resolve the issues based on best effort.

Currently this is still ongoing, and there are no updates at the moment. I’ll reply once I get an update.

---

<div class="post-metadata">

**Author:** ![njangon71](https://avatars.discourse-cdn.com/v4/letter/n/d9b06d/32.png) [@njangon71](https://devforum.zoom.us/u/njangon71)\
**Post date:** [November 6, 2023, 4:56am UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599/15 "2023-11-06T04:56:23Z")

</div>

@chunsiong.zoom  
Okay I am waiting for your update.

---

<div class="post-metadata">

**Author:** ![njangon71](https://avatars.discourse-cdn.com/v4/letter/n/d9b06d/32.png) [@njangon71](https://devforum.zoom.us/u/njangon71)\
**Post date:** [November 13, 2023, 6:20am UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599/16 "2023-11-13T06:20:56Z")

</div>

@chunsiong.zoom  
Is there any update ZSEE-110892?

---

<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:** [November 14, 2023, 12:45am UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599/17 "2023-11-14T00:45:00Z")

</div>

> [@njangon71](#):
>
> ZSEE-110892

@njangon71 ,

Updates:

Could you try these

- Submitting the SDK for publishing
- Regenerating SDK Secret / Client Secret

---

<div class="post-metadata">

**Author:** ![njangon71](https://avatars.discourse-cdn.com/v4/letter/n/d9b06d/32.png) [@njangon71](https://devforum.zoom.us/u/njangon71)\
**Post date:** [November 14, 2023, 6:02pm UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599/18 "2023-11-14T18:02:50Z")

</div>

@chunsiong.zoom  
I regenerate client id and secret but its not solve my issue.  
No I am not submitting my app i just create meeting sdk app info crediential and scope.

---

<div class="post-metadata">

**Author:** ![njangon71](https://avatars.discourse-cdn.com/v4/letter/n/d9b06d/32.png) [@njangon71](https://devforum.zoom.us/u/njangon71)\
**Post date:** [November 16, 2023, 7:47am UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599/19 "2023-11-16T07:47:42Z")

</div>

@chunsiong.zoom  
Is there any problem in my app or account? Or do i need to submit my app?

---

<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:** [November 17, 2023, 4:42am UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599/20 "2023-11-17T04:42:57Z")

</div>

@njangon71 , I’m still waiting for response, hang on

---

<div class="post-metadata">

**Author:** ![njangon71](https://avatars.discourse-cdn.com/v4/letter/n/d9b06d/32.png) [@njangon71](https://devforum.zoom.us/u/njangon71)\
**Post date:** [November 17, 2023, 8:15am UTC](https://devforum.zoom.us/t/zoom-meeting-stuck/97599/21 "2023-11-17T08:15:45Z")

</div>

@chunsiong.zoom  
Okay

[Next page](https://devforum.zoom.us/t/zoom-meeting-stuck/97599.md?page=2)
