为允许用户在有网络访问限制的环境中使用 Agora RTC SDK,Agora 提供云代理服务。用户只需在防火墙上将特定的 IP 地址和端口加入白名单,并调用 API 配置 Agora 云代理服务。
下载 Agora RTC SDK。
参考《快速开始》文档完成开发环境准备。
联系 sales@agora.io,提供以下信息申请开通云代理服务。
收到申请后,Agora 会提供用于云代理的 IP 地址和端口。请确保将 Agora 提供的 IP 地址和端口添加到防火墙白名单。
对于 v3.3.0 或之后的 SDK,你可以调用 setCloudProxy
方法开启云代理。
添加白名单后,调用 setCloudProxy
,并将 proxyType
设为 UDP_PROXY(1)
或 TCP_PROXY(2)
。
测试是否能正常实现音视频通话或直播。
如需关闭已设置的云代理服务,调用 setCloudProxy
,并将 proxyType
设为 NONE_PROXY
。
对于 v3.2.1 或之前的 SDK,你可以调用 setParameters
私有参数开启云代理。
添加白名单后,请参考如下示例代码开启云代理:
// 开启云代理服务,并通过默认方式配置云代理服务。
setParameters("{\"rtc.enable_proxy\":true}");
如需关闭云代理服务,调用 setParameters("{\"rtc.enable_proxy\":false}");
。
setCloudProxy
方法需要在使用云代理服务之前调用。例如你需要使用云代理才能加入频道,则需要在 joinChannel
之前调用;如果你需要使用云代理才能进行通话前网络探测,则需要在 startLastmileProbeTest
之前调用。setCloudProxy
方法在 RtcEngine 生命周期内有效。