首页 > 代码库 > xmpp好友请求5
xmpp好友请求5
实现好友请求
.m
1 #pragma mark - rosterHandle 2 3 // initRoster 4 - (void)initRoster { 5 self.xmppRosterMemory = [[XMPPRosterMemoryStorage alloc] init]; 6 self.xmppRoster = [[XMPPRoster alloc] initWithRosterStorage:self.xmppRosterMemory]; 7 [_xmppRoster addDelegate:self delegateQueue:dispatch_get_main_queue()]; 8 [_xmppRoster activate:self.xmppStream]; 9 }10 11 - (void)addFriend: (NSString *)accountName {12 [_xmppRoster addUser:[XMPPJID jidWithString:[accountName stringByAppendingString:DOMAINS]] withNickname:nil];13 }14 15 - (void)removeFriend: (NSString *)accountName {16 [_xmppRoster removeUser:[XMPPJID jidWithString:[accountName stringByAppendingString:DOMAINS]]];17 }18 19 // call back20 - (void)dealWithFriendAsk: (BOOL)isAgree21 accountName: (NSString *)accountName {22 XMPPJID * jid=[XMPPJID jidWithString:[NSString stringWithFormat:@"%@%@",accountName,DOMAINS]];23 if(isAgree){24 [self.xmppRoster acceptPresenceSubscriptionRequestFrom:jid andAddToRoster:NO];25 }else{26 [self.xmppRoster rejectPresenceSubscriptionRequestFrom:jid];27 }28 29 }30 31 #pragma mark addFriendDelegateMethods32 - (void)xmppRoster:(XMPPRoster *)sender didReceivePresenceSubscriptionRequest:(XMPPPresence *)presence {33 34 NSString *presenceFromUser =[NSString stringWithFormat:@"%@", [[presence from] user]];35 if (self.acceptOrDenyFriend != nil) {36 BOOL isAgree = self.acceptOrDenyFriend(presenceFromUser);37 [self dealWithFriendAsk:isAgree accountName:presenceFromUser];38 }39 }40 41 @end
.h
1 /*! 2 * @Author Dylan. 3 * 4 * addRoster. 5 */ 6 // if you want to deny or add friend. please call this block 7 @property (nonatomic, copy) BOOL (^acceptOrDenyFriend) (NSString *); 8 @property (nonatomic, strong) XMPPRoster * xmppRoster; 9 10 /*!11 * @Author Dylan. Methods12 */13 - (void)addFriend: (NSString *)accountName;14 - (void)removeFriend: (NSString *)accountName;
xmpp好友请求5
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。