TIMFriendshipManager.h
6.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
//
// TIMFriendshipManager.h
// imsdk
//
// Created by annidyfeng on 2019/3/7.
// Copyright © 2019年 Tencent. All rights reserved.
//
#ifndef TIMFriendshipManager_h
#define TIMFriendshipManager_h
#import "TIMComm.h"
#import "TIMFriendshipDefine.h"
@interface TIMFriendshipManager : NSObject
/**
* 获取好友管理器实例
*
* @return 管理器实例
*/
+ (TIMFriendshipManager*)sharedInstance;
/**
* 设置自己的资料
*
* @param values 需要更新的属性,可一次更新多个字段. 参见 TIMFriendshipDefine.h 的 TIMProfileTypeKey_XXX
* @param succ 成功回调
* @param fail 失败回调
*
* @return 0 发送请求成功
*/
- (int)modifySelfProfile:(NSDictionary<NSString *, id> *)values succ:(TIMSucc)succ fail:(TIMFail)fail;
/**
* 获取自己的资料
*
* @param succ 成功回调,返回 TIMUserProfile
* @param fail 失败回调
*
* @return 0 发送请求成功
*/
- (int)getSelfProfile:(TIMGetProfileSucc)succ fail:(TIMFail)fail;
/**
* 获取指定用户资料
*
* @param identifiers 用户id,非好友的用户也可以
* @prarm forceUpdate 强制从后台拉取
* @param succ 成功回调
* @param fail 失败回调
*
* @return 0 发送请求成功
*/
- (int)getUsersProfile:(NSArray<NSString *> *)identifiers forceUpdate:(BOOL)forceUpdate succ:(TIMUserProfileArraySucc)succ fail:(TIMFail)fail;
/**
* 获取好友列表
*
* @param succ 成功回调,返回好友(TIMFriend)列表
* @param fail 失败回调
*
* @return 0 发送请求成功
*/
-(int)getFriendList:(TIMFriendArraySucc)succ fail:(TIMFail)fail;
/**
* 添加好友
*
* @param request 添加好友请求
* @param succ 成功回调(TIMFriendResult)
* @param fail 失败回调
*
* @return 0 发送请求成功
*/
- (int)addFriend:(TIMFriendRequest *)request succ:(TIMFriendResultSucc)succ fail:(TIMFail)fail;
/**
* 响应对方好友邀请
*
* @param response 响应请求
* @param succ 成功回调
* @param fail 失败回调
*
* @return 0 发送请求成功
*/
- (int)doResponse:(TIMFriendResponse *)response succ:(TIMFriendResultSucc)succ fail:(TIMFail)fail;
/**
* 删除好友
*
* @param identifiers 好友id
* @param delType 删除类型(单向好友、双向好友)
* @param succ 成功回调([TIMFriendResult])
* @param fail 失败回调
*
* @return 0 发送请求成功
*/
- (int)deleteFriends:(NSArray *)identifiers delType:(TIMDelFriendType)delType succ:(TIMFriendResultArraySucc)succ fail:(TIMFail)fail;
/**
* 修改好友
*
* @param identifier 好友id
* @param values 需要更新的属性,可一次更新多个字段. 参见 TIMFriendshipDefine.h 的 TIMFriendTypeKey_XXX
* @param succ 成功回调
* @param fail 失败回调
*
* @return 0 发送请求成功
*/
- (int)modifyFriend:(NSString *)identifier values:(NSDictionary<NSString *, id> *)values succ:(TIMSucc)succ fail:(TIMFail)fail;
/**
* 未决列表请求
*
* @param pendencyRequest 请求信息,详细参考TIMFriendPendencyRequest
* @param succ 成功回调
* @param fail 失败回调
*
* @return 0 发送请求成功
*/
- (int)getPendencyList:(TIMFriendPendencyRequest *)pendencyRequest succ:(TIMGetFriendPendencyListSucc)succ fail:(TIMFail)fail;
/**
* 未决删除
*
* @param type 未决好友类型
* @param identifiers 要删除的未决列表
* @param succ 成功回调
* @param fail 失败回调
*
* @return 0 发送请求成功
*/
- (int)deletePendency:(TIMPendencyType)type users:(NSArray *)identifiers succ:(TIMSucc)succ fail:(TIMFail)fail;
/**
* 未决已读上报
*
* @param timestamp 已读时间戳,此时间戳以前的消息都将置为已读
* @param succ 成功回调
* @param fail 失败回调
*
* @return 0 发送请求成功
*/
- (int)pendencyReport:(uint64_t)timestamp succ:(TIMSucc)succ fail:(TIMFail)fail;
/**
* 获取黑名单列表
*
* @param succ 成功回调,返回NSString*列表
* @param fail 失败回调
*
* @return 0 发送请求成功
*/
- (int)getBlackList:(TIMFriendArraySucc)succ fail:(TIMFail)fail;
/**
* 添加用户到黑名单
*
* @param identifiers 用户列表
* @param succ 成功回调
* @param fail 失败回调
*
* @return 0 发送请求成功
*/
- (int)addBlackList:(NSArray *)identifiers succ:(TIMFriendResultArraySucc)succ fail:(TIMFail)fail;
/**
* 把用户从黑名单中删除
*
* @param identifiers 用户列表
* @param succ 成功回调
* @param fail 失败回调
*
* @return 0 发送请求成功
*/
- (int)deleteBlackList:(NSArray *)identifiers succ:(TIMFriendResultArraySucc)succ fail:(TIMFail)fail;
/**
* 新建好友分组
*
* @param groupNames 分组名称列表,必须是当前不存在的分组
* @param identifiers 要添加到分组中的好友
* @param succ 成功回调
* @param fail 失败回调
*
* @return 0 发送请求成功
*/
- (int)createFriendGroup:(NSArray *)groupNames users:(NSArray *)identifiers succ:(TIMFriendResultArraySucc)succ fail:(TIMFail)fail;
/**
* 获取指定的好友分组信息
*
* @param groupNames 要获取信息的好友分组名称列表,传入nil获得所有分组信息
* @param succ 成功回调,返回 TIMFriendGroup* 列表
* @param fail 失败回调
*
* @return 0 发送请求成功
*/
- (int)getFriendGroups:(NSArray *)groupNames succ:(TIMFriendGroupArraySucc)succ fail:(TIMFail)fail;
/**
* 删除好友分组
*
* @param groupNames 要删除的好友分组名称列表
* @param succ 成功回调
* @param fail 失败回调
*
* @return 0 发送请求成功
*/
- (int)deleteFriendGroup:(NSArray *)groupNames succ:(TIMSucc)succ fail:(TIMFail)fail;
/**
* 修改好友分组的名称
*
* @param oldName 原来的分组名称
* @param newName 新的分组名称
* @param succ 成功回调
* @param fail 失败回调
*
* @return 0 发送请求成功
*/
- (int)renameFriendGroup:(NSString*)oldName newName:(NSString*)newName succ:(TIMSucc)succ fail:(TIMFail)fail;
/**
* 添加好友到一个好友分组
*
* @param groupName 好友分组名称
* @param identifiers 要添加到分组中的好友
* @param succ 成功回调
* @param fail 失败回调
*
* @return 0 发送请求成功
*/
- (int)addFriendsToFriendGroup:(NSString *)groupName users:(NSArray *)identifiers succ:(TIMFriendResultArraySucc)succ fail:(TIMFail)fail;
/**
* 从好友分组中删除好友
*
* @param groupName 好友分组名称
* @param identifiers 要移出分组的好友
* @param succ 成功回调
* @param fail 失败回调
*
* @return 0 发送请求成功
*/
- (int)deleteFriendsFromFriendGroup:(NSString *)groupName users:(NSArray *)identifiers succ:(TIMFriendResultArraySucc)succ fail:(TIMFail)fail;
@end
#endif /* TIMFriendshipManager_h */