Having some problems integrating the Meeting SDK

I started a class on my Zoom portal and tried to join the class through my React Native app, but I wasn’t able to join, even though I created a JWT token. Please tell me how it will work, from start to finish.

App.js

import { ZoomSDKProvider } from '@zoom/meetingsdk-react-native';
import { NavigationContainer } from '@react-navigation/native';
import { ZOOM_JWT_TOKEN } from '../config';
import { Navigation } from './navigation';

export default function App() {
  console.log('ZOOM_JWT_TOKEN',ZOOM_JWT_TOKEN)
  return (
    <NavigationContainer>
      <ZoomSDKProvider
        config={{
          jwtToken: ZOOM_JWT_TOKEN,
          domain: "zoom.us",
          enableLog: true,
          logSize: 5,
        }}>
        <Navigation />
      </ZoomSDKProvider>
    </NavigationContainer>
  );
}
import React, { useEffect, useState } from 'react';
import { View, TouchableOpacity, StyleSheet, Text, Alert } from 'react-native';
import { TextInputRow } from '../../components/text-input-row';
import {useZoom} from '@zoom/meetingsdk-react-native';

type JoinScreenProps = {
  route: any;
  navigation: any;
};
**JoinScreen.js**
export function JoinScreen({ navigation }: JoinScreenProps) {
  const [meetingNumber, setMeetingNumber] = useState('99888584480');
  const [meetingPassword, setMeetingPassword] = useState('123456');
  const [displayName, setDisplayName] = useState('Harsh');
  const [zak, setZak] = useState('');
  const zoom = useZoom();

  useEffect(() => {
  }, []);

  const joinMeeting = async () => {
    
      if (!meetingNumber.trim()) {
          Alert.alert('Please Enter Valid Meeting Number');
          return;
      };
      if (!displayName.trim()) {
          Alert.alert('Please Enter Display Name');
          return;
      };
      if (!meetingPassword.trim()) {
          Alert.alert('Please Enter Password');
          return;
      };
      try {
        // console.log('here',zoom.joinMeeting({
        //   userName: displayName,
        //   meetingNumber: meetingNumber,
        //   password: meetingPassword,
        // }))
      const checksss =   await zoom.joinMeeting({
          userName: displayName,
          meetingNumber: meetingNumber,
          password: meetingPassword,
        });
        console.log('check', checksss)
      } catch (e) {
        console.log(e);
        Alert.alert('Failed to join the meeting' + e);
        setTimeout(() => navigation.goBack(), 1000);
      }
  };

    const startMeeting = async () => {
        if (!displayName.trim()) {
            Alert.alert('Please Enter Display Name');
            return;
        };
        if (!zak.trim()) {
            Alert.alert('Please Enter ZAK Token');
            return;
        };
        try {
          await zoom.startMeeting({
            userName: displayName,
            meetingNumber: meetingNumber,
            zoomAccessToken: zak,
          });
        } catch (e) {
          console.log(e);
          Alert.alert('Failed to start the meeting' + e);
          setTimeout(() => navigation.goBack(), 1000);
        }
    };

  return (
    <View style={styles.container}>
      <TextInputRow
        label="Meeting Number"
        placeholder="Required"
        keyboardType="default"
        value={meetingNumber}
        onChangeText={setMeetingNumber}
      />
      <TextInputRow
        label="Display Name"
        placeholder="Required"
        keyboardType="default"
        value={displayName}
        onChangeText={setDisplayName}
      />
      <TextInputRow
        label="Password"
        placeholder="Optional"
        keyboardType="default"
        value={meetingPassword}
        onChangeText={setMeetingPassword}
        secureTextEntry
      />
      <TextInputRow
        label="ZAK Token"
        placeholder="Optional"
        keyboardType="default"
        value={zak}
        onChangeText={setZak}
      />
      <TouchableOpacity
        onPress={startMeeting}
        style={styles.button}
      >
        <Text style={styles.buttonText}>{'Create a Meeting'}</Text>
      </TouchableOpacity>
        <TouchableOpacity
          onPress={joinMeeting}
          style={styles.button}
        >
          <Text style={styles.buttonText}>{'Join a Meeting'}</Text>
        </TouchableOpacity>
    </View>
  );
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    backgroundColor: 'white',
  },
  button: {
    backgroundColor: '#0e71eb',
    alignItems: 'center',
    marginTop: 15,
    marginHorizontal: 15,
    paddingVertical: 10,
    borderRadius: 5,
  },
  buttonText: {
    color: 'white',
  },
});

@harshitgarg076 could your refer to the guide here?

@chunsiong.zoom
I did everything according to this tutorial, but I didn’t get any response on the mobile as I mentioned in my code. Please check my code once and tell me what the problem is.

@michael.zoom please look into my issue

@harshitgarg076 can you share a sample for your auth token / jwt token?

@chunsiong.zoom
This is my Jwt Token

Redacted

@harshitgarg076

Both your appKey and sdkKey should have the value of ClientID dvg8Ptv3RA8JirdQjpwUA

@chunsiong.zoom
now please check this is my new jwt
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcHBLZXkiOiJkdmc4UHR2M1JBOEppcmRRanB3VUEiLCJzZGtLZXkiOiJkdmc4UHR2M1JBOEppcmRRanB3VUEiLCJtbiI6Ijk0ODU2NDY0MjI1Iiwicm9sZSI6IjAiLCJpYXQiOjE3MjYxMTMyMjUsImV4cCI6MTcyNjEyMDQyNSwidG9rZW5FeHAiOjE3MjYxMjA0MjV9.Bl0awjW-_B7ryGkO4bjKwkdHYJ5juTojBHxIi0_mTF0

@harshitgarg076 this looks fine, did you managed to use this successfully?

@chunsiong.zoom no
I am using this package to join calls from the React Native app, and you can see my React Native code mentioned above when the topic was created
import {useZoom} from '@zoom/meetingsdk-react-native';

@michael.zoom
please look into my issue

@chunsiong.zoom please look into my issue

@chunsiong.zoom @michael.zoom

@harshitgarg076 I would recommend you to take a look at the sample code and the readme.md guide available for download at marketplace.zoom.us for Meeting SDK React Native.

@chunsiong.zoom
I followed the documentation and downloaded the Meeting SDK. After that, I added the other folder as mentioned in the document. However, when I run the project and try to join a meeting, I don’t receive any response. Please help me.

const joinMeeting = async () => {
      if (!meetingNumber.trim()) {
          Alert.alert('Please Enter Valid Meeting Number');
          return;
      };
      if (!displayName.trim()) {
          Alert.alert('Please Enter Display Name');
          return;
      };
      if (!meetingPassword.trim()) {
          Alert.alert('Please Enter Password');
          return;
      };
      try {
        await zoom.joinMeeting({
          userName: displayName,
          meetingNumber: meetingNumber,
          password: meetingPassword,
        });
      } catch (e) {
        console.log(e);
        Alert.alert('Failed to join the meeting' + e);
        setTimeout(() => navigation.goBack(), 1000);
      }
  };

@harshitgarg076 what is the error in the console?

@chunsiong.zoom
I’m not getting any errors or response .

@harshitgarg076 if you are running the Meeting SDK for react native, there is some commands which you need to run on the console before it will launch.

Can you elaborate what you meant by not getting any errors or response?

@chunsiong.zoom
I don’t know which command to run. Please guide me.

const joinMeeting = async () => {
    
      if (!meetingNumber.trim()) {
          Alert.alert('Please Enter Valid Meeting Number');
          return;
      };
      if (!displayName.trim()) {
          Alert.alert('Please Enter Display Name');
          return;
      };
      if (!meetingPassword.trim()) {
          Alert.alert('Please Enter Password');
          return;
      };
      try {
        
        await zoom.joinMeeting({
          userName: displayName,
          meetingNumber: meetingNumber,
          password: meetingPassword,
        });

        console.log('check',zoom.joinMeeting({
          userName: displayName,
          meetingNumber: meetingNumber,
          password: meetingPassword,
        }))
      } catch (e) {
        console.log(e);
        Alert.alert('Failed to join the meeting' + e);
        setTimeout(() => navigation.goBack(), 1000);
      }
  };

This is the console response

@harshitgarg076 this is just the sample app which generates the JWT token.

There is another separate app which compiles the meeting sdk react native.