setTypingStatus method
Implementation
void setTypingStatus(
String singleOrgroupJid, String userId, String typingStatus) {
if (profile.jid.checkNull() == singleOrgroupJid) {
var jid = profile.isGroupProfile ?? false ? userId : singleOrgroupJid;
if (!typingList.contains(jid)) {
typingList.add(jid);
}
if (typingStatus.toLowerCase() == Constants.composing) {
if (profile.isGroupProfile ?? false) {
groupParticipantsName(Constants.emptyString);
getProfileDetails(jid)
.then((value) => userPresenceStatus("${value.name} typing..."));
} else {
//if(!profile.isGroupProfile!){//commented if due to above if condition works
userPresenceStatus(AppConstants.typing);
}
} else {
if (typingList.isNotEmpty && typingList.contains(jid)) {
typingList.remove(jid);
userPresenceStatus(Constants.emptyString);
}
setChatStatus();
}
}
}