Agora C++ API Reference for All Platforms
Public Member Functions | List of all members
agora::rtc::IRtcConnectionEx Class Referenceabstract

Inherits agora::rtc::IRtcConnection, and agora::rtc::INetworkObserver.

Public Member Functions

virtual int initialize (const base::AgoraServiceConfiguration &serviceCfg, const RtcConnectionConfiguration &cfg)=0
 
virtual int initializeEx (const base::AgoraServiceConfiguration &serviceCfg, const RtcConnectionConfigurationEx &cfg)=0
 
virtual int deinitialize ()=0
 
virtual void setUserRole (CLIENT_ROLE_TYPE role)=0
 
virtual CLIENT_ROLE_TYPE getUserRole ()=0
 
virtual bool isEncryptionEnabled () const =0
 
virtual int sendAudioFrame (SAudioFrame &frame, int delay_ms=0)=0
 
virtual int sendVideoPacket (video_packet_t &packet)=0
 
virtual int batchSendVideoPacket (std::vector< video_packet_t > &packets)=0
 
virtual int sendControlBroadcastPacket (std::string &&data)=0
 
virtual int sendPeerMessage (peer_message_t &message)=0
 
virtual int sendVideoCustomCtrlBroadcastPacket (video_custom_ctrl_broadcast_packet_t &packet)=0
 
virtual void subscribeReceivePacketHandler (ReceivePacketHandler &&handler)=0
 
virtual void unsubscribeReceivePacketHandler ()=0
 
virtual void setChannelId (const char *channel)=0
 
virtual void setConnectionState (CONNECTION_STATE_TYPE state)=0
 
virtual void setLocalUserId (user_id_t userId)=0
 
virtual void setSid (const char *sid)=0
 
virtual CallContext * getCallContext ()=0
 
virtual std::shared_ptr< base::BaseWorker > getIOWorker ()=0
 
virtual bool getUid (user_id_t userId, rtc::uid_t *uid)=0
 
virtual bool getUserId (rtc::uid_t uid, std::string &userId)=0
 
virtual rtc::uid_t getLocalUid ()=0
 
virtual void muteLocalAudio (bool mute)=0
 
virtual void muteRemoteAudio (user_id_t userId, bool mute)=0
 
virtual void muteAllRemoteAudio (bool mute)=0
 
virtual void setDefaultMuteAllRemoteAudioStreams (bool mute)=0
 
virtual void muteLocalVideo (bool mute)=0
 
virtual void muteRemoteVideo (user_id_t userId, bool mute)=0
 
virtual void muteAllRemoteVideo (bool mute)=0
 
virtual void setDefaultMuteAllRemoteVideoStreams (bool mute)=0
 
virtual void setRemoteVideoStreamType (user_id_t userId, VIDEO_STREAM_TYPE type)=0
 
virtual void setRemoteDefaultVideoStreamType (VIDEO_STREAM_TYPE type)=0
 
virtual void setRtcStats (const RtcStats &stats)=0
 
virtual void setBannedTime (const uint64_t banned_time)=0
 
virtual RtcConnStats GetStats ()=0
 
virtual bool isConnected ()=0
 
virtual uint32_t getCid ()=0
 
virtual uint32_t getVid ()=0
 
virtual const std::string & getSid ()=0
 
virtual void setVos (const char *name, int port)=0
 
virtual int reportArgusCounters (int *counterId, int *value, int count, user_id_t userId)=0
 
virtual void setChannelProfile (CHANNEL_PROFILE_TYPE channel_profile)=0
 
virtual AudioPacketFilter * getAudioPacketFilter ()=0
 
virtual VideoPacketFilter * getVideoPacketFilter ()=0
 
virtual bool hasAudioRemoteTrack (user_id_t id)=0
 
virtual bool hasVideoRemoteTrack (user_id_t id, uint32_t ssrc)=0
 
virtual CongestionControlType ccType ()=0
 
virtual bool isRtcContextValid ()=0
 
virtual void onClientRoleChanged (CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole, const ClientRoleOptions &newRoleOptions)=0
 
virtual void onApiCallExecuted (int err, const char *api, const char *result)=0
 
virtual void networkChanged (commons::network::network_info_t &&networkInfo)=0
 
virtual int sendReport (const void *data, size_t length, int level, int type, int retry, const base::ExtraReportData *extra)=0
 
virtual int setParameters (const std::string &parameters, bool suppressNotification)=0
 
virtual int getParameters (const std::string &parameters, any_document_t &results)=0
 
virtual void stopAsyncHandler (bool waitForExit)=0
 
virtual bool registerEventHandler (IRtcEngineEventHandler *eventHandler, bool isExHandler)=0
 
virtual bool unregisterEventHandler (IRtcEngineEventHandler *eventHandler)=0
 
virtual void setPacketObserver (IPacketObserver *observer)=0
 
virtual int sendWebAgentVideoStats (const std::string &uidstr, const WebAgentVideoStats &stats)=0
 
virtual void sendRecordingArgusEvents (const protocol::CmdRecordingEventReportArgus &events)=0
 
virtual int sendCallRating (const std::string &callId, int rating, const std::string &description)=0
 
virtual bool isWebrtcPacerEnabled ()=0
 
virtual bool isDeltaFrameScalable ()=0
 
virtual void didStreamMessageSync (uid_t userId, int streamId, const char *data, size_t length, uint64_t sentTs)=0
 
virtual int32_t setEncryptionSecret (const char *secret)=0
 
virtual int32_t setEncryptionMode (const char *mode)=0
 
virtual int32_t enableVosUserInfoHidden (bool enabled)=0
 
virtual int32_t enableBuiltInMediaEncryption (bool enabled)=0
 
virtual int32_t setAudioScenarioType (AUDIO_SCENARIO_TYPE type)=0
 
virtual std::string getAppIdFromToken (const std::string &token)=0
 
virtual uint64_t statsSpace ()=0
 
- Public Member Functions inherited from agora::rtc::IRtcConnection
virtual int connect (const char *token, const char *channelId, user_id_t userId)=0
 
virtual int connect (const TConnectSettings &settings)=0
 
virtual int disconnect ()=0
 
virtual int startLastmileProbeTest (const LastmileProbeConfig &config)=0
 
virtual int stopLastmileProbeTest ()=0
 
virtual int renewToken (const char *token)=0
 
virtual TConnectionInfo getConnectionInfo ()=0
 
virtual ILocalUsergetLocalUser ()=0
 
virtual int getRemoteUsers (UserList &users)=0
 
virtual int getUserInfo (user_id_t userId, agora::UserInfo &userInfo)=0
 
virtual int registerObserver (IRtcConnectionObserver *observer, void(*safeDeleter)(IRtcConnectionObserver *)=NULL)=0
 
virtual int unregisterObserver (IRtcConnectionObserver *observer)=0
 
virtual int registerNetworkObserver (INetworkObserver *observer, void(*safeDeleter)(INetworkObserver *)=NULL)=0
 
virtual int unregisterNetworkObserver (INetworkObserver *observer)=0
 
virtual conn_id_t getConnId ()=0
 
virtual RtcStats getTransportStats ()=0
 
virtual agora::base::IAgoraParametergetAgoraParameter ()=0
 
virtual int createDataStream (int *streamId, bool reliable, bool ordered, bool sync)=0
 
virtual int sendStreamMessage (int streamId, const char *data, size_t length)=0
 
virtual int enableEncryption (bool enabled, const EncryptionConfig &config)=0
 
virtual int sendCustomReportMessage (const char *id, const char *category, const char *event, const char *label, int value)=0
 
virtual int getUserInfoByUserAccount (const char *userAccount, rtc::UserInfo *userInfo)=0
 
virtual int getUserInfoByUid (uid_t uid, rtc::UserInfo *userInfo)=0
 
virtual base::NtpTime getNtpTime ()=0
 
- Public Member Functions inherited from agora::RefCountInterface
virtual void AddRef () const =0
 
virtual RefCountReleaseStatus Release () const =0
 
virtual bool HasOneRef () const =0
 
- Public Member Functions inherited from agora::rtc::INetworkObserver
virtual ~INetworkObserver ()
 
virtual void onUplinkNetworkInfoUpdated (const UplinkNetworkInfo &info)
 
virtual void onDownlinkNetworkInfoUpdated (const DownlinkNetworkInfo &info)
 

Additional Inherited Members

- Protected Member Functions inherited from agora::rtc::IRtcConnection
 ~IRtcConnection ()
 
- Protected Member Functions inherited from agora::RefCountInterface
virtual ~RefCountInterface ()
 

Member Function Documentation

◆ initialize()

virtual int agora::rtc::IRtcConnectionEx::initialize ( const base::AgoraServiceConfiguration serviceCfg,
const RtcConnectionConfiguration cfg 
)
pure virtual

◆ initializeEx()

virtual int agora::rtc::IRtcConnectionEx::initializeEx ( const base::AgoraServiceConfiguration serviceCfg,
const RtcConnectionConfigurationEx cfg 
)
pure virtual

◆ deinitialize()

virtual int agora::rtc::IRtcConnectionEx::deinitialize ( )
pure virtual

◆ setUserRole()

virtual void agora::rtc::IRtcConnectionEx::setUserRole ( CLIENT_ROLE_TYPE  role)
pure virtual

◆ getUserRole()

virtual CLIENT_ROLE_TYPE agora::rtc::IRtcConnectionEx::getUserRole ( )
pure virtual

◆ isEncryptionEnabled()

virtual bool agora::rtc::IRtcConnectionEx::isEncryptionEnabled ( ) const
pure virtual

◆ sendAudioFrame()

virtual int agora::rtc::IRtcConnectionEx::sendAudioFrame ( SAudioFrame frame,
int  delay_ms = 0 
)
pure virtual

◆ sendVideoPacket()

virtual int agora::rtc::IRtcConnectionEx::sendVideoPacket ( video_packet_t packet)
pure virtual

◆ batchSendVideoPacket()

virtual int agora::rtc::IRtcConnectionEx::batchSendVideoPacket ( std::vector< video_packet_t > &  packets)
pure virtual

◆ sendControlBroadcastPacket()

virtual int agora::rtc::IRtcConnectionEx::sendControlBroadcastPacket ( std::string &&  data)
pure virtual

◆ sendPeerMessage()

virtual int agora::rtc::IRtcConnectionEx::sendPeerMessage ( peer_message_t message)
pure virtual

◆ sendVideoCustomCtrlBroadcastPacket()

virtual int agora::rtc::IRtcConnectionEx::sendVideoCustomCtrlBroadcastPacket ( video_custom_ctrl_broadcast_packet_t packet)
pure virtual

◆ subscribeReceivePacketHandler()

virtual void agora::rtc::IRtcConnectionEx::subscribeReceivePacketHandler ( ReceivePacketHandler &&  handler)
pure virtual

◆ unsubscribeReceivePacketHandler()

virtual void agora::rtc::IRtcConnectionEx::unsubscribeReceivePacketHandler ( )
pure virtual

◆ setChannelId()

virtual void agora::rtc::IRtcConnectionEx::setChannelId ( const char *  channel)
pure virtual

◆ setConnectionState()

virtual void agora::rtc::IRtcConnectionEx::setConnectionState ( CONNECTION_STATE_TYPE  state)
pure virtual

◆ setLocalUserId()

virtual void agora::rtc::IRtcConnectionEx::setLocalUserId ( user_id_t  userId)
pure virtual

◆ setSid()

virtual void agora::rtc::IRtcConnectionEx::setSid ( const char *  sid)
pure virtual

◆ getCallContext()

virtual CallContext* agora::rtc::IRtcConnectionEx::getCallContext ( )
pure virtual

◆ getIOWorker()

virtual std::shared_ptr<base::BaseWorker> agora::rtc::IRtcConnectionEx::getIOWorker ( )
pure virtual

◆ getUid()

virtual bool agora::rtc::IRtcConnectionEx::getUid ( user_id_t  userId,
rtc::uid_t uid 
)
pure virtual

◆ getUserId()

virtual bool agora::rtc::IRtcConnectionEx::getUserId ( rtc::uid_t  uid,
std::string &  userId 
)
pure virtual

◆ getLocalUid()

virtual rtc::uid_t agora::rtc::IRtcConnectionEx::getLocalUid ( )
pure virtual

◆ muteLocalAudio()

virtual void agora::rtc::IRtcConnectionEx::muteLocalAudio ( bool  mute)
pure virtual

◆ muteRemoteAudio()

virtual void agora::rtc::IRtcConnectionEx::muteRemoteAudio ( user_id_t  userId,
bool  mute 
)
pure virtual

◆ muteAllRemoteAudio()

virtual void agora::rtc::IRtcConnectionEx::muteAllRemoteAudio ( bool  mute)
pure virtual

◆ setDefaultMuteAllRemoteAudioStreams()

virtual void agora::rtc::IRtcConnectionEx::setDefaultMuteAllRemoteAudioStreams ( bool  mute)
pure virtual

◆ muteLocalVideo()

virtual void agora::rtc::IRtcConnectionEx::muteLocalVideo ( bool  mute)
pure virtual

◆ muteRemoteVideo()

virtual void agora::rtc::IRtcConnectionEx::muteRemoteVideo ( user_id_t  userId,
bool  mute 
)
pure virtual

◆ muteAllRemoteVideo()

virtual void agora::rtc::IRtcConnectionEx::muteAllRemoteVideo ( bool  mute)
pure virtual

◆ setDefaultMuteAllRemoteVideoStreams()

virtual void agora::rtc::IRtcConnectionEx::setDefaultMuteAllRemoteVideoStreams ( bool  mute)
pure virtual

◆ setRemoteVideoStreamType()

virtual void agora::rtc::IRtcConnectionEx::setRemoteVideoStreamType ( user_id_t  userId,
VIDEO_STREAM_TYPE  type 
)
pure virtual

◆ setRemoteDefaultVideoStreamType()

virtual void agora::rtc::IRtcConnectionEx::setRemoteDefaultVideoStreamType ( VIDEO_STREAM_TYPE  type)
pure virtual

◆ setRtcStats()

virtual void agora::rtc::IRtcConnectionEx::setRtcStats ( const RtcStats stats)
pure virtual

◆ setBannedTime()

virtual void agora::rtc::IRtcConnectionEx::setBannedTime ( const uint64_t  banned_time)
pure virtual

◆ GetStats()

virtual RtcConnStats agora::rtc::IRtcConnectionEx::GetStats ( )
pure virtual

◆ isConnected()

virtual bool agora::rtc::IRtcConnectionEx::isConnected ( )
pure virtual

◆ getCid()

virtual uint32_t agora::rtc::IRtcConnectionEx::getCid ( )
pure virtual

◆ getVid()

virtual uint32_t agora::rtc::IRtcConnectionEx::getVid ( )
pure virtual

◆ getSid()

virtual const std::string& agora::rtc::IRtcConnectionEx::getSid ( )
pure virtual

◆ setVos()

virtual void agora::rtc::IRtcConnectionEx::setVos ( const char *  name,
int  port 
)
pure virtual

◆ reportArgusCounters()

virtual int agora::rtc::IRtcConnectionEx::reportArgusCounters ( int *  counterId,
int *  value,
int  count,
user_id_t  userId 
)
pure virtual

◆ setChannelProfile()

virtual void agora::rtc::IRtcConnectionEx::setChannelProfile ( CHANNEL_PROFILE_TYPE  channel_profile)
pure virtual

◆ getAudioPacketFilter()

virtual AudioPacketFilter* agora::rtc::IRtcConnectionEx::getAudioPacketFilter ( )
pure virtual

◆ getVideoPacketFilter()

virtual VideoPacketFilter* agora::rtc::IRtcConnectionEx::getVideoPacketFilter ( )
pure virtual

◆ hasAudioRemoteTrack()

virtual bool agora::rtc::IRtcConnectionEx::hasAudioRemoteTrack ( user_id_t  id)
pure virtual

◆ hasVideoRemoteTrack()

virtual bool agora::rtc::IRtcConnectionEx::hasVideoRemoteTrack ( user_id_t  id,
uint32_t  ssrc 
)
pure virtual

◆ ccType()

virtual CongestionControlType agora::rtc::IRtcConnectionEx::ccType ( )
pure virtual

◆ isRtcContextValid()

virtual bool agora::rtc::IRtcConnectionEx::isRtcContextValid ( )
pure virtual

◆ onClientRoleChanged()

virtual void agora::rtc::IRtcConnectionEx::onClientRoleChanged ( CLIENT_ROLE_TYPE  oldRole,
CLIENT_ROLE_TYPE  newRole,
const ClientRoleOptions newRoleOptions 
)
pure virtual

◆ onApiCallExecuted()

virtual void agora::rtc::IRtcConnectionEx::onApiCallExecuted ( int  err,
const char *  api,
const char *  result 
)
pure virtual

◆ networkChanged()

virtual void agora::rtc::IRtcConnectionEx::networkChanged ( commons::network::network_info_t &&  networkInfo)
pure virtual

◆ sendReport()

virtual int agora::rtc::IRtcConnectionEx::sendReport ( const void *  data,
size_t  length,
int  level,
int  type,
int  retry,
const base::ExtraReportData *  extra 
)
pure virtual

◆ setParameters()

virtual int agora::rtc::IRtcConnectionEx::setParameters ( const std::string &  parameters,
bool  suppressNotification 
)
pure virtual

◆ getParameters()

virtual int agora::rtc::IRtcConnectionEx::getParameters ( const std::string &  parameters,
any_document_t results 
)
pure virtual

◆ stopAsyncHandler()

virtual void agora::rtc::IRtcConnectionEx::stopAsyncHandler ( bool  waitForExit)
pure virtual

◆ registerEventHandler()

virtual bool agora::rtc::IRtcConnectionEx::registerEventHandler ( IRtcEngineEventHandler eventHandler,
bool  isExHandler 
)
pure virtual

◆ unregisterEventHandler()

virtual bool agora::rtc::IRtcConnectionEx::unregisterEventHandler ( IRtcEngineEventHandler eventHandler)
pure virtual

◆ setPacketObserver()

virtual void agora::rtc::IRtcConnectionEx::setPacketObserver ( IPacketObserver observer)
pure virtual

◆ sendWebAgentVideoStats()

virtual int agora::rtc::IRtcConnectionEx::sendWebAgentVideoStats ( const std::string &  uidstr,
const WebAgentVideoStats stats 
)
pure virtual

◆ sendRecordingArgusEvents()

virtual void agora::rtc::IRtcConnectionEx::sendRecordingArgusEvents ( const protocol::CmdRecordingEventReportArgus &  events)
pure virtual

◆ sendCallRating()

virtual int agora::rtc::IRtcConnectionEx::sendCallRating ( const std::string &  callId,
int  rating,
const std::string &  description 
)
pure virtual

◆ isWebrtcPacerEnabled()

virtual bool agora::rtc::IRtcConnectionEx::isWebrtcPacerEnabled ( )
pure virtual

◆ isDeltaFrameScalable()

virtual bool agora::rtc::IRtcConnectionEx::isDeltaFrameScalable ( )
pure virtual

◆ didStreamMessageSync()

virtual void agora::rtc::IRtcConnectionEx::didStreamMessageSync ( uid_t  userId,
int  streamId,
const char *  data,
size_t  length,
uint64_t  sentTs 
)
pure virtual

◆ setEncryptionSecret()

virtual int32_t agora::rtc::IRtcConnectionEx::setEncryptionSecret ( const char *  secret)
pure virtual

◆ setEncryptionMode()

virtual int32_t agora::rtc::IRtcConnectionEx::setEncryptionMode ( const char *  mode)
pure virtual

◆ enableVosUserInfoHidden()

virtual int32_t agora::rtc::IRtcConnectionEx::enableVosUserInfoHidden ( bool  enabled)
pure virtual

◆ enableBuiltInMediaEncryption()

virtual int32_t agora::rtc::IRtcConnectionEx::enableBuiltInMediaEncryption ( bool  enabled)
pure virtual

◆ setAudioScenarioType()

virtual int32_t agora::rtc::IRtcConnectionEx::setAudioScenarioType ( AUDIO_SCENARIO_TYPE  type)
pure virtual

◆ getAppIdFromToken()

virtual std::string agora::rtc::IRtcConnectionEx::getAppIdFromToken ( const std::string &  token)
pure virtual

◆ statsSpace()

virtual uint64_t agora::rtc::IRtcConnectionEx::statsSpace ( )
pure virtual