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:
agora::recording::IRecordingEngine

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 ( )
inlinevirtual

Member Function Documentation

◆ createAgoraServerEngine()

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

create a new server engine instance

Parameters
appId The App ID issued to the application developers by Agora.io.
eventHandler the callback interface
Returns
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

Parameters
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
Returns
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

Parameters
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

Parameters
uid user ID
frame pointer to sending video frame