代码之家  ›  专栏  ›  技术社区  ›  Mohammad Shokouhi Gol

如何在agsXMPP中获取我的Vcard?

  •  0
  • Mohammad Shokouhi Gol  · 技术社区  · 11 年前

    我想从服务器获取我的Vcard。 我通过以下代码将我的Vcard发送到服务器:

    VcardIq viq = new VcardIq(IqType.set, new Jid(XmppCon.Server));
    viq.Vcard.Nickname = "Alex";
    XmppCon.Send(viq); 
    

    我从 this ,这是如何获取其他用户的Vcard的。但此方法不适用于我的注册Id。 有人能帮我从agsXMPP的服务器获取我的Vcard吗?

    1 回复  |  直到 7 年前
        1
  •  2
  •   Alex    11 年前

    下面是一个示例代码

    public void GetMyVcard()
    {
      VcardIq viq = new VcardIq(IqType.get);  
      xmppCon.IqGrabber.SendIq(viq, new IqCB(VcardResult), null);
    }
    
    private void VcardResult(object sender, IQ iq, object data)
    {
      if (iq.Type == IqType.result)
      {
        Vcard vcard = iq.Vcard;
        if (vcard != null)
        {
          string fullname = vcard.Fullname;
          string nickname = vcard.Nickname;
          string description = vcard.Description;
          Photo photo = vcard.Photo;       
        }
      }
    }
    
    推荐文章