public void Unsubscribe(Jid to, Jid from, Jid unsubscribe, string node, string subid, IqCB cb, object cbArgs) { var pubsubIq = new PubSubIq(IQType.Set, to); if (from != null) { pubsubIq.From = from; } var unsub = new Unsubscribe(node, unsubscribe); if (subid != null) { unsub.SubId = subid; } pubsubIq.PubSub.Unsubscribe = unsub; if (cb == null) { this.m_connection.Send(pubsubIq); } else { this.m_connection.IqGrabber.SendIq(pubsubIq, cb, cbArgs); } }
public void CreateCollectionNode(Jid to, Jid from, string node, bool defaultConfig, IqCB cb, object cbArgs) { var pubsubIq = new PubSubIq(IQType.Set, to); if (from != null) { pubsubIq.From = from; } pubsubIq.PubSub.Create = new Create(node, Type.Collection); if (defaultConfig) { pubsubIq.PubSub.Configure = new Configure(); } if (cb == null) { this.m_connection.Send(pubsubIq); } else { this.m_connection.IqGrabber.SendIq(pubsubIq, cb, cbArgs); } }
public void RequestSubscriptionOptions(Jid to, Jid from, Jid subscribe, string node, IqCB cb, object cbArgs) { var pubsubIq = new PubSubIq(IQType.Get, to); if (from != null) { pubsubIq.From = from; } pubsubIq.PubSub.Options = new Options(subscribe, node); if (cb == null) { this.m_connection.Send(pubsubIq); } else { this.m_connection.IqGrabber.SendIq(pubsubIq, cb, cbArgs); } }
public void RequestAffiliations(Jid to, Jid from, IqCB cb, object cbArgs) { var pubsubIq = new PubSubIq(IQType.Get, to); if (from != null) { pubsubIq.From = from; } pubsubIq.PubSub.Affiliations = new Affiliations(); if (cb == null) { this.m_connection.Send(pubsubIq); } else { this.m_connection.IqGrabber.SendIq(pubsubIq, cb, cbArgs); } }
public void CreateInstantNode(Jid to, Jid from, IqCB cb, object cbArgs) { var pubsubIq = new PubSubIq(IQType.Set, to); if (from != null) { pubsubIq.From = from; } pubsubIq.PubSub.Create = new Create(); if (cb == null) { this.m_connection.Send(pubsubIq); } else { this.m_connection.IqGrabber.SendIq(pubsubIq, cb, cbArgs); } }
public void Subscribe(Jid to, Jid from, Jid subscribe, string node, IqCB cb, object cbArgs) { var pubsubIq = new PubSubIq(IQType.Set, to); if (from != null) { pubsubIq.From = from; } pubsubIq.PubSub.Subscribe = new Subscribe(node, subscribe); if (cb == null) { this.m_connection.Send(pubsubIq); } else { this.m_connection.IqGrabber.SendIq(pubsubIq, cb, cbArgs); } }
public void RetractItem(Jid to, Jid from, string node, string id, IqCB cb, object cbArgs) { var pubsubIq = new PubSubIq(IQType.Set, to); if (from != null) { pubsubIq.From = from; } pubsubIq.PubSub.Retract = new Retract(node, id); if (cb == null) { this.m_connection.Send(pubsubIq); } else { this.m_connection.IqGrabber.SendIq(pubsubIq, cb, cbArgs); } }
/// <summary> /// Publish a payload to a Node /// </summary> /// <param name="to"></param> /// <param name="from"></param> /// <param name="node"></param> /// <param name="payload"></param> /// <param name="cb"></param> /// <param name="cbArgs"></param> public void PublishItem(Jid to, Jid from, string node, Item payload, IqCB cb, object cbArgs) { var pubsubIq = new PubSubIq(IQType.Set, to); if (from != null) { pubsubIq.From = from; } var publish = new Publish(node); publish.AddItem(payload); pubsubIq.PubSub.Publish = publish; if (cb == null) { this.m_connection.Send(pubsubIq); } else { this.m_connection.IqGrabber.SendIq(pubsubIq, cb, cbArgs); } }