このページは、お客様の言語ではご利用いただけません。Huawei Cloudは、より多くの言語バージョンを追加するために懸命に取り組んでいます。ご協力ありがとうございました。
- What's New
- Product Bulletin
- Service Overview
- Getting Started
- Best Practices
- User Guide
-
API Reference
- Before You Start
- API Overview
- Calling APIs
- Examples
- OBS Bucket Management
- Application callback management
- Single stream recording job management
- Application management
- Automatic recording configuration
- Room management
- Mixed stream recording job management
- Recording rule management
-
Statistical Analysis
- Listing Rooms
- Listing Users
- Querying Real-Time Scale Data
- Querying Real-Time Scale Data Distribution
- Querying Real-Time Quality Data
- Querying Real-Time Network Data
- Querying Usage
- Querying Historical Scale Data
- Querying Historical Quality Data
- Querying User Call Indicators
- Querying Details
- Querying User Experience Exception Events (RCMS Service)
- Queries abnormal user experience events.
- Queries the distribution of users with abnormal events.
- Appendix
- Change History
-
SDK Reference
- Before You Start
- SDK Overview
-
Web SDK
- Browser Adaptation
- Preparations
- SDK Usage
- Basic Usage Logic
-
API Reference
- Main Entry (HRTC)
- Client Object (Client)
- Client Event Notification (ClientEvent)
- Stream Object (Stream)
- Local Stream Object (LocalStream)
- Remote Stream Object (RemoteStream)
- Stream Event Notification (RTCStreamEvent)
- Error Code (RtcError)
- Error Codes Reported on the Client
- Server Error Codes
- Granting the Permissions of Accessing Cameras or Microphones to a Browser
- FAQ
- Change History
- Access Authentication
- Appendix
-
FAQs
-
About SparkRTC
- What Is SparkRTC?
- What Are the Differences Between Real-Time Audio and Video and Livestreaming?
- Can SparkRTC Be Used Outside China?
- What Is SparkRTC RoomID and How Can I Name One?
- How Many Rooms Can Be Created in SparkRTC at Most at a Time?
- What Is SparkRTC UserID and How Can I Name One?
- What Are the Roles of SparkRTC?
- How Many Participants Are Allowed by SparkRTC in a Video Call?
- What Is the Latency of SparkRTC?
- Does SparkRTC Support Co-Hosting?
- Does SparkRTC Support Bidirectional Desktop Stream Push?
- Does SparkRTC Support Private Deployment?
- Does SparkRTC Support USB Cameras on PCs?
-
Billing
- When I Subscribe to SparkRTC Video and Audio Services, Is the Video Charged by Resolution Plus the Audio Charge?
- Does the Billing Vary with Bitrates When There Are Only Audios?
- How Do I View Bills and Fee Deduction Details?
- Can I Use the Postpaid Billing Mode?
- Why Am I Charged Even When There Is Only One Person in the Room and There Is No Audio/video Call?
- Signature
- Recording
-
SDK Usage
- Is Video Snapshot Capturing Supported?
- How Do I Create a Room?
- Why Can't the SparkRTC Apps Running on Two Mobile Phones Communicate with Each Other?
- How and When Is Authentication Signature Generated?
- Why Does the Program Crash when the onVideoStats, onAudioStatus, or onSubStreamStats Callback Is Triggered?
- Why Can I Hear My Own Voice from the Local Receiver?
- Can I Call setExternalAudioCapture, setExternalVideoCapture, or setExternalMediaFrameOutput After Entering a Room?
- Does SparkRTC Support Video Mirroring?
- How Do I Obtain Data Such as the Uplink and Downlink Bitrates, Resolution, Packet Loss Rate, and Audio Sampling Rate During an Audio/Video Call?
- Can I Set the Call Volume of a Local User? Can I Set the Playback Volume of Each Remote User?
- What Is the Difference Between enableLocalVideo and muteLocalVideo?
- What Is the Difference Between enableLocalAudioStream and muteLocalAudio?
- Does SparkRTC Support Permission Verification for Rooms?
- Does the PC Support Screen Sharing?
- Does SparkRTC Allow Others Users to View a Local Video During Real-Time Communications?
- Can I View Only Real-Time Audio Streams on SparkRTC?
- Can More Than One Presentation Stream Be Shared in a Room?
- Does SparkRTC Support 1080p?
- Can I Play Online Music for Background Music?
- Can I Create N RTC Objects on the Same Page and Log In to N Rooms Using N User IDs?
- Is the Streaming Resolution (Width and Height) on the Web Client Applicable to All Browsers?
- How Do I Clear Data in the Camera List After a Camera Is Removed from the SDK on the Web Client?
- Can the SDK on the Web Client Obtain the Current Volume?
- Can I Receive Notifications on a Web Client When a Remote User Leaves a Room?
- Why Is There Echo, Undesired Sound, Noise, or Low Volume During a Call on the Web Client?
- How Do I Switch to Another Camera or Microphone on the Web Client?
- Does SparkRTC Support the Whiteboard Function?
- Can I Enter Multiple Rooms with the Same User ID?
- How Long Is the Lifecycle of a Room on SparkRTC?
- Can I Use Bluetooth Headsets for Video Calls on SparkRTC?
- Can I Subscribe to Only Audio of 2/3/4 Participants During a Video Call?
- Will the Resolution of the Video Stream Change When the Size of a Specified Shared Window Changes?
- Can I Switch Between the Floating Window and Large and Small Windows During a Video Call?
- Can I Use the API for Sending Customized Messages to Implement Functions Such as Chat Rooms and On-Screen Comments?
- Can I Query All User IDs?
- Why Can't I Call the checkSystemRequirements API in the Web SDK?
-
Troubleshooting
- Why Can't I Hear When Joining a Meeting?
- Why Does Video Freezing Occur?
- What Do I Do If a Black Screen Occurs During Video Playback?
- Why Can't I Use the Camera?
- Why Can't I Join Another Room?
- What Do I Do If No Recording File Is Generated After SparkRTC Enables Cloud Recording?
- Why Can't I Join a Room?
-
About SparkRTC
- General Reference
Copied.
Configuring Recording Callback
You can configure an HTTP/HTTPS URL to receive recording task status callback. SparkRTC will send POST requests to your server, so that you can know the recording task status.
Callback Protocols
- Request: HTTP POST. The request body is in JSON format.
- Response: HTTP STATUS CODE = 200. The response body is in JSON format. You can customize the response body.
Prerequisites
You have created an app.
Procedure
- Log in to the SparkRTC console.
- In the navigation pane, choose Apps.
- Click Configure in the row of the app for which a recording callback needs to be created.
The Configuration page is displayed.
- In the Recording Callback area, click Edit and configure callback information, as shown in Figure 1.
- Callback URL: address of the server that receives callback information. Only the HTTP and HTTPS protocols are supported.
- Private Key: authentication key for recording callback. The key can contain 32 to 64 characters. For details about how to generate a recording callback authentication signature, see "How Do I Authenticate a Recording Callback?" in FAQs.
Callback Example
Table 1 describes the fields in a callback message body.
{ "event_type": "RECORD_FILE_COMPLETE", "stream_name": "mystream", "record_format": "HLS", "download_url": "https://abc-rtc-bucket2.obs.cn-north-4.myhuaweicloud.com/Record/Record/5fcdf5651xxxxxx6f835d0d4.SparkRTC.myhuaweicloud.com/live/continuous_record/hls/mystream_2021-04-28-08-57-07/mystream_2021-04-28-08-57-07.m3u8", "file_size": 26254952, "record_duration": 65, "start_time": "2021-04-28T08:56:57Z", "end_time": "2021-04-28T08:58:02Z", "width": 1280, "height": 720, "obs_location": "http://obs.cn-north-4.myhuaweicloud.com", "obs_bucket": "abc-rtc-bucket2", "obs_object": "Record/Record/5fcdf5651xxxxxx6f835d0d4.SparkRTC.myhuaweicloud.com/live/continuous_record/hls/mystream_2021-04-28-08-57-07/mystream_2021-04-28-08-57-07.m3u8", "app_id": "5fcdf5651xxxxxx6f835d0d4", "job_id": "608196a2fa1xxxxxx515147f32ef463b", "room_id": "room01" }
Field |
Description |
---|---|
event_type |
Notification event type. Values:
|
stream_name |
Stream name. |
record_format |
Recording format, which can be HLS and MP4. |
download_url |
URL for downloading the recording. This field is used only when event_type is RECORD_FILE_COMPLETE. The address cannot be used for playback. |
file_size |
File size. Unit: byte. |
record_duration |
Duration of a recording. Unit: second. This field is used only when event_type is RECORD_FILE_COMPLETE. |
start_time |
UTC time when the recording starts, which is, time when the first frame is received. The format is YYYY-MM-DDThh:mm:ssZ. This field is used only when event_type is RECORD_FILE_COMPLETE. |
end_time |
UTC time when the recording ends. The format is YYYY-MM-DDThh:mm:ssZ. This field is used only when event_type is RECORD_FILE_COMPLETE. |
width |
Width of the recording. This field is used only when event_type is RECORD_FILE_COMPLETE. |
height |
Height of the recording. This field is used only when event_type is RECORD_FILE_COMPLETE. |
obs_location |
Region where the OBS bucket for storing the recording is located. This field is used only when event_type is RECORD_FILE_COMPLETE. |
obs_bucket |
OBS bucket where the recording is stored. This field is used only when event_type is RECORD_FILE_COMPLETE. |
obs_object |
OBS storage path. This field is used only when event_type is RECORD_FILE_COMPLETE. |
app_id |
App ID. |
job_id |
Recording task ID, which can be used to modify, view, or stop the task. |
room_id |
Room ID. |
detail_message |
Recording task status description. |
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot