From fbfb36b381216e0b50324064c79b0c0f5efc6a6c Mon Sep 17 00:00:00 2001 From: Shravya Ramesh Date: Fri, 9 Apr 2021 14:38:44 -0700 Subject: new funtion to get chat token and make connection --- src/utils/messages.ts | 35 ++++++++++++++++++++++++++--------- 1 file changed, 26 insertions(+), 9 deletions(-) (limited to 'src') diff --git a/src/utils/messages.ts b/src/utils/messages.ts index 1c83ca9f..6b972b83 100644 --- a/src/utils/messages.ts +++ b/src/utils/messages.ts @@ -1,7 +1,6 @@ import AsyncStorage from '@react-native-community/async-storage'; import moment from 'moment'; -// import {updateChatClientReady} from '../store/actions'; -import {AppDispatch} from '../store/configureStore'; +import {loadChatTokenService} from '../services/ChatService'; import {RootState} from '../store/rootReducer'; import {ChannelGroupedType} from '../types'; @@ -88,17 +87,35 @@ export const getMember = ( export const connectChatAccount = async ( loggedInUserId: string, chatClient, - dispatch: AppDispatch, ) => { try { + await getChatToken(); const chatToken = await AsyncStorage.getItem('chatToken'); - await chatClient.connectUser( - { - id: loggedInUserId, - }, - chatToken, - ); + if (chatToken) { + await chatClient.connectUser( + { + id: loggedInUserId, + }, + chatToken, + ); + return true; + } else { + console.log('Unable to connect to stream. Empty chat token'); + return false; + } } catch (err) { console.log('Error while connecting user to Stream: ', err); + return false; + } +}; + +export const getChatToken = async () => { + try { + if (await AsyncStorage.getItem('chatToken')) { + const chatToken = await loadChatTokenService(); + AsyncStorage.setItem('chatToken', chatToken); + } + } catch (err) { + console.log(err); } }; -- cgit v1.2.3-70-g09d2