修改昵称,这么简单的功能,在jabberNet里怎么实现?
翻遍了jabberNet里的代码,jabber.client.RosterManager也,JabberClient也,似乎都没有现成的方法。
经过多次试验,发现可以这样写:
public void SetNickname(JID jid,string nickname)
{
string strSql = String.Format(@"
<iq id='changenick1' type='set'>
<query xmlns='jabber:iq:roster'>
<item jid='{0}' name='{1}' />
</query>
</iq>",jid.ToString(),nickname);
jc.Write(strSql);
}
至于这种“SQL语句”(XML)为什么这样写,要扯到XMPP身上。我还没来得及对XMPP进行了解。XMPP的一个参考网址如下: