zoukankan      html  css  js  c++  java
  • xmpp好友状态4

    // 实现好友状态的获取 - 在线、离线  别的状态自己去写一下判断和回掉就好

    .h

     1 /*!
     2  *  @Author Dylan.
     3  *
     4  *  Paresence
     5  */
     6 typedef void (^userGoOnline) (NSString *);
     7 typedef void (^userGoOffline) (NSString *);
     8 
     9 - (void)refreshRosterPresence: (userGoOnline)online
    10                       offline: (userGoOffline)offline;

    .m

     1 #pragma mark presence
     2 - (void)refreshRosterPresence: (userGoOnline)online
     3                       offline: (userGoOffline)offline {
     4     
     5     self.rosterOnline = online;
     6     self.rosterOffline = offline;
     7 }
     8 
     9 - (void)xmppStream:(XMPPStream *)sender didReceivePresence:(XMPPPresence *)presence {
    10     
    11     // get presence type
    12     NSString * presenceType = [presence type];
    13     NSString * userID = [[sender myJID] user];
    14     
    15     NSString * presencrFromUser = [[presence from] user];
    16     if (![presencrFromUser isEqualToString:userID]) {
    17         if ([presenceType isEqualToString:@"available"]) {
    18             self.rosterOnline(presencrFromUser);
    19         } else if ([presenceType isEqualToString:@"unavailable"]) {
    20             self.rosterOffline(presencrFromUser);
    21         }
    22     }
    23 }

    补上Block回掉申明

    1 /*!
    2  *  call back block
    3  */
    4 @property (nonatomic, copy) userGoOnline rosterOnline;
    5 @property (nonatomic, copy) userGoOffline rosterOffline;
  • 相关阅读:
    浏览器版本过低
    虚拟PWN初探
    elasticsearch常用查询
    python安装pip模块
    spark-kafka-es交互 优化
    scala写文件
    python unittest
    scala collection(集合)
    spark-kafka-es交互
    scala语法
  • 原文地址:https://www.cnblogs.com/Dylan-Alice/p/Dylan_XMPP4.html
Copyright © 2011-2022 走看看