public FileTransfer(XmppClientConnection xmppCon, IQ iq, IContact from) : base(from) { _siIq = iq; _si = iq.SelectSingleElement(typeof (SI)) as SI; if (_si != null) { // get SID for file transfer _sid = _si.Id; _file = _si.File; Contact = from; if (_file != null) { _fileLength = _file.Size; FileDescription = _file.Description; FileName = _file.Name; } _xmppConnection = xmppCon; } }
public frmFileTransfer(XmppClientConnection XmppCon, IQ iq) { InitializeComponent(); cmdSend.Enabled = false; this.Text = "Receive File from " + iq.From.ToString(); siIq = iq; si = iq.SelectSingleElement(typeof(agsXMPP.protocol.extensions.si.SI)) as agsXMPP.protocol.extensions.si.SI; // get SID for file transfer m_Sid = si.Id; m_From = iq.From; file = si.File; if (file != null) { m_lFileLength = file.Size; this.lblDescription.Text = file.Description; this.lblFileName.Text = file.Name; this.lblFileSize.Text = HRSize(m_lFileLength); this.txtDescription.Visible = false; } m_XmppCon = XmppCon; this.progress.Maximum = 100; //this.Text += iq.From.ToString(); //this.tbFileSize.Text = FileTransferUtils.ConvertToByteString(m_lFileLength); XmppCon.OnIq += new IqHandler(XmppCon_OnIq); }
public frmFileTransfer(XmppClientConnection XmppCon, IQ iq) { InitializeComponent(); cmdSend.Enabled = false; this.Text = "Receive File from " + iq.From.ToString(); siIq = iq; si = iq.SelectSingleElement(typeof(agsXMPP.protocol.extensions.si.SI)) as agsXMPP.protocol.extensions.si.SI; // get SID for file transfer m_Sid = si.Id; m_From = iq.From; file = si.File; if (file != null) { m_lFileLength = file.Size; this.lblDescription.Text = file.Description; this.lblFileName.Text = file.Name; this.lblFileSize.Text = HRSize(m_lFileLength); this.txtDescription.Visible = false; } m_XmppCon = XmppCon; this.progress.Maximum = 100; //this.Text += iq.From.ToString(); //this.tbFileSize.Text = FileTransferUtils.ConvertToByteString(m_lFileLength); XmppCon.OnIq += new IqHandler(XmppCon_OnIq); }
public FileTransfer(XmppClientConnection XmppCon, IQ iq) { Console.WriteLine("Accepting a file from " + iq.From.ToString()); siIq = iq; si = iq.SelectSingleElement(typeof(agsXMPP.protocol.extensions.si.SI)) as agsXMPP.protocol.extensions.si.SI; // get SID for file transfer m_Sid = si.Id; m_From = iq.From; file = si.File; m_lFileLength = file.Size; m_XmppCon = XmppCon; XmppCon.OnIq += new IqHandler(XmppCon_OnIq); agsXMPP.protocol.extensions.featureneg.FeatureNeg fNeg = si.FeatureNeg; if (fNeg != null) { agsXMPP.protocol.x.data.Data data = fNeg.Data; if (data != null) { agsXMPP.protocol.x.data.Field[] field = data.GetFields(); if (field.Length == 1) { Dictionary <string, string> methods = new Dictionary <string, string>(); foreach (agsXMPP.protocol.x.data.Option o in field[0].GetOptions()) { string val = o.GetValue(); methods.Add(val, val); } if (methods.ContainsKey(agsXMPP.Uri.BYTESTREAMS)) { // supports bytestream, so choose this option agsXMPP.protocol.extensions.si.SIIq sIq = new agsXMPP.protocol.extensions.si.SIIq(); sIq.Id = siIq.Id; sIq.To = siIq.From; sIq.Type = IqType.result; sIq.SI.Id = si.Id; sIq.SI.FeatureNeg = new agsXMPP.protocol.extensions.featureneg.FeatureNeg(); Data xdata = new Data(); xdata.Type = XDataFormType.submit; Field f = new Field(); //f.Type = FieldType.List_Single; f.Var = "stream-method"; f.AddValue(agsXMPP.Uri.BYTESTREAMS); xdata.AddField(f); sIq.SI.FeatureNeg.Data = xdata; m_XmppCon.Send(sIq); } } } } }