diff options
author | Shravya Ramesh <shravs1208@gmail.com> | 2021-04-09 15:19:49 -0700 |
---|---|---|
committer | Shravya Ramesh <shravs1208@gmail.com> | 2021-04-09 15:19:49 -0700 |
commit | 6527289eb6249cfd057c47d0f797133ab8052339 (patch) | |
tree | d2e5bdfaabf57042b8990fb03f1676376c3babe0 | |
parent | 444dc434b63c7a24d3447e23eb9b4a9b469566a7 (diff) |
major issue fixed
-rw-r--r-- | src/screens/chat/ChatListScreen.tsx | 17 | ||||
-rw-r--r-- | src/services/ChatService.ts | 6 | ||||
-rw-r--r-- | src/utils/messages.ts | 5 |
3 files changed, 20 insertions, 8 deletions
diff --git a/src/screens/chat/ChatListScreen.tsx b/src/screens/chat/ChatListScreen.tsx index eb886232..f2395f0a 100644 --- a/src/screens/chat/ChatListScreen.tsx +++ b/src/screens/chat/ChatListScreen.tsx @@ -3,6 +3,7 @@ import {StackNavigationProp} from '@react-navigation/stack'; import React, {useContext, useEffect, useMemo, useState} from 'react'; import {Alert, SafeAreaView, StatusBar, StyleSheet, View} from 'react-native'; import {useSelector, useStore} from 'react-redux'; +import {connectChatAccount} from '../../utils'; import {ChannelList, Chat} from 'stream-chat-react-native'; import {ChatContext} from '../../App'; import {TabsGradient} from '../../components'; @@ -43,10 +44,20 @@ const ChatListScreen: React.FC<ChatListScreenProps> = () => { ); useEffect(() => { - if (!chatClientReady) { - Alert.alert('Something wrong with chat'); + let connected: boolean = !chatClient.user; + if (!connected) { + connectChatAccount(loggedInUserId, chatClient) + .then((success) => { + if (!success) { + Alert.alert('Something wrong with chat'); + } + }) + .catch((err) => { + console.log('Error connecting to chat: ', err); + Alert.alert('Something wrong with chat'); + }); } - }, [chatClientReady]); + }, []); return ( <View style={styles.background}> diff --git a/src/services/ChatService.ts b/src/services/ChatService.ts index da65641c..e9b1c284 100644 --- a/src/services/ChatService.ts +++ b/src/services/ChatService.ts @@ -3,7 +3,7 @@ import {CHAT_TOKEN_ENDPOINT} from '../constants/api'; export const loadChatTokenService = async () => { try { - const token = await AsyncStorage.getItem('chatToken'); + const token = await AsyncStorage.getItem('token'); const response = await fetch(CHAT_TOKEN_ENDPOINT, { method: 'GET', headers: { @@ -12,8 +12,8 @@ export const loadChatTokenService = async () => { }); const status = response.status; if (status === 200) { - const {chatToken} = await response.json(); - return chatToken; + const data = await response.json(); + return data.chatToken; } return ''; } catch (error) { diff --git a/src/utils/messages.ts b/src/utils/messages.ts index 6b972b83..dc01d579 100644 --- a/src/utils/messages.ts +++ b/src/utils/messages.ts @@ -111,9 +111,10 @@ export const connectChatAccount = async ( export const getChatToken = async () => { try { - if (await AsyncStorage.getItem('chatToken')) { + const currentChatToken = await AsyncStorage.getItem('chatToken'); + if (currentChatToken === null) { const chatToken = await loadChatTokenService(); - AsyncStorage.setItem('chatToken', chatToken); + await AsyncStorage.setItem('chatToken', chatToken); } } catch (err) { console.log(err); |