Exemple #1
0
        internal string FindSelfName(Participant_Id selfId)
        {
            if (SelfNamesFound.ContainsKey(selfId.chat_id))
            {
                return(SelfNamesFound[selfId.chat_id]);
            }
            else if (SelfNamesFound.ContainsKey(selfId.gaia_id))
            {
                return(SelfNamesFound[selfId.gaia_id]);
            }

            var participants = this.conversation?.conversation?.current_participant.ToList();
            var selfName     = string.Empty;

            var self = participants.FirstOrDefault(
                p => (p.chat_id != null && p.chat_id == selfId.chat_id) || (p.gaia_id != null && p.gaia_id == selfId.gaia_id));

            foreach (var participantData in conversation.conversation.participant_data)
            {
                if (self.chat_id != null && self.chat_id == participantData.id.chat_id)
                {
                    selfName = participantData.fallback_name;
                    SelfNamesFound.Add(self.chat_id, selfName);
                }
                else if (self.gaia_id != null && self.gaia_id == participantData.id.gaia_id)
                {
                    selfName = participantData.fallback_name;
                    SelfNamesFound.Add(self.gaia_id, selfName);
                }
            }

            return(selfName);
        }
Exemple #2
0
        public IList <Current_Participant> FindOtherParticapants(Participant_Id selfId)
        {
            var participants = this.conversation?.conversation?.current_participant.ToList();

            var participantsOtherThanSelf = participants.Where(
                p => (p.chat_id != null && p.chat_id != selfId.chat_id) || (p.gaia_id != null && p.gaia_id != selfId.gaia_id))
                                            .ToList();

            return(participantsOtherThanSelf);
        }