listenChat function

dynamic listenChat(
  1. User? user, {
  2. dynamic playSound()?,
})

Implementation

listenChat(User? user, {Function()? playSound}){
  _listen = FirebaseFirestore.instance.collection("listusers")
      .doc(user!.uid).snapshots().listen((querySnapshot) {
    if (querySnapshot.data() != null) {
      var _data = querySnapshot.data()!;
      // dprint(_data["unread_chat"].toString());
      var _chatCount = _data["unread_chat"] != null ? toDouble(_data["unread_chat"].toString()).toInt() : 0;
      if (_chatCount != chatCount) {
        if (playSound != null)
          playSound()!;
        // sound
        //parent.playSound();
      }
      chatCount = _chatCount;
      if (chatCount < 0) {
        chatCount = 0;
        FirebaseFirestore.instance.collection("listusers").doc(user.uid).set({
          "unread_chat": chatCount,
        }, SetOptions(merge: true));
      }
      redrawMainWindow();
    }
  });
}