void client_UserConnected(object sender, XmppEventArgs e) { if (client == null || !client.IsConnected) { return; } UserSettingProvider = new CryptedLocalUserSettingsProvider(client.ServerName, client.Jid.Bare); UserSetting = UserSettingProvider.Load(); Dispatcher.BeginInvoke(new Action(() => { UserSetting.PresenceStatus = cmbGetSelectedPresence(cmbConnectPresence); cmbSetPresence(cmbRosterPresence, UserSetting.PresenceStatus); ChatMgr.SetConversationInput(true); miLogout.IsEnabled = true; timerCommHolder.Start(); }), DispatcherPriority.Normal); int id = client.GetRoster(); Signals.Register(id, (par) => { Dispatcher.BeginInvoke(new Action(() => { SendPresence(cmbGetSelectedPresence(cmbConnectPresence), txtPresenceMessage.Text.Trim()); }), DispatcherPriority.Normal); Dispatcher.DelayInvoke(TimeSpan.FromSeconds(8), () => { if (client != null && client.IsConnected) { if (!client.HostName.ToLower().Contains("facebook")) // @@@ do not working with facebook... bug? { client.SendVCardRequest(client.Jid); } } }); }); Log("connected"); }
void client_UserDisconnected(object sender, XmppEventArgs e) { }
void client_RecvStreamCallback(object sender, XmppEventArgs e) { Dispatcher.BeginInvoke(new Action(() => { Trace(e.Message, true); }), DispatcherPriority.Normal); }
private void FireEventOnMessageReceived(XmppEventArgs e) { OnMessageReceived?.Invoke(this, e); }