initBaseData method
Future<void>
initBaseData(
{ - bool updateTitle = true,
})
Implementation
@protected
Future<void> initBaseData({bool updateTitle = true}) async {
int v = await ConfigRepo.getAudioPlayModel();
voiceFromSpeaker = v == ConfigRepo.audioPlayOutside;
_sessionId =
(await NimCore.instance.conversationIdUtil.conversationTargetId(
conversationId,
))
.data;
if (conversationType == NIMConversationType.p2p && _sessionId != null) {
getIt<ContactProvider>().getContact(_sessionId!).then((value) {
updateContactInfo(value);
if (updateTitle) {
chatTitle = value!.getName();
}
if (value?.user.accountId?.isNotEmpty == true) {
initUserState(value!.user.accountId!);
}
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;
if (updateTitle) {
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();
});
}
});
}
}