zoukankan      html  css  js  c++  java
  • xmpp获取好友信息和添加删除好友(4)

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

    好友列表和好友名片

    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.   //XMPPHOST 就是服务器名,  主机名      
    5.     XMPPJID *jid = [XMPPJID jidWithString:[NSString stringWithFormat:@"%@@%@",name,XMPPHOST]];    
    6.     //[presence addAttributeWithName:@"subscription" stringValue:@"好友"];    
    7.     [xmppRoster subscribePresenceToUser:jid];    
    8.         
    9. }  
    1. //收到添加好友的请求  
    2. - (void)xmppRoster:(XMPPRoster *)sender didReceivePresenceSubscriptionRequest:(XMPPPresence *)presence    
    3. {    
    4.     //取得好友状态    
    5.     NSString *presenceType = [NSString stringWithFormat:@"%@", [presence type]]; //online/offline    
    6.     //请求的用户    
    7.     NSString *presenceFromUser =[NSString stringWithFormat:@"%@", [[presence from] user]];    
    8.     NSLog(@"presenceType:%@",presenceType);    
    9.         
    10.     NSLog(@"presence2:%@  sender2:%@",presence,sender);    
    11.         
    12.     XMPPJID *jid = [XMPPJID jidWithString:presenceFromUser];    
    13.     //接收添加好友请求  
    14.     [xmppRoster acceptPresenceSubscriptionRequestFrom:jid andAddToRoster:YES];    
    15.     
    16. }    



    删除好友

      1. //删除好友,name为好友账号  
      2. - (void)removeBuddy:(NSString *)name    
      3. {    
      4.     XMPPJID *jid = [XMPPJID jidWithString:[NSString stringWithFormat:@"%@@%@",name,XMPPHOST]];    
      5.         
      6.     [self xmppRoster] removeUser:jid];    
      7. }  
  • 相关阅读:
    01Python基础_02变量
    01Python基础_04输入输出方式
    01Python基础_03运算符
    Spring Cloud 入门教程 搭建配置中心服务
    Spring Cloud入门教程Hystrix断路器实现容错和降级
    Spring Boot 2.0.1 入门教程
    Spring Cloud入门教程Ribbon实现客户端负载均衡
    Spring Cloud 入门教程 Eureka服务注册与发现
    代理模式
    最短路径算法——Dijkstra and Floyd算法
  • 原文地址:https://www.cnblogs.com/yulang314/p/3705600.html
Copyright © 2011-2022 走看看