aboutsummaryrefslogtreecommitdiff
path: root/src/utils/messages.ts
diff options
context:
space:
mode:
authorShravya Ramesh <shravs1208@gmail.com>2021-04-09 14:38:44 -0700
committerShravya Ramesh <shravs1208@gmail.com>2021-04-09 14:38:44 -0700
commitfbfb36b381216e0b50324064c79b0c0f5efc6a6c (patch)
tree27225aba6551a1b3ee1567ee7140ff3a9c777b40 /src/utils/messages.ts
parentb1d6f9392385a679ff283954170c27abef946c7b (diff)
new funtion to get chat token and make connection
Diffstat (limited to 'src/utils/messages.ts')
-rw-r--r--src/utils/messages.ts35
1 files changed, 26 insertions, 9 deletions
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);
}
};