Agora RTC Objective-C API Reference  Refactor
NGIAgoraRtcConnection.h
Go to the documentation of this file.
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 
13 namespace agora {
14 namespace rtc {
15 class IAudioEncodedFrameSender;
16 class IRtcConnectionObserver;
17 class INetworkObserver;
18 class IRtcConnection;
19 class IVideoEncodedImageSender;
20 class ILocalUser;
21 
37  CONNECTION_STATE_TYPE state;
46 
47  int proxyType;
48 
50 
52 };
53 
58  const char* token;
69  const char* channelId;
76 
77  /*
78  App can provide a app defined start time to trace some events like connect cost , first video, etc.
79  */
81 };
82 
114  int minPort;
118  int maxPort;
126 
131 
136 
141 
150 
152  : autoSubscribeAudio(true),
153  autoSubscribeVideo(true),
155  maxSendBitrate(-1),
156  minPort(0),
157  maxPort(0),
160  audioRecvEncodedFrame(false),
161  audioRecvMediaPacket(false),
162  videoRecvMediaPacket(false),
163  isInteractiveAudience(false) {}
164 };
165 
177  protected:
179 
180  public:
208  virtual int connect(const char* token, const char* channelId, user_id_t userId) = 0;
209 
221  virtual int connect(const TConnectSettings& settings) = 0;
222 
234  virtual int disconnect() = 0;
235 
263  virtual int startLastmileProbeTest(const LastmileProbeConfig& config) = 0;
264 
271  virtual int stopLastmileProbeTest() = 0;
272 
282  virtual int renewToken(const char* token) = 0;
283 
292 
300  virtual ILocalUser* getLocalUser() = 0;
301 
314  virtual int getRemoteUsers(UserList& users) = 0;
315 
326  virtual int getUserInfo(user_id_t userId, agora::UserInfo& userInfo) = 0;
327 
336  virtual int registerObserver(IRtcConnectionObserver* observer, void(*safeDeleter)(IRtcConnectionObserver*) = NULL) = 0;
337 
347  virtual int unregisterObserver(IRtcConnectionObserver* observer) = 0;
348 
357  virtual int registerNetworkObserver(INetworkObserver* observer, void(*safeDeleter)(INetworkObserver*) = NULL) = 0;
358 
368  virtual int unregisterNetworkObserver(INetworkObserver* observer) = 0;
369 
377  virtual conn_id_t getConnId() = 0;
378 
387 
396 
416  virtual int createDataStream(int* streamId, bool reliable, bool ordered, bool sync) = 0;
417 
433  virtual int sendStreamMessage(int streamId, const char* data, size_t length) = 0;
434 
453  virtual int enableEncryption(bool enabled, const EncryptionConfig& config) = 0;
454 
468  virtual int sendCustomReportMessage(const char* id, const char* category, const char* event, const char* label, int value) = 0;
480  virtual int getUserInfoByUserAccount(const char* userAccount, rtc::UserInfo* userInfo) = 0;
492  virtual int getUserInfoByUid(uid_t uid, rtc::UserInfo* userInfo) = 0;
493 };
494 
499  public:
501 
508  virtual void onConnected(const TConnectionInfo& connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason) = 0;
509 
516  virtual void onDisconnected(const TConnectionInfo& connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason) = 0;
517 
524  virtual void onConnecting(const TConnectionInfo& connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason) = 0;
525 
532  virtual void onReconnecting(const TConnectionInfo& connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason) = 0;
533 
534  // This should be deleted. onConnected is enough.
535  virtual void onReconnected(const TConnectionInfo& connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason) = 0;
536 
542  virtual void onConnectionLost(const TConnectionInfo& connectionInfo) = 0;
543 
551  virtual void onLastmileQuality(const QUALITY_TYPE quality) = 0;
552 
560  virtual void onLastmileProbeResult(const LastmileProbeResult& result) = 0;
561 
572  virtual void onTokenPrivilegeWillExpire(const char* token) = 0;
573 
580  virtual void onTokenPrivilegeDidExpire() = 0;
581 
588  virtual void onConnectionFailure(const TConnectionInfo& connectionInfo,
589  CONNECTION_CHANGED_REASON_TYPE reason) = 0;
590 
598  virtual void onUserJoined(user_id_t userId) = 0;
599 
608  virtual void onUserLeft(user_id_t userId, USER_OFFLINE_REASON_TYPE reason) = 0;
609 
617  virtual void onTransportStats(const RtcStats& stats) = 0;
618 
626  virtual void onChangeRoleSuccess(CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole, const ClientRoleOptions& newRoleOptions) {
627  (void)oldRole;
628  (void)newRole;
629  (void)newRoleOptions;
630  }
631 
636  (void)reason;
637  (void)currentRole;
638  }
639 
647  (void)error;
648  }
649 
660  virtual void onUserNetworkQuality(user_id_t userId, QUALITY_TYPE txQuality,
661  QUALITY_TYPE rxQuality) {
662  (void)userId;
663  (void)txQuality;
664  (void)rxQuality;
665  }
666 
670  virtual void onNetworkTypeChanged(NETWORK_TYPE type) {
671  (void)type;
672  }
673 
675  virtual void onContentInspectResult(media::CONTENT_INSPECT_RESULT result) { (void)result; }
688  virtual void onSnapshotTaken(uid_t uid, const char* filePath, int width, int height, int errCode) {
689  (void)uid;
690  (void)filePath;
691  (void)width;
692  (void)height;
693  (void)errCode;
694  }
700  virtual void onError(ERROR_CODE_TYPE error, const char* msg) {
701  (void)error;
702  (void)msg;
703  }
704 
734  virtual void onChannelMediaRelayStateChanged(int state, int code) = 0;
735 
741  virtual void onLocalUserRegistered(uid_t uid, const char* userAccount) {
742  (void)uid;
743  (void)userAccount;
744  }
745 
747  virtual void onUserAccountUpdated(uid_t uid, const char* userAccount) {
748  (void)uid;
749  (void)userAccount;
750  }
751 
761  virtual void onStreamMessageError(user_id_t userId, int streamId, int code, int missed,
762  int cached) {
763  (void)userId;
764  (void)streamId;
765  (void)code;
766  (void)missed;
767  (void)cached;
768  }
769 
774  virtual void onEncryptionError(ENCRYPTION_ERROR_TYPE errorType) {
775  (void)errorType;
776  }
783  virtual void onUploadLogResult(const char* requestId, bool success, UPLOAD_ERROR_REASON reason) {
784  (void)requestId;
785  (void)success;
786  (void)reason;
787  }
788 
795  virtual void onWlAccMessage(WLACC_MESSAGE_REASON reason, WLACC_SUGGEST_ACTION action, const char* wlAccMsg) {
796  (void)reason;
797  (void)action;
798  (void)wlAccMsg;
799  }
800 
806  virtual void onWlAccStats(WlAccStats currentStats, WlAccStats averageStats) {
807  (void)currentStats;
808  (void)averageStats;
809  }
810 };
811 
813  public:
814  virtual ~INetworkObserver() {}
815 
816  public:
825  virtual void onUplinkNetworkInfoUpdated(const UplinkNetworkInfo& info) {
826  (void)info;
827  }
828 
837  (void)info;
838  }
839 };
840 
841 } // namespace rtc
842 } // namespace agora
agora::rtc::WLACC_MESSAGE_REASON
WLACC_MESSAGE_REASON
Definition: AgoraBase.h:4092
agora::rtc::QUALITY_TYPE
QUALITY_TYPE
Definition: AgoraBase.h:873
agora::rtc::UPLOAD_ERROR_REASON
UPLOAD_ERROR_REASON
Definition: AgoraBase.h:5595
agora::rtc::IRtcConnectionObserver::onStreamMessageError
virtual void onStreamMessageError(user_id_t userId, int streamId, int code, int missed, int cached)
Definition: NGIAgoraRtcConnection.h:761
agora::rtc::TConnectionInfo::TConnectionInfo
TConnectionInfo()
Definition: NGIAgoraRtcConnection.h:51
agora::CHANNEL_PROFILE_LIVE_BROADCASTING
@ CHANNEL_PROFILE_LIVE_BROADCASTING
Definition: AgoraBase.h:268
agora::rtc::UserInfo
Definition: AgoraBase.h:5703
agora::rtc::RtcConnectionConfiguration::channelProfile
CHANNEL_PROFILE_TYPE channelProfile
Definition: NGIAgoraRtcConnection.h:125
agora::rtc::LastmileProbeResult
Definition: AgoraBase.h:3940
agora::rtc::IRtcConnection::enableEncryption
virtual int enableEncryption(bool enabled, const EncryptionConfig &config)=0
agora::ERROR_CODE_TYPE
ERROR_CODE_TYPE
Definition: AgoraBase.h:441
agora::rtc::IRtcConnectionObserver::onChannelMediaRelayStateChanged
virtual void onChannelMediaRelayStateChanged(int state, int code)=0
agora::rtc::TConnectSettings::userId
user_id_t userId
Definition: NGIAgoraRtcConnection.h:75
agora::base::IAgoraParameter
Definition: IAgoraParameter.h:148
agora::rtc::IRtcConnection::sendCustomReportMessage
virtual int sendCustomReportMessage(const char *id, const char *category, const char *event, const char *label, int value)=0
agora::rtc::LastmileProbeConfig
Definition: AgoraBase.h:3872
agora::rtc::TConnectSettings::appDefinedStartTimeMs
agora::Optional< int64_t > appDefinedStartTimeMs
Definition: NGIAgoraRtcConnection.h:80
agora::rtc::RtcConnectionConfiguration::minPort
int minPort
Definition: NGIAgoraRtcConnection.h:114
AgoraBase.h
agora::rtc::USER_OFFLINE_REASON_TYPE
USER_OFFLINE_REASON_TYPE
Definition: AgoraBase.h:835
agora::rtc::RtcConnectionConfiguration::maxPort
int maxPort
Definition: NGIAgoraRtcConnection.h:118
agora::rtc::IRtcConnectionObserver::onDisconnected
virtual void onDisconnected(const TConnectionInfo &connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason)=0
agora::rtc::uid_t
unsigned int uid_t
Definition: AgoraMediaBase.h:29
agora::rtc::INetworkObserver
Definition: NGIAgoraRtcConnection.h:812
agora::rtc::IRtcConnection::~IRtcConnection
~IRtcConnection()
Definition: NGIAgoraRtcConnection.h:178
agora::rtc::IRtcConnectionObserver::onChangeRoleFailure
virtual void onChangeRoleFailure(CLIENT_ROLE_CHANGE_FAILED_REASON reason, CLIENT_ROLE_TYPE currentRole)
Definition: NGIAgoraRtcConnection.h:635
agora::rtc::IRtcConnectionObserver::onSnapshotTaken
virtual void onSnapshotTaken(uid_t uid, const char *filePath, int width, int height, int errCode)
snapshot taken callback
Definition: NGIAgoraRtcConnection.h:688
agora::rtc::IRtcConnectionObserver::onUserJoined
virtual void onUserJoined(user_id_t userId)=0
agora::rtc::IRtcConnectionObserver
Definition: NGIAgoraRtcConnection.h:498
agora::rtc::IRtcConnectionObserver::onEncryptionError
virtual void onEncryptionError(ENCRYPTION_ERROR_TYPE errorType)
Definition: NGIAgoraRtcConnection.h:774
agora::rtc::IRtcConnectionObserver::onConnectionLost
virtual void onConnectionLost(const TConnectionInfo &connectionInfo)=0
agora::rtc::IRtcConnectionObserver::onUploadLogResult
virtual void onUploadLogResult(const char *requestId, bool success, UPLOAD_ERROR_REASON reason)
Definition: NGIAgoraRtcConnection.h:783
agora::rtc::IRtcConnection::stopLastmileProbeTest
virtual int stopLastmileProbeTest()=0
agora::rtc::TConnectionInfo::localUserId
util::AString localUserId
Definition: NGIAgoraRtcConnection.h:41
agora::rtc::IRtcConnectionObserver::onLocalUserRegistered
virtual void onLocalUserRegistered(uid_t uid, const char *userAccount)
Definition: NGIAgoraRtcConnection.h:741
agora::util::AList
Definition: AgoraBase.h:222
agora::rtc::RtcConnectionConfiguration::maxSendBitrate
int maxSendBitrate
Definition: NGIAgoraRtcConnection.h:110
agora::rtc::IRtcConnection::unregisterObserver
virtual int unregisterObserver(IRtcConnectionObserver *observer)=0
agora::rtc::CONNECTION_STATE_DISCONNECTED
@ CONNECTION_STATE_DISCONNECTED
Definition: AgoraBase.h:3530
agora::rtc::IRtcConnection::getLocalUser
virtual ILocalUser * getLocalUser()=0
agora::rtc::IRtcConnectionObserver::onTransportStats
virtual void onTransportStats(const RtcStats &stats)=0
agora::rtc::IRtcConnection::registerObserver
virtual int registerObserver(IRtcConnectionObserver *observer, void(*safeDeleter)(IRtcConnectionObserver *)=NULL)=0
agora::rtc::TConnectSettings
Definition: NGIAgoraRtcConnection.h:54
agora::rtc::IRtcConnection::getUserInfo
virtual int getUserInfo(user_id_t userId, agora::UserInfo &userInfo)=0
agora::rtc::TConnectionInfo::connectionIp
util::AString connectionIp
Definition: NGIAgoraRtcConnection.h:49
agora::rtc::IRtcConnectionObserver::onReconnecting
virtual void onReconnecting(const TConnectionInfo &connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason)=0
agora::rtc::CLIENT_ROLE_TYPE
CLIENT_ROLE_TYPE
Definition: AgoraBase.h:2286
agora::rtc::IRtcConnectionObserver::onLastmileProbeResult
virtual void onLastmileProbeResult(const LastmileProbeResult &result)=0
agora
Definition: AgoraAtomicOps.h:21
agora::rtc::ENCRYPTION_ERROR_TYPE
ENCRYPTION_ERROR_TYPE
Definition: AgoraBase.h:5571
agora::rtc::WLACC_SUGGEST_ACTION
WLACC_SUGGEST_ACTION
Definition: AgoraBase.h:4106
agora::rtc::RtcConnectionConfiguration::autoSubscribeVideo
bool autoSubscribeVideo
Definition: NGIAgoraRtcConnection.h:100
agora::rtc::CONNECTION_CHANGED_REASON_TYPE
CONNECTION_CHANGED_REASON_TYPE
Definition: AgoraBase.h:3967
agora::rtc::TConnectionInfo
Definition: NGIAgoraRtcConnection.h:25
agora::rtc::IRtcConnectionObserver::onUserLeft
virtual void onUserLeft(user_id_t userId, USER_OFFLINE_REASON_TYPE reason)=0
agora::rtc::IRtcConnectionObserver::onUserAccountUpdated
virtual void onUserAccountUpdated(uid_t uid, const char *userAccount)
Definition: NGIAgoraRtcConnection.h:747
agora::rtc::IRtcConnectionObserver::~IRtcConnectionObserver
virtual ~IRtcConnectionObserver()
Definition: NGIAgoraRtcConnection.h:500
agora::rtc::IRtcConnection::getRemoteUsers
virtual int getRemoteUsers(UserList &users)=0
agora::rtc::IRtcConnectionObserver::onTokenPrivilegeWillExpire
virtual void onTokenPrivilegeWillExpire(const char *token)=0
agora::rtc::RtcConnectionConfiguration::autoSubscribeAudio
bool autoSubscribeAudio
Definition: NGIAgoraRtcConnection.h:94
agora::rtc::TConnectionInfo::internalUid
uid_t internalUid
Definition: NGIAgoraRtcConnection.h:45
agora::rtc::IRtcConnectionObserver::onTokenPrivilegeDidExpire
virtual void onTokenPrivilegeDidExpire()=0
agora::rtc::IRtcConnectionObserver::onLicenseValidationFailure
virtual void onLicenseValidationFailure(LICENSE_ERROR_TYPE error)
Definition: NGIAgoraRtcConnection.h:646
agora::rtc::IRtcConnectionObserver::onWlAccMessage
virtual void onWlAccMessage(WLACC_MESSAGE_REASON reason, WLACC_SUGGEST_ACTION action, const char *wlAccMsg)
Definition: NGIAgoraRtcConnection.h:795
agora::rtc::RtcConnectionConfiguration::clientRoleType
CLIENT_ROLE_TYPE clientRoleType
Definition: NGIAgoraRtcConnection.h:122
agora::rtc::IRtcConnectionObserver::onConnecting
virtual void onConnecting(const TConnectionInfo &connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason)=0
agora::rtc::IRtcConnection::sendStreamMessage
virtual int sendStreamMessage(int streamId, const char *data, size_t length)=0
agora::CHANNEL_PROFILE_TYPE
CHANNEL_PROFILE_TYPE
Definition: AgoraBase.h:256
agora::rtc::IRtcConnection::getUserInfoByUid
virtual int getUserInfoByUid(uid_t uid, rtc::UserInfo *userInfo)=0
agora::rtc::CLIENT_ROLE_AUDIENCE
@ CLIENT_ROLE_AUDIENCE
Definition: AgoraBase.h:2294
agora::rtc::conn_id_t
unsigned int conn_id_t
Definition: AgoraMediaBase.h:31
agora::rtc::IRtcConnectionObserver::onWlAccStats
virtual void onWlAccStats(WlAccStats currentStats, WlAccStats averageStats)
Definition: NGIAgoraRtcConnection.h:806
agora::rtc::TConnectSettings::token
const char * token
Definition: NGIAgoraRtcConnection.h:58
agora::rtc::IRtcConnection::getTransportStats
virtual RtcStats getTransportStats()=0
agora::rtc::TConnectionInfo::proxyType
int proxyType
Definition: NGIAgoraRtcConnection.h:47
agora::UserInfo
Definition: AgoraBase.h:806
agora::rtc::IRtcConnection::createDataStream
virtual int createDataStream(int *streamId, bool reliable, bool ordered, bool sync)=0
agora::rtc::ILocalUser
Definition: NGIAgoraLocalUser.h:54
agora::rtc::WlAccStats
Definition: AgoraBase.h:4128
agora::media::CONTENT_INSPECT_RESULT
CONTENT_INSPECT_RESULT
Definition: AgoraMediaBase.h:320
agora::rtc::INetworkObserver::onUplinkNetworkInfoUpdated
virtual void onUplinkNetworkInfoUpdated(const UplinkNetworkInfo &info)
Definition: NGIAgoraRtcConnection.h:825
agora::rtc::TConnectSettings::channelId
const char * channelId
Definition: NGIAgoraRtcConnection.h:69
agora::rtc::RtcConnectionConfiguration::RtcConnectionConfiguration
RtcConnectionConfiguration()
Definition: NGIAgoraRtcConnection.h:151
agora::rtc::INetworkObserver::onDownlinkNetworkInfoUpdated
virtual void onDownlinkNetworkInfoUpdated(const DownlinkNetworkInfo &info)
Definition: NGIAgoraRtcConnection.h:836
agora::rtc::EncryptionConfig
Definition: AgoraBase.h:5512
time_utils.h
agora::rtc::RtcConnectionConfiguration::audioRecvMediaPacket
bool audioRecvMediaPacket
Definition: NGIAgoraRtcConnection.h:135
agora::rtc::IRtcConnection::connect
virtual int connect(const TConnectSettings &settings)=0
agora::rtc::IRtcConnectionObserver::onChangeRoleSuccess
virtual void onChangeRoleSuccess(CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole, const ClientRoleOptions &newRoleOptions)
Definition: NGIAgoraRtcConnection.h:626
agora::rtc::RtcStats
Definition: AgoraBase.h:2090
agora::rtc::IRtcConnectionObserver::onConnectionFailure
virtual void onConnectionFailure(const TConnectionInfo &connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason)=0
agora::rtc::IRtcConnectionObserver::onLastmileQuality
virtual void onLastmileQuality(const QUALITY_TYPE quality)=0
agora::rtc::RtcConnectionConfiguration::isInteractiveAudience
bool isInteractiveAudience
Definition: NGIAgoraRtcConnection.h:149
agora::rtc::RtcConnectionConfiguration
Definition: NGIAgoraRtcConnection.h:88
agora::RefCountInterface
Definition: AgoraRefPtr.h:31
agora::rtc::IRtcConnection::getAgoraParameter
virtual agora::base::IAgoraParameter * getAgoraParameter()=0
agora::rtc::IRtcConnection::renewToken
virtual int renewToken(const char *token)=0
agora::rtc::IRtcConnection::disconnect
virtual int disconnect()=0
agora::rtc::IRtcConnection::registerNetworkObserver
virtual int registerNetworkObserver(INetworkObserver *observer, void(*safeDeleter)(INetworkObserver *)=NULL)=0
agora::rtc::RtcConnectionConfiguration::enableAudioRecordingOrPlayout
bool enableAudioRecordingOrPlayout
Definition: NGIAgoraRtcConnection.h:106
agora::rtc::IRtcConnectionObserver::onNetworkTypeChanged
virtual void onNetworkTypeChanged(NETWORK_TYPE type)
Definition: NGIAgoraRtcConnection.h:670
agora::rtc::TConnectionInfo::id
conn_id_t id
Definition: NGIAgoraRtcConnection.h:29
agora::rtc::IRtcConnection
Definition: NGIAgoraRtcConnection.h:176
agora::util::CopyableAutoPtr
Definition: AgoraBase.h:145
agora::rtc::NETWORK_TYPE
NETWORK_TYPE
Definition: AgoraBase.h:4146
agora::rtc::IRtcConnectionObserver::onError
virtual void onError(ERROR_CODE_TYPE error, const char *msg)
Definition: NGIAgoraRtcConnection.h:700
agora::rtc::IRtcConnection::unregisterNetworkObserver
virtual int unregisterNetworkObserver(INetworkObserver *observer)=0
agora::rtc::IRtcConnection::getConnId
virtual conn_id_t getConnId()=0
agora::rtc::IRtcConnectionObserver::onContentInspectResult
virtual void onContentInspectResult(media::CONTENT_INSPECT_RESULT result)
Definition: NGIAgoraRtcConnection.h:675
agora::rtc::TConnectionInfo::channelId
util::AString channelId
Definition: NGIAgoraRtcConnection.h:33
agora::rtc::IRtcConnection::getUserInfoByUserAccount
virtual int getUserInfoByUserAccount(const char *userAccount, rtc::UserInfo *userInfo)=0
agora::rtc::RtcConnectionConfiguration::videoRecvMediaPacket
bool videoRecvMediaPacket
Definition: NGIAgoraRtcConnection.h:140
agora::rtc::IRtcConnectionObserver::onUserNetworkQuality
virtual void onUserNetworkQuality(user_id_t userId, QUALITY_TYPE txQuality, QUALITY_TYPE rxQuality)
Definition: NGIAgoraRtcConnection.h:660
agora::rtc::IRtcConnection::connect
virtual int connect(const char *token, const char *channelId, user_id_t userId)=0
agora::LICENSE_ERROR_TYPE
LICENSE_ERROR_TYPE
Definition: AgoraBase.h:745
agora::rtc::IRtcConnectionObserver::onConnected
virtual void onConnected(const TConnectionInfo &connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason)=0
agora::rtc::CLIENT_ROLE_CHANGE_FAILED_REASON
CLIENT_ROLE_CHANGE_FAILED_REASON
Definition: AgoraBase.h:4070
agora::rtc::RtcConnectionConfiguration::audioRecvEncodedFrame
bool audioRecvEncodedFrame
Definition: NGIAgoraRtcConnection.h:130
agora::user_id_t
const char * user_id_t
Definition: AgoraBase.h:800
agora::Optional< int64_t >
agora::rtc::ClientRoleOptions
Definition: AgoraBase.h:2335
agora::rtc::IRtcConnection::getConnectionInfo
virtual TConnectionInfo getConnectionInfo()=0
agora::rtc::IRtcConnectionObserver::onReconnected
virtual void onReconnected(const TConnectionInfo &connectionInfo, CONNECTION_CHANGED_REASON_TYPE reason)=0
agora::rtc::IRtcConnection::startLastmileProbeTest
virtual int startLastmileProbeTest(const LastmileProbeConfig &config)=0
agora::rtc::INetworkObserver::~INetworkObserver
virtual ~INetworkObserver()
Definition: NGIAgoraRtcConnection.h:814
agora::rtc::TConnectionInfo::state
CONNECTION_STATE_TYPE state
Definition: NGIAgoraRtcConnection.h:37