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 back
20 - (void)dealWithFriendAsk: (BOOL)isAgree
21               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 addFriendDelegateMethods
32 - (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. Methods
12  */
13 - (void)addFriend: (NSString *)accountName;
14 - (void)removeFriend: (NSString *)accountName;
时间: 2024-08-24 13:21:48

xmpp好友请求5的相关文章

UI进阶 即时通讯之XMPP好友列表、添加好友、获取会话内容、简单聊天

这篇博客的代码是直接在上篇博客的基础上增加的,先给出部分代码,最后会给出能实现简单功能的完整代码. UI进阶 即时通讯之XMPP登录.注册 1.好友列表 初始化好友花名册 1 #pragma mark - 管理好友 2 // 获取管理好友的单例对象 3 XMPPRosterCoreDataStorage *rosterStorage = [XMPPRosterCoreDataStorage sharedInstance]; 4 // 用管理好友的单例对象初始化Roster花名册 5 // 好友操

即时通讯之XMPP好友列表、添加好友、获取会话内容、简单聊天

1.好友列表 初始化好友花名册 1 #pragma mark - 管理好友 2 // 获取管理好友的单例对象 3 XMPPRosterCoreDataStorage *rosterStorage = [XMPPRosterCoreDataStorage sharedInstance]; 4 // 用管理好友的单例对象初始化Roster花名册 5 // 好友操作是耗时操作 6 self.xmppRoster = [[XMPPRoster alloc] initWithRosterStorage:r

李洪强iOS开发本人集成环信的经验总结_09_处理好友请求

李洪强iOS开发本人集成环信的经验总结_09_处理好友请求 实现这种效果: 01 - 遵守处理好友请求的代理协议 02  - 设置代理 03 - 实现代理方法 04 - 实现代理中用到的方法 

QQ好友请求自动同意软件(管家协议登录)

QQ好友请求自动同意软件 软件功能:批量登录一批QQ小号,自动同意QQ小号中的好友添加请求![QQ加人方式修改器(免费哦)] 特别提醒:此款软件不适合处理请求非常非常多的QQ!少量请求还是得心应手的! 两款都是一样的,QQ登录协议不同罢了,推荐QQ管家协议登录,登录验证码不会有中文! 注意:新手不会用就算了,免费软件我们禁止咨询客服的!客服不解答免费软件的任何问题!客服繁忙请谅解!觉得不好就删除这款软件即可!如有BUG可以联系客服哦!警告:软件纯属是本人无聊制作!不喜欢或觉得没用的请勿下载即可!

PC端 Spark 二次开发 自动接收好友请求并同意

本次Spark二次开发是为了客服模块的开发, 能让用户一旦点击该客服则直接自动添加好友,而客服放则需自动添加好友,不同弹出对话框进行同意,这方便的广大客服. 现在废话不多说,直接上代码. package org.jivesoftware.spark.ui; import java.util.ArrayList; import org.jivesoftware.spark.util.log.Log; import org.jivesoftware.spark.util.ModelUtil; imp

微信开发SDK使用教程--手机微信有好友请求添加好友的通知服务端

微信开发SDK使用教程--手机微信有好友请求添加好友的通知服务端 case FriendAddReqeustNotice: {//有好友请求添加好友的通知 log.debug("socket:msgtype=FriendAddReqeustNotice"); friendAddReqeustNoticeHandler.handleMsg(ctx, msgVo); break; } package com.jubotech.framework.netty.handler.socket;

如何利用工具自动通过百度网盘好友请求并发送消息或文件

在百度网盘营销过程中,特别是资源类相关的网盘帐号,有时需要在自动通过好友请求并发送一些文字消息如(资源介绍)以及公众号二维码图片之类的需求,如果手工操作则非常痛苦,下面介绍如何利用工具来达到自动通过好友请求并发送文字消息或文件. 一,首先下载工具“https://pan.baidu.com/s/13yPBCs9Et_tQ9HVVCu5b2A”: 二,在帐号管理中登录并获取COOKIE,保存后,右键帐号登录. ? 第三步:切换到自动通过好友请求选项卡 ? ①设置每次间隔运行时间,如果要发送消息则勾

XMPP系列(三)---获取好友列表、添加好友

1.心跳检测.掉线重连功能 客户端和服务器端都可以设置多久发送一次心跳包,如果对方没有返回正确的pong信息,则会断开连接,而添加掉线重连功能,则会自动进行连接. 如果自己写聊天功能还得自己做心跳检测和掉线重连,比较麻烦.好在XMPP中已经做了心跳检测和掉线重连的模块,只需要几行代码加进去就能实现掉线重连,非常方便. XMPP中Extensions文件下都是可以自己添加的Module,它们都继承自XMPPModule,而添加的方法也非常的简单: <span style="font-size

xmpp整理笔记:用户网络连接及好友的管理

xmpp中的用户连接模块包括用户的上线与下线信息展现,用户登录,用户的注册: 好友模块包括好友的添加,好友的删除,好友列表的展示. 在xmpp中 负责数据传输的类是xmppStream,开发的过程中,针对不同的传输内容,会调用不同的代理方法,在使用XMPPFramework开发时,只需要在不同的代理方法中,填写相同的代码即可. 往期回顾: xmpp整理笔记:xmppFramework框架的导入和介绍  http://www.cnblogs.com/dsxniubility/p/4307057.h