首页 > 代码库 > xmpp开发教程(六)-添加和删除好友

xmpp开发教程(六)-添加和删除好友

这章开发添加和删除好友的模块,首先列出里面主要的方法:

 1 [_xmppRoster fetchRoster];//获取好友列表   2    3 //获取到一个好友节点   4 - (void)xmppRoster:(XMPPRoster *)sender didRecieveRosterItem:(NSXMLElement *)item   5    6 //获取完好友列表   7 - (void)xmppRosterDidEndPopulating:(XMPPRoster *)sender   8    9 //到服务器上请求联系人名片信息  10 - (void)fetchvCardTempForJID:(XMPPJID *)jid;  11   12 //请求联系人的名片,如果数据库有就不请求,没有就发送名片请求  13 - (void)fetchvCardTempForJID:(XMPPJID *)jid ignoreStorage:(BOOL)ignoreStorage;  14   15 //获取联系人的名片,如果数据库有就返回,没有返回空,并到服务器上抓取  16 - (XMPPvCardTemp *)vCardTempForJID:(XMPPJID *)jid shouldFetch:(BOOL)shouldFetch;  17   18 //更新自己的名片信息  19 - (void)updateMyvCardTemp:(XMPPvCardTemp *)vCardTemp;  20   21 //获取到一盒联系人的名片信息的回调  22 - (void)xmppvCardTempModule:(XMPPvCardTempModule *)vCardTempModule   23         didReceivevCardTemp:(XMPPvCardTemp *)vCardTemp   24                      forJID:(XMPPJID *)jid 

 

添加好友

 1 //name为用户账号 2 - (void)XMPPAddFriendSubscribe:(NSString *)name 3 { 4     NSString *XMPPHOST=@"helloworldtekimac-mini.local"; 5     //XMPPHOST 就是服务器名,  主机名 6     XMPPJID *jid = [XMPPJID jidWithString:[NSString stringWithFormat:@"%@@%@",name,XMPPHOST]]; 7     //[presence addAttributeWithName:@"subscription" stringValue:@"好友"]; 8     [xmppRoster subscribePresenceToUser:jid]; 9     10 }

第8行是核心代码,负责向服务器提交添加好友的请求

 

删除好友

1 //删除好友,name为好友账号2 - (void)removeBuddy:(NSString *)name3 {4     NSString *XMPPHOST=@"helloworldtekimac-mini.local";5     6     XMPPJID *jid = [XMPPJID jidWithString:[NSString stringWithFormat:@"%@@%@",name,XMPPHOST]];7     8     [xmppRoster removeUser:jid];9 }

第8行是核心代码,负责想服务器提交删除好友的请求

 

xmpp开发教程(六)-添加和删除好友