Skip to content

Utility Plugins

This page covers utility plugins that previously had no dedicated pages.

PluginFeatureHTTP APINotes
LogRotatelogrotateNoLog rotation and retention
DebugdebugBuild-dependentDeveloper diagnostics
SEIseiNoH.264/H.265 SEI injection
CrontabcrontabNo (config-driven)Scheduled tasks
MixmixNo (capability-driven)Multi-stream mixing
CryptocryptoNoMedia encryption capability
ReportreportYesMedia quality metrics reporting
TesttestYesIntegration and stress test APIs
features = ["logrotate"]
logrotate:
path: "./logs"
max_size: 10485760
max_files: 7
level: "info"
features = ["crontab"]
crontab:
jobs:
- name: "daily-record"
cron: "0 8 * * *"
action: "record_start"
stream: "live/camera01"
duration: 3600

Prefix: /report/

POST /report/metrics
Content-Type: application/json

Core body fields:

FieldTypeRequiredDescription
user_idstringYesUser ID
room_idstringYesRoom ID
sdk_versionstringYesSDK version
report_timeint64YesReport timestamp
metricsarrayYesMetrics entries
GET /report/rooms
GET /report/metrics/{room_id}
GET /report/metrics/{room_id}/{user_id}
GET /report/history/{room_id}

Prefix: /test/

GET /test/
GET /test/integration
GET /test/stress
GET /test/cases
GET /test/api/cases
GET /test/api/stress/count
POST /test/api/cases/execute
POST /test/api/stress/push/{protocol}/{count}
POST /test/api/stress/pull/{protocol}/{count}
POST /test/api/stress/stop/push
POST /test/api/stress/stop/pull
POST /test/stop

Execute cases:

{ "names": ["basic_rtmp_to_flv", "webrtc_publish"] }

Stress push:

{
"remoteURL": "rtmp://localhost/live/stress/%d",
"streamPath": "live/source"
}

Stress pull:

{
"remoteURL": "rtmp://localhost/live/source",
"testMode": 0
}