NIM PC Cross Platform SDK
nim_friend_def.h File Reference

好友 接口相关的常量函数等定义头文件 More...

Go to the source code of this file.

Typedefs

typedef void(* nim_friend_opt_cb_func) (int res_code, const char *json_extension, const void *user_data)
 
typedef void(* nim_friend_get_list_cb_func) (int res_code, const char *friend_list_json, const char *json_extension, const void *user_data)
 
typedef void(* nim_friend_get_profile_cb_func) (const char *accid, const char *friend_profile_json, const char *json_extension, const void *user_data)
 
typedef void(* nim_friend_change_cb_func) (enum NIMFriendChangeType type, const char *result_json, const char *json_extension, const void *user_data)
 

Enumerations

enum  NIMFriendFlag { kNIMFriendFlagNotFriend = 0 , kNIMFriendFlagNormal = 1 }
 
enum  NIMFriendSource { kNIMFriendSourceDefault = 0 }
 
enum  NIMVerifyType { kNIMVerifyTypeAdd = 1 , kNIMVerifyTypeAsk = 2 , kNIMVerifyTypeAgree = 3 , kNIMVerifyTypeReject = 4 }
 
enum  NIMFriendChangeType { kNIMFriendChangeTypeRequest = 1 , kNIMFriendChangeTypeDel = 2 , kNIMFriendChangeTypeUpdate = 3 , kNIMFriendChangeTypeSyncList = 5 }
 
enum  NIMFriendQueryType { kNIMFriendQueryDefault = 0 , kNIMFriendQueryByAccId = 1 , kNIMFriendQueryByAlias = 2 }
 

Variables

static const char * kNIMFriendKey = "list"
 好友简况 json array,
 
好友简况 Json Keys

例子 {"list" : [{"accid" : "litianyi01","beflag" : 1,"bits" : 0,"create_timetag" : 1439871983864,"flag" : 1,"source" : 0,"update_timetag" : 1439872006079}, ...]}

static const char * kNIMFriendKeyAccid = "accid"
 string, 好友帐号
 
static const char * kNIMFriendKeyFlag = "flag"
 NIMFriendFlag, 好友关系,修改时需要同步更新反向好友关系beflag.
 
static const char * kNIMFriendKeyBeFlag = "beflag"
 NIMFriendFlag, 反向好友关系
 
static const char * kNIMFriendKeySource = "source"
 NIMFriendSource, 好友来源
 
static const char * kNIMFriendKeyAlias = "alias"
 string, 备注名
 
static const char * kNIMFriendKeyBits = "bits"
 long, 扩展字段,位运算型
 
static const char * kNIMFriendKeyEx = "ex"
 string, 扩展字段,必须为可以解析为json的非格式化的字符串
 
static const char * kNIMFriendKeyCreateTime = "create_timetag"
 long, 创建时间戳(ms)
 
static const char * kNIMFriendKeyUpdateTime = "update_timetag"
 long, 更新时间戳(ms)
 
static const char * kNIMFriendServerEx = "server_ex"
 string, 服务端扩展字段,此字段客户端sdk只读,服务端api读写
 
删除好有拓展选项 Json Keys
static const char * kNIMFriendDeleteAlias = "delete_alias"
 bool, 删除好友时是否删除备注信息
 

Detailed Description

好友 接口相关的常量函数等定义头文件

Author
Oleg
Date
2015/08/13

Typedef Documentation

◆ nim_friend_change_cb_func

void(* nim_friend_change_cb_func)(NIMFriendChangeType type, const char *result_json,const char *json_extension, const void *user_data)

好友数据变化(添加、删除、更新)的监听回调函数定义

Parameters
[out]typeNIMFriendChangeType,数据变化类型
[out]result_json同步内容,kNIMFriendChangeTypeAdd: {"accid" : "abc", "type" : "NIMVerifyType", "msg" : "msg"} , kNIMFriendChangeTypeDel: {"accid" : "abc"}, kNIMFriendChangeTypeUpdate: {"info" : 好友简况 Json value }, kNIMFriendChangeTypeSyncList: {"list":[a , b , ...]}
[out]json_extensionjson扩展数据(备用)
[out]user_dataAPP的自定义用户数据,SDK只负责传回给回调函数,不做任何处理!
Returns
void 无返回值

◆ nim_friend_get_list_cb_func

void(* nim_friend_get_list_cb_func)(int res_code, const char *friend_list_json, const char *json_extension, const void *user_data)

增量获取好友列表的回调函数定义

Parameters
[out]res_code结果代码,一切正常200
[out]friend_list_json好友列表和好友资料Json字符串({"list":[a , b , ...]})
[out]json_extensionjson扩展数据(备用)
[out]user_dataAPP的自定义用户数据,SDK只负责传回给回调函数,不做任何处理!
Returns
void 无返回值

◆ nim_friend_get_profile_cb_func

void(* nim_friend_get_profile_cb_func)(const char *accid, const char *friend_profile_json, const char *json_extension, const void *user_data)

获取好友信息的回调函数定义

Parameters
[out]accid好友ID
[out]friend_profile_json好友简况
[out]json_extensionjson扩展数据(备用)
[out]user_dataAPP的自定义用户数据,SDK只负责传回给回调函数,不做任何处理!
Returns
void 无返回值

◆ nim_friend_opt_cb_func

void(* nim_friend_opt_cb_func)(int res_code, const char *json_extension, const void *user_data)

好友操作(添加、删除、更新)的回调函数定义

Parameters
[out]res_code结果代码,一切正常200
[out]json_extensionjson扩展数据(备用)
[out]user_dataAPP的自定义用户数据,SDK只负责传回给回调函数,不做任何处理!
Returns
void 无返回值

Enumeration Type Documentation

◆ NIMFriendChangeType

好友数据变化类型

Enumerator
kNIMFriendChangeTypeRequest 

加好友/处理好友请求

kNIMFriendChangeTypeDel 

删除好友

kNIMFriendChangeTypeUpdate 

更新好友

kNIMFriendChangeTypeSyncList 

好友列表同步与更新

◆ NIMFriendFlag

好友类型

Enumerator
kNIMFriendFlagNotFriend 

陌生人

kNIMFriendFlagNormal 

普通好友

◆ NIMFriendQueryType

查询好友信息的依据条件

Enumerator
kNIMFriendQueryDefault 

同时匹配账户ID和备注名

kNIMFriendQueryByAccId 

仅匹配账户ID

kNIMFriendQueryByAlias 

仅匹配备注名

◆ NIMFriendSource

好友来源

Enumerator
kNIMFriendSourceDefault 

默认

◆ NIMVerifyType

好友验证方式

Enumerator
kNIMVerifyTypeAdd 

直接加好友

kNIMVerifyTypeAsk 

请求加好友

kNIMVerifyTypeAgree 

同意

kNIMVerifyTypeReject 

拒绝