On-premise Recording SDK v3.0.6 API Reference for Linux (C++)
Public Member Functions | Static Public Member Functions | List of all members
agora::server::IServerEngine Class Referenceabstract
Inheritance diagram for agora::server::IServerEngine:

Public Member Functions

virtual  ~IServerEngine ()
virtual int  joinChannel (const char *channelKey, const char *channelId, uid_t uid, const ServerConfig &config)=0
virtual const ServerEngineProperties getProperties ()=0
virtual void  audioFrameSent (const agora::linuxsdk::AudioFrame *pframe)=0
virtual void  videoFrameSent (const agora::linuxsdk::VideoFrame *pframe)=0
- Public Member Functions inherited from agora::recording::IRecordingEngine
virtual  ~IRecordingEngine ()
virtual int  joinChannel (const char *channelKey, const char *channelId, uid_t uid, const RecordingConfig &config)=0
virtual int  joinChannelWithUserAccount (const char *token, const char *channelId, const char *userAccount, const RecordingConfig &config)=0
virtual int  getUserInfoByUserAccount (const char *userAccount, agora::linuxsdk::UserInfo *userinfo)=0
virtual int  getUserInfoByUid (uid_t uid, agora::linuxsdk::UserInfo *userInfo)=0
virtual int  setVideoMixingLayout (const agora::linuxsdk::VideoMixingLayout &layout)=0
virtual int  stoppedOnError ()=0
virtual int  leaveChannel ()=0
virtual int  release ()=0
virtual int  startService ()=0
virtual int  stopService ()=0
virtual int  setUserBackground (uid_t uid, const char *img_path)=0
virtual int  setLogLevel (agora::linuxsdk::agora_log_level level)=0
virtual int  updateSubscribeVideoUids (uid_t *uids, uint32_t num)=0
virtual int  updateSubscribeAudioUids (uid_t *uids, uint32_t num)=0
virtual int  updateWatermarkConfigs (uint32_t wm_num, linuxsdk::WatermarkConfig *config)=0

Static Public Member Functions

static IServerEngine createAgoraServerEngine (const char *appId, IServerEngineEventHandler *eventHandler)
- Static Public Member Functions inherited from agora::recording::IRecordingEngine
static IRecordingEngine createAgoraRecordingEngine (const char *appId, IRecordingEngineEventHandler *eventHandler)

Constructor & Destructor Documentation

◆ ~IServerEngine()

virtual agora::server::IServerEngine::~IServerEngine ( )

Member Function Documentation

◆ createAgoraServerEngine()

static IServerEngine* agora::server::IServerEngine::createAgoraServerEngine ( const char *  appId,
IServerEngineEventHandler eventHandler 

create a new server engine instance

appId The App ID issued to the application developers by Agora.io.
eventHandler the callback interface
a server engine instance pointer

◆ joinChannel()

virtual int agora::server::IServerEngine::joinChannel ( const char *  channelKey,
const char *  channelId,
uid_t  uid,
const ServerConfig config 
pure virtual

This method lets the server engine join a channel, and start server

channelKey This parameter is optional if the user uses a static key, or App ID. In this case, pass NULL as the parameter value. More details refer to http://docs-origin.agora.io/en/user_guide/Component_and_Others/Dynamic_Key_User_Guide.html
channelId A string providing the unique channel id for the AgoraRTC session
uid The uid of server client
config The config of current server
0: Method call succeeded. <0: Method call failed.

◆ getProperties()

virtual const ServerEngineProperties* agora::server::IServerEngine::getProperties ( )
pure virtual

Get server properties

Implements agora::recording::IRecordingEngine.

◆ audioFrameSent()

virtual void agora::server::IServerEngine::audioFrameSent ( const agora::linuxsdk::AudioFrame pframe )
pure virtual

interface when send a audio frame

uid user ID
frame pointer to sending audio frame

◆ videoFrameSent()

virtual void agora::server::IServerEngine::videoFrameSent ( const agora::linuxsdk::VideoFrame pframe )
pure virtual

interface when send a video frame

uid user ID
frame pointer to sending video frame