private void RbContacts_PeerAdded(object sender, Rainbow.Events.PeerEventArgs e) { if (!LoginInfoModel.InitialisationCompleted) { return; } // Need to be on UI Thread System.Windows.Application.Current.Dispatcher.Invoke(new Action(() => { UsersModel.AddContact(rbContacts.GetContactFromContactJid(e.Peer.Jid)); })); }
private void RainbowContacts_ContactPresenceChanged(object sender, PresenceEventArgs e) { if (e.Jid == rainbowMyContact.Jid_im) { AddStateLine($"Your presence changed to [{Util.SerializePresence(e.Presence)}]"); } else { Contact contact = rainbowContacts.GetContactFromContactJid(e.Jid); if (contact == null) { AddStateLine($"Presence changed for [{e.Jid}]: {Util.SerializePresence(e.Presence)}"); } else { AddStateLine($"Presence changed for [{GetContactDisplayName(contact)}]: {Util.SerializePresence(e.Presence)}"); UpdateContactPresence(contact.Id); } } }
public override Rainbow.Model.Contact GetContactFromContactJid(String jid) { return(RbContacts.GetContactFromContactJid(jid)); }