Skip to main content

You are viewing Agora Docs forBetaproducts and features. Switch to Docs

Android
iOS
macOS
Web
Windows
Electron
Flutter
React Native
React JS
Unity
Unreal Engine
Unreal (Blueprint)

Connect through restricted networks with Cloud Proxy

Large enterprises, hospitals, universities, banks, and other institutions commonly deploy firewalls to meet their stringent security requirements. To ensure uninterrupted access to its services for enterprise users behind firewalls, Agora offers firewall whitelist and Cloud Proxy services.

Admins enable users to use Video SDK in network-restricted environments by adding specific IP addresses and ports to the firewall whitelist. Users make API calls to configure the Cloud Proxy service.

Understand the tech

Cloud Proxy works as follows:

  1. Video SDK initiates a request to Cloud Proxy.
  2. Cloud Proxy returns the corresponding proxy information.
  3. Agora SDK sends data to Cloud Proxy. Cloud Proxy receives the data and transmits it to Agora SD-RTN™.
  4. Agora SD-RTN™ returns data to Cloud Proxy. Cloud Proxy receives the data and sends it to the SDK.

Prerequisites

Ensure that you have implemented the SDK quickstart in your project.

Implement Cloud Proxy

Take the following steps to implement the use of Cloud Proxy in your app:

  1. Contact Agora support and provide the following information to request Cloud Proxy service:

    • App ID
    • Cloud Proxy service usage area
    • Concurrency scale
    • Network operator and other relevant information
  2. After receiving the request, Agora provides the IP addresses and ports used for Cloud Proxy.

  3. Add the IP addresses and ports provided by Agora to your firewall whitelist.

  1. Call setCloudProxy and set proxyType to TRANSPORT_TYPE_UDP_PROXY or TRANSPORT_TYPE_TCP_PROXY to enable Cloud Proxy.

  2. Test if you can initiate audio and video calls or live broadcasts normally.

  3. To stop using Cloud Proxy, call setCloudProxy and set proxyType to TRANSPORT_TYPE_NONE_PROXY.

  4. To update the current proxyType, call setCloudProxy(TRANSPORT_TYPE_NONE_PROXY) first, then call setCloudProxy again with the new proxyType.

Call setCloudProxy outside the channel. Its settings are valid within the RtcEngine life cycle.

Reference

This section contains content that completes the information on this page, or points you to documentation that explains other aspects to this product.

Caution
  • If a user is in an intranet firewall environment and uses TRANSPORT_TYPE_UDP_PROXY, the services for Media Push and Co-hosting across channels are not available.

API reference

Video Calling