private void btnOk_Click(object sender, EventArgs e) { ArrayList deleteUsers = new ArrayList(); Hide(); foreach (Contact contact in AppController.Instance.Contacts) { if (contact.GroupName.Equals(cbDeletegroup.SelectedItem.ToString(), StringComparison.OrdinalIgnoreCase)) { deleteUsers.Add(contact.UserName); } } for (int i = 0; i < deleteUsers.Count; i++) { Contact delcontact = AppController.Instance.Contacts[deleteUsers[i].ToString()]; JabberID Jid = new JabberID(delcontact.UserName.ToString(), delcontact.ServerName.ToString(), Settings.Default.Resource); UnsubscribedResponse resp = new UnsubscribedResponse(Jid); AppController.Instance.SessionManager.Send(resp); AppController.Instance.SessionManager.BeginSend(new RosterRemove(Jid, delcontact.UserName.ToString())); AppController.Instance.Contacts.Remove(delcontact); AppController.Instance.MainWindow.UpdateContactList(); } }
private void btnOk_Click(object sender, EventArgs e) { Hide(); if (ValidateInput() == false) { DialogResult = DialogResult.None; return; } Contact contact = AppController.Instance.Contacts[cbContactname.SelectedItem.ToString()]; JabberID Jid = new JabberID(contact.UserName.ToString(), contact.ServerName.ToString(), Settings.Default.Resource); Contact delContact = new Contact(Jid, contact.GroupName.ToString(), LoginState.Offline); Contact editContact = new Contact(Jid, tbnewGpName.Text.Trim(), LoginState.Offline); UnsubscribedResponse resp = new UnsubscribedResponse(Jid); AppController.Instance.SessionManager.Send(resp); AppController.Instance.SessionManager.BeginSend(new RosterRemove(Jid, contact.UserName.ToString())); AppController.Instance.Contacts.Remove(delContact); SubscribeRequest p = new SubscribeRequest(Jid); AppController.Instance.SessionManager.Send(p); AppController.Instance.SessionManager.BeginSend( new RosterAdd(Jid, contact.UserName.ToString(), tbnewGpName.Text.ToString())); AppController.Instance.Contacts.Add(editContact); AppController.Instance.MainWindow.UpdateContactList(); }
private void btnOk_Click(object sender, EventArgs e) { Contact delContact = AppController.Instance.Contacts[cbUsername.SelectedItem.ToString()]; JabberID Jid = new JabberID(delContact.UserName.ToString(), delContact.ServerName.ToString(), Settings.Default.Resource); UnsubscribedResponse resp = new UnsubscribedResponse(Jid); AppController.Instance.SessionManager.Send(resp); AppController.Instance.SessionManager.BeginSend(new RosterRemove(Jid, cbUsername.SelectedItem.ToString())); AppController.Instance.Contacts.Remove(delContact); AppController.Instance.MainWindow.UpdateContactList(); Hide(); }
public void OnObjectMessage(string msg) { var parsed = BitfinexSerialization.Deserialize <MessageBase>(msg); switch (parsed.Event) { case MessageType.Pong: PongResponse.Handle(msg, _streams.PongSubject); break; case MessageType.Error: ErrorResponse.Handle(msg, _streams.ErrorSubject); break; case MessageType.Info: InfoResponse.Handle(msg, _streams.InfoSubject); break; case MessageType.Auth: AuthenticationResponse.Handle(msg, _streams.AuthenticationSubject); break; case MessageType.Conf: ConfigurationResponse.Handle(msg, _streams.ConfigurationSubject); break; case MessageType.Subscribed: OnSubscription(BitfinexSerialization.Deserialize <SubscribedResponse>(msg)); break; case MessageType.Unsubscribed: UnsubscribedResponse.Handle(msg, _streams.UnsubscriptionSubject); break; //default: // Log.Warning($"Missing handler for public stream, data: '{msg}'"); // break; } }
private void HandlePresenceRequest(Packet packet) { PresencePacket IncomingPresencePacket = packet as PresencePacket; if (IncomingPresencePacket is ProbeRequest) { //A Probe means we should send our presence to the probing entity //Maybe we should get some user input here. Not really sure if theyd want to know, though. SendCurrentPresence(IncomingPresencePacket.From); } else if (IncomingPresencePacket is SubscribeRequest) { string displayString = String.Format("Allow User '{0}; to subscribe to your presence?", IncomingPresencePacket.From.JabberIDNoResource); if ( MessageBox.Show(displayString, "Subscription Request", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { SubscribedResponse resp = new SubscribedResponse(IncomingPresencePacket.From); SessionManager.Send(resp); SubscribeRequest subscribe = new SubscribeRequest(new JabberID(IncomingPresencePacket.From.JabberIDNoResource)); SessionManager.Send(subscribe); } else { UnsubscribedResponse resp = new UnsubscribedResponse(); resp.To = IncomingPresencePacket.From; SessionManager.Send(resp); } } else if (IncomingPresencePacket is SubscribedResponse) { //Let the user know when someone accepts our subscription request string displayString = String.Format("User '{0}' has accepted your presence subscription request.", IncomingPresencePacket.From.JabberIDNoResource); MessageBox.Show(displayString, "Subscription Accept", MessageBoxButtons.OK, MessageBoxIcon.Information); } else if (IncomingPresencePacket is UnsubscribedResponse) { //Let the user know when someone revoked our presence subscription string displayString = String.Format("User '{0}' rejected your reqeust.", IncomingPresencePacket.From.JabberIDNoResource); MessageBox.Show(displayString, "Subscription Denied", MessageBoxButtons.OK, MessageBoxIcon.Information); } else if (IncomingPresencePacket is AvailableRequest) { AvailableRequest availableReq = WConvert.ToAvailableRequest(IncomingPresencePacket); LoginState state = LoginState.Offline; if (availableReq.From.Server.Contains(".com")) { state = (LoginState) availableReq.Show; } else { state = (LoginState) Enum.Parse(typeof (LoginState), availableReq.Status); } string userName = availableReq.From.UserName; Contact contact = Instance.Contacts[userName]; if (contact != null) { contact.UserStatus = state; if (availableReq.HasVCardAvatarUpdateHash) { if (availableReq.HasJabberXAvatarHash) { contact.AvatatType = Contact.AvatarType.JabberXAvatar; } /*else - we prefere VCardAvatar*/ if (availableReq.HasVCardAvatarUpdateHash) { contact.AvatatType = Contact.AvatarType.VCardAvatar; } contact.AvatarHash = availableReq.VCardAvatarUpdateHash; } } } else if (IncomingPresencePacket is UnavailableRequest) { UnavailableRequest avail = WConvert.ToUnavailableRequest(IncomingPresencePacket); string userName = avail.From.UserName; Contact contact = Instance.Contacts[userName]; contact.UserStatus = LoginState.Offline; } }
private void IncomingAsycPresenceThreadSafe(Packet p) { PresencePacket IncomingPresencePacket = p as PresencePacket; if (IncomingPresencePacket is Coversant.SoapBox.Core.Presence.ProbeRequest) { //A Probe means we should send ouur presence to the probing entity //Maybe we should get some user input here. Not really sure if theyd want to know, though. _SessionManager.SendCurrentPresence(IncomingPresencePacket.From); } else if (IncomingPresencePacket is Coversant.SoapBox.Core.Presence.SubscribeRequest) { string displayString = String.Format("Allow User '{0}; to subscribe to your presence?", IncomingPresencePacket.From.JabberIDNoResource); if (MessageBox.Show(displayString, "Subscription Request", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { SubscribedResponse resp = new SubscribedResponse(IncomingPresencePacket.From); _SessionManager.Send(resp); SubscribeRequest subscribe = new SubscribeRequest(new JabberID(IncomingPresencePacket.From.JabberIDNoResource)); _SessionManager.Send(subscribe); } else { UnsubscribedResponse resp = new UnsubscribedResponse(); resp.To = IncomingPresencePacket.From; _SessionManager.Send(resp); } } else if (IncomingPresencePacket is Coversant.SoapBox.Core.Presence.SubscribedResponse) { //Let the user know when someone accepts our subscription request string displayString = String.Format("User '{0}' has accepted your presence subscription request.", IncomingPresencePacket.From.JabberIDNoResource); MessageBox.Show(displayString, "Subscription Accept", MessageBoxButtons.OK, MessageBoxIcon.Information); } else if (IncomingPresencePacket is Coversant.SoapBox.Core.Presence.UnsubscribedResponse) { //Let the user know when someone revoked our presence subscription string displayString = String.Format("User '{0}' rejected your reqeust.", IncomingPresencePacket.From.JabberIDNoResource); MessageBox.Show(displayString, "Subscription Denied", MessageBoxButtons.OK, MessageBoxIcon.Information); } else if (IncomingPresencePacket is Coversant.SoapBox.Core.Presence.ErrorResponse) { //Let the user know of any presence errors that are received //Dim PresenceError As SoapBox.Core.Presence.ErrorResponse = CType(IncomingPresencePacket, SoapBox.Core.Presence.ErrorResponse) //MsgBox("The following presence error was received:" & vbCrLf & vbCrLf & "Code: " & PresenceError.ErrorCode & vbCrLf & "Text: " & PresenceError.ErrorText, MsgBoxStyle.Exclamation, "Presence Error") } else if (IncomingPresencePacket is Coversant.SoapBox.Core.Presence.AvailableRequest) { AvailableRequest avail = WConvert.ToAvailableRequest(IncomingPresencePacket); ListViewRosterItem lvri = this.GetListViewRosterItem(avail.From); if (lvri != null) lvri.Presence = avail; } else if (IncomingPresencePacket is Coversant.SoapBox.Core.Presence.UnavailableRequest) { UnavailableRequest avail = WConvert.ToUnavailableRequest(IncomingPresencePacket); ListViewRosterItem lvri = this.GetListViewRosterItem(avail.From); if (lvri != null) lvri.Presence = avail; } }
private void btnOk_Click(object sender, EventArgs e) { Hide(); ArrayList editgroup = new ArrayList(); if (ValidateInput() == false) { DialogResult = DialogResult.None; return; } foreach (Contact contact in AppController.Instance.Contacts) { if (contact.GroupName.Equals(cbOldgroup.SelectedItem.ToString(), StringComparison.OrdinalIgnoreCase)) { editgroup.Add(contact.UserName); } } for (int i = 0; i < editgroup.Count; i++) { Contact editGp = AppController.Instance.Contacts[editgroup[i].ToString()]; JabberID Jid = new JabberID(editGp.UserName.ToString(), editGp.ServerName.ToString(), Settings.Default.Resource); Contact delContact = new Contact(Jid, editGp.GroupName.ToString(), LoginState.Offline); Contact editContact = new Contact(Jid, tbNewGroup.Text.Trim(), LoginState.Offline); UnsubscribedResponse resp = new UnsubscribedResponse(Jid); AppController.Instance.SessionManager.Send(resp); AppController.Instance.SessionManager.BeginSend(new RosterRemove(Jid, editGp.UserName.ToString())); AppController.Instance.Contacts.Remove(delContact); SubscribeRequest p = new SubscribeRequest(Jid); AppController.Instance.SessionManager.Send(p); AppController.Instance.SessionManager.BeginSend( new RosterAdd(Jid, editGp.UserName.ToString(), tbNewGroup.Text.ToString())); AppController.Instance.Contacts.Add(editContact); AppController.Instance.MainWindow.UpdateContactList(); } }