A class defining the properties of the config parameter in the createClient method.

Note:

Ensure that you set mode and codec.

example

Sample code

var config = {
     mode: "live",
     codec: "vp8",
     proxyServer: "YOUR HTTP PROXY SERVER IP",
     turnServer: {
         turnServerURL: "YOUR TURNSERVER URL",
         username: "YOUR USERNAME",
         password: "YOUR PASSWORD",
         udpport: "THE UDP PORT YOU WANT TO ADD",
         tcpport: "THE TCP PORT YOU WANT TO ADD",
         forceturn: false
     }
}
var client = AgoraRTC.createClient(config);

Hierarchy

  • ClientConfig

Index

Properties

codec

codec: "vp8" | "h264"

The codec the Web browser uses for encoding.

  • "vp8": Sets the browser to use VP8 for encoding.
  • "h264": Sets the browser to use H.264 for encoding.

Note:

mode

mode: "live" | "rtc"

The channel profile.

Agora Web SDK needs to know the application scenario to apply different optimization methods.

Currently Agora Web SDK supports the following channel profiles:

  • "live": Sets the channel profile as live broadcast. Host and audience roles that can be set by calling the Client.setClientRole method. The host sends and receives voice/video, while the audience can only receive voice/video.
  • "rtc": Sets the channel profile as communication. This is used in one-on-one calls or group calls, where all users in the channel can talk freely.

Note:

If you need to communicate with Agora Native SDK, Agora recommends the following settings:

  • For Native SDK v2.3.2 and later:
    • Set mode as "rtc" or "live" if the Native SDK uses the communication channel profile.
    • Set mode as "live" if the Native SDK uses the live broadcast channel profile.
  • For Native SDK before v2.3.2, set mode as "live" regardless of which channel profile the Native SDK uses.

Note:

The "rtc" mode supports the Agora Recording SDK 2.3.3 or later.

Optional proxyServer

proxyServer: string

Your HTTP proxy server domain name.

You can also use cloud proxy by startProxyServer. See Use Cloud Proxy for details.

ASCII characters only, and the string length must be greater than 0 and less than 256 bytes.

Note:

  • We support https/SSL proxy server via port 443.
  • Ensure that the proxy server supports wss (WebSocket Secure).
  • For the required firewall ports, see Firewall Requirements.

Optional turnServer

turnServer: object

TURN server settings.

You can also use cloud proxy by startProxyServer. See Use Cloud Proxy for details.

Type declaration

  • Optional forceturn?: boolean

    Sets whether to force data transfer by TURN Server:

    • true: Force data transfer.
    • false: (default) Not to force data transfer.
  • password: string

    Your TURN Server password. ASCII characters only, and the string length must be greater than 0 and less than 256 bytes.

  • Optional tcpport?: string

    The TCP port(s) you want add to TURN Server. Numeric characters only, and the string length must be greater than 0 and less than 256 bytes.

  • turnServerURL: string

    Your TURN Server URL address. ASCII characters only, and the string length must be greater than 0 and less than 256 bytes.

  • udpport: string

    The UDP port(s) you want to add to TURN Server. Numeric characters only, and the string length must be greater than 0 and less than 256 bytes.

  • username: string

    Your TURN Server username. ASCII characters only, and the string length must be greater than 0 and less than 256 bytes.