11import { useCallback , useContext , useEffect , useMemo , useReducer , useState } from "react" ;
22
3- import ZoomVideo , { ConnectionState } from "@zoom/videosdk" ;
3+ import ZoomVideo , {
4+ ConnectionState ,
5+ event_connection_change ,
6+ event_dial_out_change ,
7+ event_media_sdk_change ,
8+ } from "@zoom/videosdk" ;
49import { Modal , message } from "antd" ;
510import { produce } from "immer" ;
611import { Route , BrowserRouter as Router , Switch } from "react-router-dom" ;
@@ -139,7 +144,7 @@ function App(props: AppProps) {
139144 } ;
140145 } , [ signature , zmClient , topic , name , password , webEndpoint , galleryViewWithoutSAB ] ) ;
141146 const onConnectionChange = useCallback (
142- ( payload ) => {
147+ ( payload : Parameters < typeof event_connection_change > [ 0 ] ) => {
143148 if ( payload . state === ConnectionState . Reconnecting ) {
144149 setIsLoading ( true ) ;
145150 setIsFailover ( true ) ;
@@ -153,7 +158,7 @@ function App(props: AppProps) {
153158 if ( isFailover ) {
154159 setIsLoading ( false ) ;
155160 }
156- } else if ( payload . state === ConnectionState . Closed ) {
161+ } else {
157162 setStatus ( "closed" ) ;
158163 dispatch ( { type : "reset-media" } ) ;
159164 if ( payload . reason === "ended by host" ) {
@@ -166,19 +171,15 @@ function App(props: AppProps) {
166171 } ,
167172 [ isFailover ] ,
168173 ) ;
169- const onMediaSDKChange = useCallback ( ( payload ) => {
174+ const onMediaSDKChange = useCallback ( ( payload : Parameters < typeof event_media_sdk_change > [ 0 ] ) => {
170175 const { action, type, result } = payload ;
171176 dispatch ( { type : `${ type } -${ action } ` , payload : result === "success" } ) ;
172177 } , [ ] ) ;
173178
174- const onDialoutChange = useCallback ( ( payload ) => {
179+ const onDialoutChange = useCallback ( ( payload : Parameters < typeof event_dial_out_change > [ 0 ] ) => {
175180 console . info ( "onDialoutChange" , payload ) ;
176181 } , [ ] ) ;
177182
178- const onAudioMerged = useCallback ( ( payload ) => {
179- console . info ( "onAudioMerged" , payload ) ;
180- } , [ ] ) ;
181-
182183 const onLeaveOrJoinSession = useCallback ( async ( ) => {
183184 if ( status === "closed" ) {
184185 setIsLoading ( true ) ;
@@ -193,14 +194,13 @@ function App(props: AppProps) {
193194 zmClient . on ( "connection-change" , onConnectionChange ) ;
194195 zmClient . on ( "media-sdk-change" , onMediaSDKChange ) ;
195196 zmClient . on ( "dialout-state-change" , onDialoutChange ) ;
196- zmClient . on ( "merged-audio" , onAudioMerged ) ;
197+
197198 return ( ) => {
198199 zmClient . off ( "connection-change" , onConnectionChange ) ;
199200 zmClient . off ( "media-sdk-change" , onMediaSDKChange ) ;
200201 zmClient . off ( "dialout-state-change" , onDialoutChange ) ;
201- zmClient . off ( "merged-audio" , onAudioMerged ) ;
202202 } ;
203- } , [ zmClient , onConnectionChange , onMediaSDKChange , onDialoutChange , onAudioMerged ] ) ;
203+ } , [ zmClient , onConnectionChange , onMediaSDKChange , onDialoutChange ] ) ;
204204 return (
205205 < div className = "App" >
206206 { loading && < LoadingLayer content = { loadingText } /> }
0 commit comments