代码示例

代码示例

1、包含库头文件

SDK 的接口封装在头文件 RongRTCEngine.h 的 RongRTCEngine 类中,所以需要包含以下头文件:

#include "RongRTCEngine.h"

2、实现 RongRTCEventListener 接口

实现 SDK 头文件 RongRTCEngine.h 中的纯虚类 RongRTCEventListener 中回调方法,具体参考 SDK RongRTCEngine.h 中回调方法介绍。

3、初始化 RongRTCEngine

使用 SDK 之前需要调用以下初始化接口,进行初始化操作。

int RongRTCEngine::InitWithAppKey(const char* in_appkey /*AppKey*/, const char* in_navi_url /*导航地址*/, RongRTCEventListener* in_listener /*通知回调*/);

4、连接信令服务器

进行音视频通话需要调用以下接口,进行信令服务器连接。

int RongRTCEngine::ConnectWithToken(const char* in_token /*Token*/);

Token 即用户令牌,相当于您 APP 上当前用户连接服务器的身份凭证。 在连接服务器之前,需要请求 App Server,App Server 通过 Server API 获取 Token 并返回给您的客户端,客户端获取到这个 Token 即可进入下一步连接服务器。

5、加入房间

如果用户需要进行音视频会议,需要调用者调用如下接口加入同一房间,

int RongRTCEngine::JoinRoom(const char* in_room_id /*房间号*/, RongRTCRoomType in_room_type /*房间类型*/, RongRTCCallBack2* in_callback /*完成回调*/);

6、发布流资源

本地用户可以调用以下接口,进行默认音视频流资源的发布。

int RongRTCEngine::PublishDefaultStream(RongRTCStreamType in_publish_stream_type /*流资源类型*/, RongRTCCallBackOne* in_callback /*完成回调*/);

7、订阅远端用户流资源

本地用户可以调用以下接口,进行远端用户音视频流资源的订阅。

int RongRTCEngine::SubscribeStream(const char* in_subscribe_stream /*订阅流资源的json串*/, RongRTCCallBackOne* in_callback /*完成回调*/);

8、离开房间

本地用户可以调用以下接口,进行离开当前房间,结束音视频会议。

int RongRTCEngine::int LeaveRoom(RongRTCCallBackOne* in_callback /*完成回调*/);