initData method
dynamic
initData()
Implementation
initData() async {
_sessionId = (await NimCore.instance.conversationIdUtil
.conversationTargetId(conversationId))
.data;
if (conversationType == NIMConversationType.p2p && _sessionId != null) {
getIt<ContactProvider>().getContact(_sessionId!).then((value) {
contactInfo = value;
chatTitle = value!.getName();
notifyListeners();
});
ChatMessageRepo.getP2PMessageReceipt(conversationId).then((result) {
if (result.isSuccess && result.data?.timestamp != null) {
receiptTime = result.data!.timestamp!;
}
});
} else if (conversationType == NIMConversationType.team &&
_sessionId != null) {
ChatMessageRepo.queryTeam(_sessionId!).then((value) {
if (value.isSuccess) {
teamInfo = value.data;
chatTitle = value.data!.name;
NIMChatCache.instance.getMyTeamMember(_sessionId!).then((value) {
mute = (teamInfo?.chatBannedMode ==
NIMTeamChatBannedMode.chatBannedModeBannedNormal &&
value?.teamInfo.memberRole ==
NIMTeamMemberRole.memberRoleNormal) ||
teamInfo?.chatBannedMode ==
NIMTeamChatBannedMode.chatBannedModeBannedAll;
notifyListeners();
});
}
});
}
_initFetch();
}