Agora C++ API Reference for All Platforms
NGIAgoraRtcConnection.h
1 //
2 // Agora SDK
3 //
4 // Created by Sting Feng in 2018-01.
5 // Copyright (c) 2018 Agora.io. All rights reserved.
6 //
7 
8 #pragma once // NOLINT(build/header_guard)
9 
10 #include "AgoraBase.h"
11 #include "time_utils.h"
12 #include <api/cpp/aosl_ares_class.h>
13 
14 namespace agora {
15 namespace rtc {
16 class IAudioEncodedFrameSender;
17 class IRtcConnectionObserver;
18 class INetworkObserver;
19 class IRtcConnection;
20 class IVideoEncodedImageSender;
21 class ILocalUser;
22 
47 
48  int proxyType;
49 
51 
53 };
54 
59  const char* token;
70  const char* channelId;
77  /*Reserved for future use*/
78  const char* info;
79  /*
80  App can provide a app defined start time to trace some events like connect cost , first video, etc.
81  */
83 };
84 
116  int minPort;
120  int maxPort;
128 
133 
138 
143 
152 
157 
162 
164  : autoSubscribeAudio(true),
165  autoSubscribeVideo(true),
167  maxSendBitrate(-1),
168  minPort(0),
169  maxPort(0),
172  audioRecvEncodedFrame(false),
173  audioRecvMediaPacket(false),
174  videoRecvMediaPacket(false),
175  isInteractiveAudience(false),
176  isDataChannelOnly(false),
178 };
179 
191  protected:
193 
194  public:
222  virtual int connect(const char* token, const char* channelId, const char* info, user_id_t userId, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
223 
235  virtual int connect(const TConnectSettings& settings, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
236 
248  virtual int disconnect(aosl_ref_t ares = AOSL_REF_INVALID) = 0;
249 
277  virtual int startLastmileProbeTest(const LastmileProbeConfig& config, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
278 
285  virtual int stopLastmileProbeTest(aosl_ref_t ares = AOSL_REF_INVALID) = 0;
286 
298  virtual int renewToken(const char* token, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
299 
308 
316  virtual ILocalUser* getLocalUser() = 0;
317 
330  virtual int getRemoteUsers(UserList& users) = 0;
331 
342  virtual int getUserInfo(user_id_t userId, agora::UserInfo& userInfo) = 0;
343 
352  virtual int registerObserver(IRtcConnectionObserver* observer, void(*safeDeleter)(IRtcConnectionObserver*) = NULL, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
353 
363  virtual int unregisterObserver(IRtcConnectionObserver* observer) = 0;
364 
373  virtual int registerNetworkObserver(INetworkObserver* observer, void(*safeDeleter)(INetworkObserver*) = NULL, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
374 
384  virtual int unregisterNetworkObserver(INetworkObserver* observer) = 0;
385 
393  virtual conn_id_t getConnId() = 0;
394 
403 
412 
432  virtual int createDataStream(int* streamId, bool reliable, bool ordered, bool sync) = 0;
433 
449  virtual int sendStreamMessage(int streamId, const char* data, size_t length, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
450 
461  virtual int sendRdtMessage(user_id_t userId, RdtStreamType type, const char *data, size_t length, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
462 
473  virtual int sendMediaControlMessage(user_id_t userId, const char* data, size_t length, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
474 
493  virtual int enableEncryption(bool enabled, const EncryptionConfig& config, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
494 
508  virtual int sendCustomReportMessage(const char* id, const char* category, const char* event, const char* label, int value, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
520  virtual int getUserInfoByUserAccount(const char* userAccount, rtc::UserInfo* userInfo) = 0;
532  virtual int getUserInfoByUid(uid_t uid, rtc::UserInfo* userInfo) = 0;
533 
552  virtual int enableMultipath(bool enable, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
553 
566  virtual int setUplinkMultipathMode(MultipathMode mode, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
567 
580  virtual int setDownlinkMultipathMode(MultipathMode mode, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
581 
594  virtual int setPreferMultipathType(MultipathType type, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
595 };
596 
601  public:
603 
610  virtual void onConnected(const TConnectionInfo& connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason) = 0;
611 
618  virtual void onDisconnected(const TConnectionInfo& connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason) = 0;
619 
626  virtual void onConnecting(const TConnectionInfo& connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason) = 0;
627 
634  virtual void onReconnecting(const TConnectionInfo& connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason) = 0;
635 
636  // This should be deleted. onConnected is enough.
637  virtual void onReconnected(const TConnectionInfo& connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason) = 0;
638 
644  virtual void onConnectionLost(const TConnectionInfo& connectionInfo) = 0;
645 
653  virtual void onLastmileQuality(const QUALITY_TYPE quality) = 0;
654 
662  virtual void onLastmileProbeResult(const LastmileProbeResult& result) = 0;
663 
674  virtual void onTokenPrivilegeWillExpire(const char* token) = 0;
675 
682  virtual void onTokenPrivilegeDidExpire() = 0;
683 
695  virtual void onRenewTokenResult(const char* token, RENEW_TOKEN_ERROR_CODE code) = 0;
696 
703  virtual void onConnectionFailure(const TConnectionInfo& connectionInfo,
704  CONNECTION_CHANGED_REASON_TYPE reason) = 0;
705 
713  virtual void onUserJoined(user_id_t userId) = 0;
714 
723  virtual void onUserLeft(user_id_t userId, USER_OFFLINE_REASON_TYPE reason) = 0;
724 
732  virtual void onTransportStats(const RtcStats& stats) = 0;
733 
741  virtual void onChangeRoleSuccess(CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole, const ClientRoleOptions& newRoleOptions) {
742  (void)oldRole;
743  (void)newRole;
744  (void)newRoleOptions;
745  }
746 
751  (void)reason;
752  (void)currentRole;
753  }
754 
762  (void)error;
763  }
764 
775  virtual void onUserNetworkQuality(user_id_t userId, QUALITY_TYPE txQuality,
776  QUALITY_TYPE rxQuality) {
777  (void)userId;
778  (void)txQuality;
779  (void)rxQuality;
780  }
781 
785  virtual void onNetworkTypeChanged(NETWORK_TYPE type) {
786  (void)type;
787  }
788 
790  virtual void onContentInspectResult(media::CONTENT_INSPECT_RESULT result) { (void)result; }
803  virtual void onSnapshotTaken(user_id_t userId, const char* filePath, int width, int height, int errCode) {
804  (void)userId;
805  (void)filePath;
806  (void)width;
807  (void)height;
808  (void)errCode;
809  }
815  virtual void onError(ERROR_CODE_TYPE error, const char* msg) {
816  (void)error;
817  (void)msg;
818  }
819 
849  virtual void onChannelMediaRelayStateChanged(int state, int code) = 0;
850 
856  virtual void onLocalUserRegistered(uid_t uid, const char* userAccount) {
857  (void)uid;
858  (void)userAccount;
859  }
860 
862  virtual void onUserAccountUpdated(uid_t uid, const char* userAccount) {
863  (void)uid;
864  (void)userAccount;
865  }
866 
876  virtual void onStreamMessageError(user_id_t userId, int streamId, int code, int missed,
877  int cached) {
878  (void)userId;
879  (void)streamId;
880  (void)code;
881  (void)missed;
882  (void)cached;
883  }
884 
889  virtual void onEncryptionError(ENCRYPTION_ERROR_TYPE errorType) {
890  (void)errorType;
891  }
898  virtual void onUploadLogResult(const char* requestId, bool success, UPLOAD_ERROR_REASON reason) {
899  (void)requestId;
900  (void)success;
901  (void)reason;
902  }
903 
909  virtual void onSetRtmFlagResult(int code) {
910  (void)code;
911  }
912 
918  virtual void onMultipathStats(const MultipathStats& stats) {
919  (void)stats;
920  }
921 };
922 
924  public:
925  virtual ~INetworkObserver() {}
926 
927  public:
936  virtual void onUplinkNetworkInfoUpdated(const UplinkNetworkInfo& info) {
937  (void)info;
938  }
939 
948  (void)info;
949  }
950 };
951 
952 } // namespace rtc
953 } // namespace agora
agora::rtc::IRtcConnectionObserver::onUserNetworkQuality
virtual void onUserNetworkQuality(user_id_t userId, QUALITY_TYPE txQuality, QUALITY_TYPE rxQuality)
Definition: NGIAgoraRtcConnection.h:775
agora::rtc::TConnectionInfo::connectionIp
util::AString connectionIp
Definition: NGIAgoraRtcConnection.h:50
agora::rtc::TConnectionInfo::state
CONNECTION_STATE_TYPE state
Definition: NGIAgoraRtcConnection.h:38
agora::rtc::RtcConnectionConfiguration::audioRecvEncodedFrame
bool audioRecvEncodedFrame
Definition: NGIAgoraRtcConnection.h:132
agora::rtc::RtcConnectionConfiguration::channelProfile
CHANNEL_PROFILE_TYPE channelProfile
Definition: NGIAgoraRtcConnection.h:127
agora::rtc::UserInfo
The information of the user.
Definition: AgoraBase.h:7611
agora::rtc::LastmileProbeResult
Results of the uplink and downlink last-mile network tests.
Definition: AgoraBase.h:5029
agora::rtc::IRtcConnection::getConnectionInfo
virtual TConnectionInfo getConnectionInfo()=0
agora::rtc::IRtcConnectionObserver::onEncryptionError
virtual void onEncryptionError(ENCRYPTION_ERROR_TYPE errorType)
Definition: NGIAgoraRtcConnection.h:889
agora::rtc::IRtcConnectionObserver::onError
virtual void onError(ERROR_CODE_TYPE error, const char *msg)
Definition: NGIAgoraRtcConnection.h:815
agora::rtc::TConnectSettings::appDefinedStartTimeMs
agora::Optional< int64_t > appDefinedStartTimeMs
Definition: NGIAgoraRtcConnection.h:82
agora::rtc::IRtcConnectionObserver::onConnecting
virtual void onConnecting(const TConnectionInfo &connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason)=0
agora::base::IAgoraParameter
The interface class of Agora RTC SDK, which provides JSON configuration information of the SDK.
Definition: IAgoraParameter.h:151
agora::rtc::IRtcConnection::sendMediaControlMessage
virtual int sendMediaControlMessage(user_id_t userId, const char *data, size_t length, aosl_ref_t ares=AOSL_REF_INVALID)=0
agora::rtc::RtcConnectionConfiguration::minPort
int minPort
Definition: NGIAgoraRtcConnection.h:116
agora::rtc::LastmileProbeConfig
Configurations of the last-mile network test.
Definition: AgoraBase.h:4960
agora::rtc::INetworkObserver::~INetworkObserver
virtual ~INetworkObserver()
Definition: NGIAgoraRtcConnection.h:925
agora::rtc::IRtcConnectionObserver::onTransportStats
virtual void onTransportStats(const RtcStats &stats)=0
agora::rtc::INetworkObserver
Definition: NGIAgoraRtcConnection.h:923
agora::rtc::IRtcConnection::startLastmileProbeTest
virtual int startLastmileProbeTest(const LastmileProbeConfig &config, aosl_ref_t ares=AOSL_REF_INVALID)=0
agora::rtc::IRtcConnection::sendStreamMessage
virtual int sendStreamMessage(int streamId, const char *data, size_t length, aosl_ref_t ares=AOSL_REF_INVALID)=0
agora::rtc::IRtcConnectionObserver::onChangeRoleSuccess
virtual void onChangeRoleSuccess(CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole, const ClientRoleOptions &newRoleOptions)
Definition: NGIAgoraRtcConnection.h:741
agora::rtc::IRtcConnection::sendRdtMessage
virtual int sendRdtMessage(user_id_t userId, RdtStreamType type, const char *data, size_t length, aosl_ref_t ares=AOSL_REF_INVALID)=0
agora::rtc::IRtcConnectionObserver::onChangeRoleFailure
virtual void onChangeRoleFailure(CLIENT_ROLE_CHANGE_FAILED_REASON reason, CLIENT_ROLE_TYPE currentRole)
Definition: NGIAgoraRtcConnection.h:750
agora::rtc::IRtcConnectionObserver
Definition: NGIAgoraRtcConnection.h:600
agora::rtc::IRtcConnection::~IRtcConnection
~IRtcConnection()
Definition: NGIAgoraRtcConnection.h:192
agora::rtc::IRtcConnectionObserver::onUserJoined
virtual void onUserJoined(user_id_t userId)=0
agora::rtc::IRtcConnection::getUserInfo
virtual int getUserInfo(user_id_t userId, agora::UserInfo &userInfo)=0
agora::rtc::IRtcConnection::renewToken
virtual int renewToken(const char *token, aosl_ref_t ares=AOSL_REF_INVALID)=0
agora::ERROR_CODE_TYPE
ERROR_CODE_TYPE
Error codes.
Definition: AgoraBase.h:472
agora::user_id_t
const char * user_id_t
Definition: AgoraBase.h:861
agora::util::AList
Definition: AgoraBase.h:233
agora::rtc::IRtcConnectionObserver::onMultipathStats
virtual void onMultipathStats(const MultipathStats &stats)
Definition: NGIAgoraRtcConnection.h:918
agora::rtc::conn_id_t
unsigned int conn_id_t
Definition: AgoraMediaBase.h:30
agora::rtc::IRtcConnectionObserver::onReconnecting
virtual void onReconnecting(const TConnectionInfo &connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason)=0
agora::rtc::IRtcConnectionObserver::onDisconnected
virtual void onDisconnected(const TConnectionInfo &connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason)=0
agora::rtc::IRtcConnection::getAgoraParameter
virtual agora::base::IAgoraParameter * getAgoraParameter()=0
agora::rtc::IRtcConnection::getUserInfoByUid
virtual int getUserInfoByUid(uid_t uid, rtc::UserInfo *userInfo)=0
agora::rtc::TConnectionInfo::TConnectionInfo
TConnectionInfo()
Definition: NGIAgoraRtcConnection.h:52
agora::rtc::RtcConnectionConfiguration::autoSubscribeAudio
bool autoSubscribeAudio
Definition: NGIAgoraRtcConnection.h:96
agora::rtc::TConnectSettings
Definition: NGIAgoraRtcConnection.h:55
agora::rtc::RtcConnectionConfiguration::audioRecvMediaPacket
bool audioRecvMediaPacket
Definition: NGIAgoraRtcConnection.h:137
agora::rtc::RtcConnectionConfiguration::RtcConnectionConfiguration
RtcConnectionConfiguration()
Definition: NGIAgoraRtcConnection.h:163
agora
Definition: AgoraAtomicOps.h:21
agora::rtc::IRtcConnectionObserver::~IRtcConnectionObserver
virtual ~IRtcConnectionObserver()
Definition: NGIAgoraRtcConnection.h:602
agora::rtc::IRtcConnectionObserver::onContentInspectResult
virtual void onContentInspectResult(media::CONTENT_INSPECT_RESULT result)
Definition: NGIAgoraRtcConnection.h:790
agora::rtc::IRtcConnection::getTransportStats
virtual RtcStats getTransportStats()=0
agora::rtc::MultipathMode
MultipathMode
The transmission mode of data over multiple network paths.
Definition: AgoraBase.h:2643
agora::rtc::IRtcConnection::unregisterNetworkObserver
virtual int unregisterNetworkObserver(INetworkObserver *observer)=0
agora::rtc::TConnectionInfo
Definition: NGIAgoraRtcConnection.h:26
agora::rtc::IRtcConnection::getRemoteUsers
virtual int getRemoteUsers(UserList &users)=0
agora::rtc::IRtcConnection::setUplinkMultipathMode
virtual int setUplinkMultipathMode(MultipathMode mode, aosl_ref_t ares=AOSL_REF_INVALID)=0
agora::rtc::IRtcConnectionObserver::onTokenPrivilegeWillExpire
virtual void onTokenPrivilegeWillExpire(const char *token)=0
agora::rtc::NETWORK_TYPE
NETWORK_TYPE
Network type.
Definition: AgoraBase.h:5219
agora::CHANNEL_PROFILE_TYPE
CHANNEL_PROFILE_TYPE
The channel profile.
Definition: AgoraBase.h:267
agora::rtc::IRtcConnectionObserver::onUserAccountUpdated
virtual void onUserAccountUpdated(uid_t uid, const char *userAccount)
Definition: NGIAgoraRtcConnection.h:862
agora::rtc::RtcConnectionConfiguration::isInteractiveAudience
bool isInteractiveAudience
Definition: NGIAgoraRtcConnection.h:151
agora::rtc::RtcConnectionConfiguration::channelType
CHANNEL_TYPE channelType
Definition: NGIAgoraRtcConnection.h:161
agora::rtc::IRtcConnectionObserver::onSetRtmFlagResult
virtual void onSetRtmFlagResult(int code)
Definition: NGIAgoraRtcConnection.h:909
agora::rtc::IRtcConnectionObserver::onTokenPrivilegeDidExpire
virtual void onTokenPrivilegeDidExpire()=0
agora::rtc::IRtcConnection::createDataStream
virtual int createDataStream(int *streamId, bool reliable, bool ordered, bool sync)=0
agora::rtc::TConnectSettings::info
const char * info
Definition: NGIAgoraRtcConnection.h:78
agora::rtc::IRtcConnection::connect
virtual int connect(const char *token, const char *channelId, const char *info, user_id_t userId, aosl_ref_t ares=AOSL_REF_INVALID)=0
agora::rtc::TConnectionInfo::channelId
util::AString channelId
Definition: NGIAgoraRtcConnection.h:34
agora::rtc::IRtcConnectionObserver::onLastmileProbeResult
virtual void onLastmileProbeResult(const LastmileProbeResult &result)=0
agora::rtc::IRtcConnectionObserver::onConnected
virtual void onConnected(const TConnectionInfo &connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason)=0
agora::rtc::IRtcConnectionObserver::onLocalUserRegistered
virtual void onLocalUserRegistered(uid_t uid, const char *userAccount)
Definition: NGIAgoraRtcConnection.h:856
agora::rtc::IRtcConnectionObserver::onStreamMessageError
virtual void onStreamMessageError(user_id_t userId, int streamId, int code, int missed, int cached)
Definition: NGIAgoraRtcConnection.h:876
agora::rtc::IRtcConnection::getLocalUser
virtual ILocalUser * getLocalUser()=0
agora::rtc::CONNECTION_STATE_DISCONNECTED
@ CONNECTION_STATE_DISCONNECTED
Definition: AgoraBase.h:4453
agora::rtc::INetworkObserver::onDownlinkNetworkInfoUpdated
virtual void onDownlinkNetworkInfoUpdated(const DownlinkNetworkInfo &info)
Definition: NGIAgoraRtcConnection.h:947
agora::rtc::IRtcConnectionObserver::onChannelMediaRelayStateChanged
virtual void onChannelMediaRelayStateChanged(int state, int code)=0
agora::UserInfo
The information of the user.
Definition: AgoraBase.h:867
agora::rtc::IRtcConnectionObserver::onConnectionFailure
virtual void onConnectionFailure(const TConnectionInfo &connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason)=0
agora::rtc::CONNECTION_CHANGED_REASON_TYPE
CONNECTION_CHANGED_REASON_TYPE
Reasons causing the change of the connection state.
Definition: AgoraBase.h:5053
agora::rtc::IRtcConnectionObserver::onRenewTokenResult
virtual void onRenewTokenResult(const char *token, RENEW_TOKEN_ERROR_CODE code)=0
Reports the result of calling renewToken.
agora::rtc::ILocalUser
Definition: NGIAgoraLocalUser.h:56
agora::rtc::RtcConnectionConfiguration::clientRoleType
CLIENT_ROLE_TYPE clientRoleType
Definition: NGIAgoraRtcConnection.h:124
agora::rtc::RtcConnectionConfiguration::enableAudioRecordingOrPlayout
bool enableAudioRecordingOrPlayout
Definition: NGIAgoraRtcConnection.h:108
agora::rtc::IRtcConnection::stopLastmileProbeTest
virtual int stopLastmileProbeTest(aosl_ref_t ares=AOSL_REF_INVALID)=0
agora::rtc::IRtcConnectionObserver::onNetworkTypeChanged
virtual void onNetworkTypeChanged(NETWORK_TYPE type)
Definition: NGIAgoraRtcConnection.h:785
agora::rtc::IRtcConnectionObserver::onConnectionLost
virtual void onConnectionLost(const TConnectionInfo &connectionInfo)=0
agora::rtc::RtcConnectionConfiguration::videoRecvMediaPacket
bool videoRecvMediaPacket
Definition: NGIAgoraRtcConnection.h:142
agora::CHANNEL_TYPE_STANDARD
@ CHANNEL_TYPE_STANDARD
Definition: AgoraBase.h:302
agora::rtc::RtcConnectionConfiguration::autoSubscribeVideo
bool autoSubscribeVideo
Definition: NGIAgoraRtcConnection.h:102
agora::rtc::IRtcConnectionObserver::onUserLeft
virtual void onUserLeft(user_id_t userId, USER_OFFLINE_REASON_TYPE reason)=0
agora::rtc::IRtcConnectionObserver::onSnapshotTaken
virtual void onSnapshotTaken(user_id_t userId, const char *filePath, int width, int height, int errCode)
snapshot taken callback
Definition: NGIAgoraRtcConnection.h:803
agora::rtc::IRtcConnection::connect
virtual int connect(const TConnectSettings &settings, aosl_ref_t ares=AOSL_REF_INVALID)=0
agora::rtc::MultipathStats
Aggregates statistics of each network path in multipath transmission.
Definition: AgoraBase.h:2707
agora::rtc::EncryptionConfig
Built-in encryption configurations.
Definition: AgoraBase.h:7328
agora::rtc::IRtcConnection::disconnect
virtual int disconnect(aosl_ref_t ares=AOSL_REF_INVALID)=0
agora::rtc::IRtcConnection::enableMultipath
virtual int enableMultipath(bool enable, aosl_ref_t ares=AOSL_REF_INVALID)=0
agora::LICENSE_ERROR_TYPE
LICENSE_ERROR_TYPE
Definition: AgoraBase.h:806
agora::rtc::IRtcConnectionObserver::onLastmileQuality
virtual void onLastmileQuality(const QUALITY_TYPE quality)=0
agora::rtc::TConnectSettings::token
const char * token
Definition: NGIAgoraRtcConnection.h:59
agora::rtc::RtcStats
Statistics of a call session.
Definition: AgoraBase.h:2754
agora::rtc::USER_OFFLINE_REASON_TYPE
USER_OFFLINE_REASON_TYPE
Reasons for a user being offline.
Definition: AgoraBase.h:896
agora::rtc::IRtcConnectionObserver::onLicenseValidationFailure
virtual void onLicenseValidationFailure(LICENSE_ERROR_TYPE error)
Definition: NGIAgoraRtcConnection.h:761
agora::rtc::IRtcConnection::setDownlinkMultipathMode
virtual int setDownlinkMultipathMode(MultipathMode mode, aosl_ref_t ares=AOSL_REF_INVALID)=0
agora::rtc::RtcConnectionConfiguration
Definition: NGIAgoraRtcConnection.h:90
agora::rtc::IRtcConnection::sendCustomReportMessage
virtual int sendCustomReportMessage(const char *id, const char *category, const char *event, const char *label, int value, aosl_ref_t ares=AOSL_REF_INVALID)=0
agora::RefCountInterface
Definition: AgoraRefPtr.h:31
agora::rtc::IRtcConnection::registerObserver
virtual int registerObserver(IRtcConnectionObserver *observer, void(*safeDeleter)(IRtcConnectionObserver *)=NULL, aosl_ref_t ares=AOSL_REF_INVALID)=0
agora::rtc::RtcConnectionConfiguration::maxPort
int maxPort
Definition: NGIAgoraRtcConnection.h:120
agora::rtc::TConnectSettings::userId
user_id_t userId
Definition: NGIAgoraRtcConnection.h:76
agora::rtc::INetworkObserver::onUplinkNetworkInfoUpdated
virtual void onUplinkNetworkInfoUpdated(const UplinkNetworkInfo &info)
Definition: NGIAgoraRtcConnection.h:936
agora::rtc::UPLOAD_ERROR_REASON
UPLOAD_ERROR_REASON
Definition: AgoraBase.h:7416
agora::rtc::TConnectionInfo::localUserId
util::AString localUserId
Definition: NGIAgoraRtcConnection.h:42
agora::rtc::RENEW_TOKEN_ERROR_CODE
RENEW_TOKEN_ERROR_CODE
Represents the error codes after calling renewToken.
Definition: AgoraBase.h:7427
agora::rtc::IRtcConnectionObserver::onUploadLogResult
virtual void onUploadLogResult(const char *requestId, bool success, UPLOAD_ERROR_REASON reason)
Definition: NGIAgoraRtcConnection.h:898
agora::rtc::TConnectSettings::channelId
const char * channelId
Definition: NGIAgoraRtcConnection.h:70
agora::rtc::IRtcConnection
Definition: NGIAgoraRtcConnection.h:190
agora::util::CopyableAutoPtr
Definition: AgoraBase.h:156
agora::rtc::RdtStreamType
RdtStreamType
Reliable Data Transmission Tunnel message stream type.
Definition: AgoraBase.h:8008
agora::rtc::CLIENT_ROLE_AUDIENCE
@ CLIENT_ROLE_AUDIENCE
Definition: AgoraBase.h:2971
agora::rtc::MultipathType
MultipathType
Network path types used in multipath transmission.
Definition: AgoraBase.h:2661
agora::rtc::CLIENT_ROLE_CHANGE_FAILED_REASON
CLIENT_ROLE_CHANGE_FAILED_REASON
The reason for a user role switch failure.
Definition: AgoraBase.h:5189
agora::rtc::uid_t
unsigned int uid_t
Definition: AgoraMediaBase.h:28
agora::rtc::IRtcConnectionObserver::onReconnected
virtual void onReconnected(const TConnectionInfo &connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason)=0
agora::rtc::RtcConnectionConfiguration::isDataChannelOnly
bool isDataChannelOnly
Definition: NGIAgoraRtcConnection.h:156
agora::rtc::CLIENT_ROLE_TYPE
CLIENT_ROLE_TYPE
The user role in the interactive live streaming.
Definition: AgoraBase.h:2963
agora::rtc::IRtcConnection::getConnId
virtual conn_id_t getConnId()=0
agora::rtc::ENCRYPTION_ERROR_TYPE
ENCRYPTION_ERROR_TYPE
Encryption error type.
Definition: AgoraBase.h:7391
agora::rtc::IRtcConnection::enableEncryption
virtual int enableEncryption(bool enabled, const EncryptionConfig &config, aosl_ref_t ares=AOSL_REF_INVALID)=0
agora::rtc::TConnectionInfo::proxyType
int proxyType
Definition: NGIAgoraRtcConnection.h:48
agora::media::CONTENT_INSPECT_RESULT
CONTENT_INSPECT_RESULT
Definition: AgoraMediaBase.h:1274
agora::rtc::IRtcConnection::getUserInfoByUserAccount
virtual int getUserInfoByUserAccount(const char *userAccount, rtc::UserInfo *userInfo)=0
agora::rtc::CONNECTION_STATE_TYPE
CONNECTION_STATE_TYPE
Connection states.
Definition: AgoraBase.h:4445
agora::rtc::IRtcConnection::unregisterObserver
virtual int unregisterObserver(IRtcConnectionObserver *observer)=0
agora::rtc::RtcConnectionConfiguration::maxSendBitrate
int maxSendBitrate
Definition: NGIAgoraRtcConnection.h:112
rtc
Definition: video_node_i.h:28
agora::rtc::TConnectionInfo::internalUid
uid_t internalUid
Definition: NGIAgoraRtcConnection.h:46
agora::Optional< int64_t >
agora::rtc::IRtcConnection::setPreferMultipathType
virtual int setPreferMultipathType(MultipathType type, aosl_ref_t ares=AOSL_REF_INVALID)=0
agora::rtc::ClientRoleOptions
Setting of user role properties.
Definition: AgoraBase.h:3011
agora::rtc::IRtcConnection::registerNetworkObserver
virtual int registerNetworkObserver(INetworkObserver *observer, void(*safeDeleter)(INetworkObserver *)=NULL, aosl_ref_t ares=AOSL_REF_INVALID)=0
agora::rtc::TConnectionInfo::id
conn_id_t id
Definition: NGIAgoraRtcConnection.h:30
agora::rtc::QUALITY_TYPE
QUALITY_TYPE
Network quality types.
Definition: AgoraBase.h:952
agora::CHANNEL_TYPE
CHANNEL_TYPE
Definition: AgoraBase.h:298
agora::CHANNEL_PROFILE_LIVE_BROADCASTING
@ CHANNEL_PROFILE_LIVE_BROADCASTING
Definition: AgoraBase.h:275