Manage call applications

更新时间:
复制 MD 格式

On the call application list page, you can view the details of your call applications and configure features, such as audio and video calls.

View call applications

On the call application list page, you can view the name, bizName, automatic recording status, creation time, and key for each application.

  • Call application name: The name that you entered when you created the application. This name can be edited.

  • bizName: The scenario code for audio and video calls. It is automatically generated after the application is created. Terminals that use the same bizName can make audio and video calls to each other.

  • Automatic recording status: Indicates whether automatic recording is enabled. To configure this feature, click Feature Configuration in the Actions column.

  • Creation time: The time when the call application was created.

  • Key: Automatically generated after the application is created. It is used to generate a signature on the server-side. Click View Document for instructions on how to use the key.

Feature configuration

On the call application list page, click Feature Configuration in the Actions column for an application. This opens the feature configuration page, where you can configure automatic cloud recording and set a proxy server address for media streams.

To make changes, click the Edit button to enter edit mode. When you are finished, click the Save button to save your configuration.

Configure automatic cloud recording and the recording webhook address

Automatic cloud recording is a feature that automatically records call content on the server-side. You can enable or disable this feature and set a recording webhook address as needed.

  • Automatic cloud recording: If this feature is enabled, the server-side automatically records the content of an audio or video call from start to finish. A recording file is generated when the call ends. If this feature is disabled, the server-side does not automatically record calls.

    Note

    Automatic cloud recording is Disabled by default and must be enabled manually.

  • Set recording webhook address: This is a URL that uses the HTTP or HTTPS protocol. After you set this address, the server-side sends status information to this URL when a recording starts, pauses, or ends, or when a recording file fault occurs.

    The server-side sends callbacks using the POST (application/json) method. The fields in the callback request are described below.

    Field

    Data Type

    Required

    Description

    bizRequestId

    String

    Yes

    Request ID.

    bizName

    String

    Yes

    Business identity.

    appId

    String

    Yes

    The ID of the mPaaS application.

    workspaceId

    String

    Yes

    Workspace ID.

    roomId

    String

    Yes

    Channel ID.

    recordId

    String

    Yes

    Recording ID.

    eventCode

    Int

    Yes

    0: A stream was recorded successfully.

    10: Initialization succeeded.

    11: Recording ended.

    50: Recording warning.

    99: Recording result.

    500301: Stream disconnection warning.

    500302: Low frame rate warning.

    1000xx: Recording failed to start.

    100001: A connection to the room could not be established.

    100002: Failed to join the channel.

    100003: Failed to subscribe to the stream.

    100004: Missing subscribed ingest endpoints.

    100005: Failed to connect to the MCU.

    100006: Abnormal video aspect ratio.

    100007: The actual number of custom mixed streams is greater than the set number.

    1001xx: Recording failed during the process.

    100101: Failed to create the recording file.

    100102: Failed to convert the recording file format.

    100103: Failed to save the file.

    100104: Failed to separate audio and video.

    100105: Recording child process crashed.

    100106: Disk is full or failed to write the file.

    1002xx: Recording failed during the end phase.

    100201: Failed to upload the file.

    recordResult

    JSON

    No

    • Required when eventCode is 99. The JSON body is as follows: status: int, recording status, required.

      • 2: The recording was successful and the file was saved.

      • 3: The recording failed.

    • fileType: int, file type, sent when status is 2.

      • 1: local

      • 2: OSS

      • 3: AFTS

      • 4: HDFS

    • filePath: String, file path, sent when status is 2.

    • recordStartTime: long, the absolute time (server time, in ms) of the first recorded frame, sent when status is 2.

    • mediaType: int, the type of the recording file, sent when status is 2.

      • 0: Audio and video

      • 1: Audio-only

      • 2: Video-only

    The data fields that the business server must return are as follows:

    Field

    Type

    Required

    Description

    bizRequestId

    String

    Yes

    The bizRequestId from the callback request.

    code

    int

    Yes

    Status code. 0 indicates success.

    The following example shows the request data:

    {
    "bizRequestId":"123456789",
    "bizName":"bizName",
    "appId":"appId",
    "workspaceId":"workspaceId",
    "roomId":"xxxxxx",
    "recordId":"record_xxx",
    "eventCode":0,
    "recordResult": {
        "status":2,
        "fileType":2,
        "filePath":"https://xxxxxx",
        "recordStartTime":1592817186122,
        "mediaType":0
    }
    }

    Sample response data:

    {
    "bizRequestId":"123456789",
    "code":0
    }

Configure the channel status webhook address

The channel status webhook address is a URL that uses the HTTP or HTTPS protocol. After you set this address, the server-side sends status information to this URL when a channel is created, joined, left, or destroyed.

The server-side sends callbacks using the POST (application/json) method. The fields in the callback request are described below.

Field

Data Type

Required

Description

bizRequestId

String

Yes

Request ID.

uid

String

Yes

User ID.

bizName

String

Yes

Business identity.

appId

String

Yes

The ID of the mPaaS application.

workspaceId

String

Yes

Workspace ID.

roomId

String

Yes

Channel ID.

eventCode

Int

Yes

1: Create channel.

2: Join channel.

3: Leave channel.

4: Destroy channel.

The data fields that the business server must return are as follows:

Field

Type

Required

Description

bizRequestId

String

Yes

The bizRequestId from the callback request.

code

int

Yes

Status code. 0 indicates success.

Sample request data:

{
"eventCode":3,
"uid":"uid",
"bizName":"bizName",
"appId":"appId",
"bizRequestId":918479352902861,
"time":1669184793529,
"roomId":"roomId",
"workspaceId":"workspaceId"
} 

Configure the proxy server address

If your network has an isolated security zone and cannot directly access Alibaba Cloud servers, you can set up a proxy server to forward media stream data. Audio and video stream data is then forwarded through that proxy server.

Important

An incorrect proxy server address will cause audio and video calls to fail. Do not configure this field unless it is required.

When configuring the proxy server, enter the server address and its corresponding outbound IP address. Ensure that the addresses are correct.

  • The media stream proxy server address format is: example.aliyundoc.com.

  • If there are multiple outbound IP addresses, separate them with a semicolon (;).