XMPPFrameWork IOS 开发(五)获取好友信息和添加删除好友

原始地址: XMPPFrameWork IOS 开发(五)获取好友信息和添加删除好友


好友列表和好友名片

[_xmppRoster fetchRoster];//获取好友列表

//获取到一个好友节点
- (void)xmppRoster:(XMPPRoster *)sender didRecieveRosterItem:(NSXMLElement *)item

//获取完好友列表
- (void)xmppRosterDidEndPopulating:(XMPPRoster *)sender

//到服务器上请求联系人名片信息
- (void)fetchvCardTempForJID:(XMPPJID *)jid;

//请求联系人的名片,如果数据库有就不请求,没有就发送名片请求
- (void)fetchvCardTempForJID:(XMPPJID *)jid ignoreStorage:(BOOL)ignoreStorage;

//获取联系人的名片,如果数据库有就返回,没有返回空,并到服务器上抓取
- (XMPPvCardTemp *)vCardTempForJID:(XMPPJID *)jid shouldFetch:(BOOL)shouldFetch;

//更新自己的名片信息
- (void)updateMyvCardTemp:(XMPPvCardTemp *)vCardTemp;

//获取到一盒联系人的名片信息的回调
- (void)xmppvCardTempModule:(XMPPvCardTempModule *)vCardTempModule 
        didReceivevCardTemp:(XMPPvCardTemp *)vCardTemp 
                     forJID:(XMPPJID *)jid

添加好友

//name为用户账号
- (void)XMPPAddFriendSubscribe:(NSString *)name  
{  
  //XMPPHOST 就是服务器名,  主机名    
    XMPPJID *jid = [XMPPJID jidWithString:[NSString stringWithFormat:@"%@@%@",name,XMPPHOST]];  
    //[presence addAttributeWithName:@"subscription" stringValue:@"好友"];  
    [xmppRoster subscribePresenceToUser:jid];  
      
}

//收到添加好友的请求
- (void)xmppRoster:(XMPPRoster *)sender didReceivePresenceSubscriptionRequest:(XMPPPresence *)presence  
{  
    //取得好友状态  
    NSString *presenceType = [NSString stringWithFormat:@"%@", [presence type]]; //online/offline  
    //请求的用户  
    NSString *presenceFromUser =[NSString stringWithFormat:@"%@", [[presence from] user]];  
    NSLog(@"presenceType:%@",presenceType);  
      
    NSLog(@"presence2:%@  sender2:%@",presence,sender);  
      
    XMPPJID *jid = [XMPPJID jidWithString:presenceFromUser];  
    //接收添加好友请求
    [xmppRoster acceptPresenceSubscriptionRequestFrom:jid andAddToRoster:YES];  
  
}  


删除好友

//删除好友,name为好友账号
- (void)removeBuddy:(NSString *)name  
{  
    XMPPJID *jid = [XMPPJID jidWithString:[NSString stringWithFormat:@"%@@%@",name,XMPPHOST]];  
      
    [self xmppRoster] removeUser:jid];  
}


  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 21
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值