NIM PC Cross Platform SDK
载入中...
搜索中...
未找到
nim_rts_def.h 文件参考

实时会话(数据通道) 接口相关的常量函数等定义头文件 更多...

浏览源代码.

类型定义

typedef void(* nim_rts_start_cb_func) (int code, const char *session_id, int channel_type, const char *uid, const char *json_extension, const void *user_data)
 
typedef void(* nim_rts_start_notify_cb_func) (const char *session_id, int channel_type, const char *uid, const char *json_extension, const void *user_data)
 
typedef void(* nim_rts_create_cb_func) (int code, const char *json_extension, const void *user_data)
 
typedef void(* nim_rts_join_cb_func) (int code, const char *session_id, const char *json_extension, const void *user_data)
 
typedef void(* nim_rts_ack_res_cb_func) (int code, const char *session_id, int channel_type, bool accept, const char *json_extension, const void *user_data)
 
typedef void(* nim_rts_ack_notify_cb_func) (const char *session_id, int channel_type, bool accept, const char *uid, const char *json_extension, const void *user_data)
 
typedef void(* nim_rts_sync_ack_notify_cb_func) (const char *session_id, int channel_type, bool accept, const char *json_extension, const void *user_data)
 
typedef void(* nim_rts_connect_notify_cb_func) (const char *session_id, int channel_type, int code, const char *json_extension, const void *user_data)
 
typedef void(* nim_rts_member_change_cb_func) (const char *session_id, int channel_type, int type, const char *uid, const char *json_extension, const void *user_data)
 
typedef void(* nim_rts_control_res_cb_func) (int code, const char *session_id, const char *info, const char *json_extension, const void *user_data)
 
typedef void(* nim_rts_control_notify_cb_func) (const char *session_id, const char *info, const char *uid, const char *json_extension, const void *user_data)
 
typedef void(* nim_rts_hangup_res_cb_func) (int code, const char *session_id, const char *json_extension, const void *user_data)
 
typedef void(* nim_rts_hangup_notify_cb_func) (const char *session_id, const char *uid, const char *json_extension, const void *user_data)
 
typedef void(* nim_rts_rec_data_cb_func) (const char *session_id, int channel_type, const char *uid, const char *data, unsigned int size, const char *json_extension, const void *user_data)
 
typedef void(* nim_rts_opt_cb_func) (int code, const char *session_id, int channel_type, const char *json_extension, const void *user_data)
 

枚举

enum  NIMRtsChannelType { kNIMRtsChannelTypeNone = 0 , kNIMRtsChannelTypeTcp = 1 , kNIMRtsChannelTypeUdp = 2 , kNIMRtsChannelTypeVchat = 4 }
 
enum  NIMRtsMemberStatus { kNIMRtsMemberStatusJoined = 0 , kNIMRtsMemberStatusLeaved = 1 }
 
enum  NIMRtsMemberLeftType { kNIMRtsMemberLeftTimeout = -1 , kNIMRtsMemberLeftNormal = 0 }
 
enum  NIMRtsVideoChatMode { kNIMRtsVideoChatModeAudio = 1 , kNIMRtsVideoChatModeVideo = 2 }
 
enum  NIMRtsConnectStatus {
  kNIMRtsConnectStatusDisconn = 0 , kNIMRtsConnectStatusStartFail = 1 , kNIMRtsConnectStatusTimeout = 101 , kNIMRtsConnectStatusSuccess = 200 ,
  kNIMRtsConnectStatusInvalidParam = 400 , kNIMRtsConnectStatusDesKey = 401 , kNIMRtsConnectStatusInvalidRequst = 417 , kNIMRtsConnectStatusServerUnknown = 500 ,
  kNIMRtsConnectStatusLogout = 1001
}
 

变量

json extension params for nim_rts_start and nim_rts_ack

for example: 参数可选,例子中是不填时的默认值 {"mode": 1, "custom_video":0, "custom_audio":0, "data_record":0, "session_id":"b76e2b7ae065224499e4d7138d643961" }

static const char * kNIMRtsSessionId = "session_id"
 string 发起会话的标识id,将在创建点对点和多人通话时,如果填写了此参数优先使用用户填写的session_id
 
static const char * kNIMRtsVChatMode = "mode"
 int NIMRtsVideoChatMode,非视频模式时不会发送视频数据
 
static const char * kNIMRtsVChatCustomVideo = "custom_video"
 int 是否用自主的视频数据 >0表示是
 
static const char * kNIMRtsVChatCustomAudio = "custom_audio"
 int 是否用自主的音频数据 >0表示是
 
static const char * kNIMRtsDataRecord = "data_record"
 int 是否需要服务器录制白板数据 >0表示是
 
static const char * kNIMRtsAudioRecord = "audio_record"
 int 是否需要服务器录制音频数据 >0表示是
 
static const char * kNIMRtsApnsText = "apns"
 string 推送用的文本 nim_rts_ack无效
 
static const char * kNIMRtsCreateCustomInfo = "custom_info"
 string 自定义数据,透传给被邀请方 nim_rts_ack无效
 
static const char * kNIMRtsPushEnable = "push_enable"
 int 是否需要推送 >0表示是 默认是
 
static const char * kNIMRtsNeedBadge = "need_badge"
 int 是否需要角标计数 >0表示是 默认是
 
static const char * kNIMRtsNeedFromNick = "need_nick"
 int 是否需要推送昵称 >0表示是 默认是
 
static const char * kNIMRtsApnsPayload = "payload"
 string JSON格式,推送payload
 
static const char * kNIMRtsSound = "sound"
 string 推送声音
 
static const char * kNIMRtsKeepCalling = "keepcalling"
 int, 是否强制持续呼叫(对方离线也会呼叫),1表示是,0表示否。默认是
 
static const char * kNIMRtsWebRtc = "webrtc"
 int, 是否支持webrtc互通(针对点对点中的音频通话)
 
json extension params for nim_rts_start_cb_func nim_rts_connect_notify_cb_func

for example: {"channel_id": 1231 }

static const char * kNIMRtsChannelId = "channel_id"
 int64 通话的通道id
 
json extension params for nim_rts_join_cb_func

for example: {"channel_id": 1231, "custom_info":"hello world" }

static const char * kNIMRtsCustomInfo = "custom_info"
 string 自定义数据
 
json extension params for nim_rts_send_data

for example: {"uid": "abc" }

static const char * kNIMRtsUid = "uid"
 string 用户账号uid
 
json extension params for nim_rts_connect_notify_cb_func nim_rts_connect_notify_cb_func

for example: {"record_addr": "", "record_file":"" }

static const char * kNIMRtsRecordAddr = "record_addr"
 string 录制地址(服务器开启录制时有效)
 
static const char * kNIMRtsRecordFile = "record_file"
 string 录制的文件名(服务器开启录制时有效,音视频类型时为音频文件名)
 
static const char * kNIMRtsVideoRecordFile = "video_record_file"
 string 录制的视频文件名(服务器开启录制时有效)
 
json extension params for nim_rts_sync_ack_notify_cb_func

for example: {"client_type": 1 }

static const char * kNIMRtsClientType = "client_type"
 int 客户端类型NIMClientType,见nim_client_def.h
 
json extension params for nim_rts_member_change_cb_func

for example: {"client_type": 1 }

static const char * kNIMRtsLeaveType = "leave_type"
 int 客户端类型NIMRtsMemberLeftType,见nim_client_def.h
 

详细描述

实时会话(数据通道) 接口相关的常量函数等定义头文件

作者
gq
日期
2015/6/30

类型定义说明

◆ nim_rts_ack_notify_cb_func

void(* nim_rts_ack_notify_cb_func)(const char *session_id, int channel_type, bool accept, const char *uid, const char *json_extension, const void *user_data)

NIM RTS 收到对方回复邀请的通知

参数
[out]session_id会话id
[out]channel_type通道类型
[out]accept是否接受
[out]uid对方帐号
[out]json_extension无效的扩展字段
[out]user_dataAPP的自定义用户数据,SDK只负责传回给回调函数,不做任何处理!
返回
void 无返回值

◆ nim_rts_ack_res_cb_func

void(* nim_rts_ack_res_cb_func)(int code, const char *session_id, int channel_type, bool accept, const char *json_extension, const void *user_data)

NIM RTS 回复收到邀请的结果

参数
[out]code调用结果
[out]session_id会话id
[out]channel_type通道类型
[out]accept是否接受
[out]json_extension无效的扩展字段
[out]user_dataAPP的自定义用户数据,SDK只负责传回给回调函数,不做任何处理!
返回
void 无返回值

◆ nim_rts_connect_notify_cb_func

void(* nim_rts_connect_notify_cb_func)(const char *session_id, int channel_type, int code, const char *json_extension, const void *user_data)

NIM RTS 通道连接状态通知

参数
[out]session_id会话id
[out]channel_type通道类型
[out]code状态码见NIMRtsConnectStatus
[out]json_extension成功时带录制的地址和文件名,服务器开启录制时有效
[out]user_dataAPP的自定义用户数据,SDK只负责传回给回调函数,不做任何处理!
返回
void 无返回值

◆ nim_rts_control_notify_cb_func

void(* nim_rts_control_notify_cb_func)(const char *session_id, const char *info, const char *uid, const char *json_extension, const void *user_data)

NIM RTS 控制消息通知回调

参数
[out]session_id会话id
[out]info透传数据
[out]uid对方帐号
[out]json_extension无效的扩展字段
[out]user_dataAPP的自定义用户数据,SDK只负责传回给回调函数,不做任何处理!
返回
void 无返回值

◆ nim_rts_control_res_cb_func

void(* nim_rts_control_res_cb_func)(int code, const char *session_id, const char *info, const char *json_extension, const void *user_data)

NIM RTS 控制接口调用结果

参数
[out]code调用结果
[out]session_id会话id
[out]info透传数据
[out]json_extension无效的扩展字段
[out]user_dataAPP的自定义用户数据,SDK只负责传回给回调函数,不做任何处理!
返回
void 无返回值

◆ nim_rts_create_cb_func

void(* nim_rts_create_cb_func)(int code, const char *session_id, const char *json_extension, const void *user_data)

NIM RTS 创建多人rts返回结果

参数
[out]code调用结果
[out]json_extension无效的扩展字段
[out]user_dataAPP的自定义用户数据,SDK只负责传回给回调函数,不做任何处理!
返回
void 无返回值

◆ nim_rts_hangup_notify_cb_func

void(* nim_rts_hangup_notify_cb_func)(const char *session_id, const char *uid, const char *json_extension, const void *user_data)

NIM RTS 挂断会话通知回调

参数
[out]session_id会话id
[out]uid对方帐号
[out]json_extension无效的扩展字段
[out]user_dataAPP的自定义用户数据,SDK只负责传回给回调函数,不做任何处理!
返回
void 无返回值

◆ nim_rts_hangup_res_cb_func

void(* nim_rts_hangup_res_cb_func)(int code, const char *session_id, const char *json_extension, const void *user_data)

NIM RTS 挂断会话调用结果

参数
[out]code调用结果
[out]session_id会话id
[out]json_extension无效的扩展字段
[out]user_dataAPP的自定义用户数据,SDK只负责传回给回调函数,不做任何处理!
返回
void 无返回值

◆ nim_rts_join_cb_func

void(* nim_rts_join_cb_func)(int code, const char *session_id, const char *json_extension, const void *user_data)

NIM RTS 加入多人rts返回结果

参数
[out]code调用结果
[out]session_id会话id
[out]json_extension扩展字段,若成功返回创建的kNIMRtsCustomInfo及kNIMRtsChannelId,如{"channel_id": 1231, "custom_info":"hello world" }
[out]user_dataAPP的自定义用户数据,SDK只负责传回给回调函数,不做任何处理!
返回
void 无返回值

◆ nim_rts_member_change_cb_func

void(* nim_rts_member_change_cb_func)(const char *session_id, int channel_type, int type, const char *uid, const char *json_extension, const void *user_data)

NIM RTS 通道连接成员变化通知

参数
[out]session_id会话id
[out]channel_type通道类型
[out]type成员变化类型见NIMRtsMemberStatus
[out]uid对方帐号
[out]json_extension如果是成员离开,返回kNIMRtsLeaveType
[out]user_dataAPP的自定义用户数据,SDK只负责传回给回调函数,不做任何处理!
返回
void 无返回值

◆ nim_rts_opt_cb_func

void(* nim_rts_opt_cb_func)(int code, const char *session_id, int channel_type, const char *json_extension, const void *user_data)

NIM RTS 操作结果回调

参数
[out]code调用结果
[out]session_id会话id
[out]channel_type通道类型,暂时只支持白板类型
[out]json_extension无效的扩展字段
[out]user_dataAPP的自定义用户数据,SDK只负责传回给回调函数,不做任何处理!
返回
void 无返回值

◆ nim_rts_rec_data_cb_func

void(* nim_rts_rec_data_cb_func)(const char *session_id, int channel_type, const char *uid, const char *data, unsigned int size, const char *json_extension, const void *user_data)

NIM RTS 数据监听回调

参数
[out]data接受的数据
[out]sizedata的数据长度
[out]uid对方帐号
[out]json_extension无效的扩展字段
[out]user_dataAPP的自定义用户数据,SDK只负责传回给回调函数,不做任何处理!
返回
void 无返回值

◆ nim_rts_start_cb_func

void(* nim_rts_start_cb_func)(int code, const char *session_id, int channel_type, const char *uid, const char *json_extension, const void *user_data)

NIM RTS 创建通道返回结果

参数
[out]code调用结果
[out]session_id会话id
[out]channel_type通道类型 如要tcp+音视频,则channel_type=kNIMRtsChannelTypeTcp|kNIMRtsChannelTypeVchat
[out]uid对方帐号
[out]json_extension扩展字段,若成功见kNIMRtsChannelId, ,如{"channel_id": 123213213123 }
[out]user_dataAPP的自定义用户数据,SDK只负责传回给回调函数,不做任何处理!
返回
void 无返回值

◆ nim_rts_start_notify_cb_func

void(* nim_rts_start_notify_cb_func)(const char *session_id, int channel_type, const char *uid, const char *json_extension, const void *user_data)

NIM RTS 收到对方创建通道通知

参数
[out]session_id会话id
[out]channel_type通道类型 如要tcp+音视频,则channel_type=kNIMRtsChannelTypeTcp|kNIMRtsChannelTypeVchat
[out]uid对方帐号
[out]json_extension扩展字段,若有透传数据见kNIMRtsCreateCustomInfo,通道id见kNIMRtsChannelId,如{"custom_info": "","channel_id": 123213213123 }
[out]user_dataAPP的自定义用户数据,SDK只负责传回给回调函数,不做任何处理!
返回
void 无返回值

◆ nim_rts_sync_ack_notify_cb_func

void(* nim_rts_sync_ack_notify_cb_func)(const char *session_id, int channel_type, bool accept, const char *json_extension, const void *user_data)

NIM RTS 收到本人在其他端回复邀请的同步通知

参数
[out]session_id会话id
[out]channel_type通道类型
[out]accept是否接受
[out]json_extension带kNIMRtsClientType,客户端类型
[out]user_dataAPP的自定义用户数据,SDK只负责传回给回调函数,不做任何处理!
返回
void 无返回值

枚举类型说明

◆ NIMRtsChannelType

rts通道类型

枚举值
kNIMRtsChannelTypeNone 

无通道

kNIMRtsChannelTypeTcp 

tcp通道

kNIMRtsChannelTypeUdp 

udp通道 暂不支持

kNIMRtsChannelTypeVchat 

音视频通道

◆ NIMRtsConnectStatus

音视频服务器连接状态类型

枚举值
kNIMRtsConnectStatusDisconn 

断开连接

kNIMRtsConnectStatusStartFail 

启动失败

kNIMRtsConnectStatusTimeout 

超时

kNIMRtsConnectStatusSuccess 

成功

kNIMRtsConnectStatusInvalidParam 

错误参数

kNIMRtsConnectStatusDesKey 

密码加密错误

kNIMRtsConnectStatusInvalidRequst 

错误请求

kNIMRtsConnectStatusServerUnknown 

服务器内部错误

kNIMRtsConnectStatusLogout 

退出

◆ NIMRtsMemberLeftType

成员退出类型

枚举值
kNIMRtsMemberLeftTimeout 

成员超时掉线

kNIMRtsMemberLeftNormal 

成员离开

◆ NIMRtsMemberStatus

成员变化类型

枚举值
kNIMRtsMemberStatusJoined 

成员进入

kNIMRtsMemberStatusLeaved 

成员退出

◆ NIMRtsVideoChatMode

音视频通话类型

枚举值
kNIMRtsVideoChatModeAudio 

语音通话模式

kNIMRtsVideoChatModeVideo 

视频通话模式

变量说明

◆ kNIMRtsApnsPayload

const char* kNIMRtsApnsPayload = "payload"
static

string JSON格式,推送payload

◆ kNIMRtsApnsText

const char* kNIMRtsApnsText = "apns"
static

string 推送用的文本 nim_rts_ack无效

◆ kNIMRtsAudioRecord

const char* kNIMRtsAudioRecord = "audio_record"
static

int 是否需要服务器录制音频数据 >0表示是

◆ kNIMRtsChannelId

const char* kNIMRtsChannelId = "channel_id"
static

int64 通话的通道id

◆ kNIMRtsClientType

const char* kNIMRtsClientType = "client_type"
static

int 客户端类型NIMClientType,见nim_client_def.h

◆ kNIMRtsCreateCustomInfo

const char* kNIMRtsCreateCustomInfo = "custom_info"
static

string 自定义数据,透传给被邀请方 nim_rts_ack无效

◆ kNIMRtsCustomInfo

const char* kNIMRtsCustomInfo = "custom_info"
static

string 自定义数据

◆ kNIMRtsDataRecord

const char* kNIMRtsDataRecord = "data_record"
static

int 是否需要服务器录制白板数据 >0表示是

◆ kNIMRtsKeepCalling

const char* kNIMRtsKeepCalling = "keepcalling"
static

int, 是否强制持续呼叫(对方离线也会呼叫),1表示是,0表示否。默认是

◆ kNIMRtsLeaveType

const char* kNIMRtsLeaveType = "leave_type"
static

int 客户端类型NIMRtsMemberLeftType,见nim_client_def.h

◆ kNIMRtsNeedBadge

const char* kNIMRtsNeedBadge = "need_badge"
static

int 是否需要角标计数 >0表示是 默认是

◆ kNIMRtsNeedFromNick

const char* kNIMRtsNeedFromNick = "need_nick"
static

int 是否需要推送昵称 >0表示是 默认是

◆ kNIMRtsPushEnable

const char* kNIMRtsPushEnable = "push_enable"
static

int 是否需要推送 >0表示是 默认是

◆ kNIMRtsRecordAddr

const char* kNIMRtsRecordAddr = "record_addr"
static

string 录制地址(服务器开启录制时有效)

◆ kNIMRtsRecordFile

const char* kNIMRtsRecordFile = "record_file"
static

string 录制的文件名(服务器开启录制时有效,音视频类型时为音频文件名)

◆ kNIMRtsSessionId

const char* kNIMRtsSessionId = "session_id"
static

string 发起会话的标识id,将在创建点对点和多人通话时,如果填写了此参数优先使用用户填写的session_id

◆ kNIMRtsSound

const char* kNIMRtsSound = "sound"
static

string 推送声音

◆ kNIMRtsUid

const char* kNIMRtsUid = "uid"
static

string 用户账号uid

◆ kNIMRtsVChatCustomAudio

const char* kNIMRtsVChatCustomAudio = "custom_audio"
static

int 是否用自主的音频数据 >0表示是

◆ kNIMRtsVChatCustomVideo

const char* kNIMRtsVChatCustomVideo = "custom_video"
static

int 是否用自主的视频数据 >0表示是

◆ kNIMRtsVChatMode

const char* kNIMRtsVChatMode = "mode"
static

int NIMRtsVideoChatMode,非视频模式时不会发送视频数据

◆ kNIMRtsVideoRecordFile

const char* kNIMRtsVideoRecordFile = "video_record_file"
static

string 录制的视频文件名(服务器开启录制时有效)

◆ kNIMRtsWebRtc

const char* kNIMRtsWebRtc = "webrtc"
static

int, 是否支持webrtc互通(针对点对点中的音频通话)