ApsaraVideo Live menyediakan callback event untuk status pengambilan aliran siaran langsung, perekaman siaran langsung, perekaman sesuai permintaan, snapshot siaran langsung, dan tinjauan otomatis. Topik ini menjelaskan cara mengonfigurasi callback tersebut beserta parameternya, serta memberikan contoh.
Ikhtisar callback
Ketika suatu event tertentu dipicu selama siaran langsung, Alibaba Cloud mengirimkan permintaan ke server Anda. Server Anda harus merespons permintaan ini. Setelah berhasil mengautentikasi permintaan tersebut, server akan menerima paket data JSON yang berisi informasi callback event.
ApsaraVideo Live mendukung callback untuk event berikut:
Metode callback
ApsaraVideo Live menggunakan webhook HTTP dan HTTPS untuk mengirimkan notifikasi event. Anda dapat men-deploy layanan HTTP untuk menerima pesan callback, lalu mengonfigurasi alamat webhook di konsol ApsaraVideo Live atau menggunakan API.
Beberapa sertifikat SSL mungkin tidak kompatibel. Jika callback gagal, Anda dapat mencoba menggunakan webhook HTTP.
Ketika terjadi event pengambilan aliran atau gangguan, layanan ApsaraVideo Live mengirimkan permintaan HTTP GET ke alamat tersebut. Detail permintaan dikirim sebagai parameter URL.
Ketika event lain terjadi, layanan ApsaraVideo Live mengirimkan permintaan HTTP POST ke alamat tersebut. Detail permintaan dikirim dalam badan JSON.
Catatan
URL webhook tidak memerlukan pengenal khusus tetapi harus dapat diakses secara publik. Server Anda harus merespons permintaan yang dikirim ke URL ini. Jika permintaan mengalami timeout, ApsaraVideo Live akan mencoba mengirim ulang. Waktu timeout adalah 5 detik, dan sistem akan mencoba mengirim ulang hingga lima kali dengan interval 1 detik.
Callback pengambilan aliran siaran langsung
Anda dapat mengonfigurasi alamat webhook di konsol atau menggunakan API untuk menerima notifikasi tentang status pengambilan aliran untuk nama domain. Notifikasi ini mencakup event seperti pengambilan berhasil, gangguan aliran, dan pengambilan anomali.
Cara mengonfigurasi callback pengambilan aliran siaran langsung
Konsol
Masuk ke Konsol ApsaraVideo Live. Di panel navigasi sebelah kiri, pilih . Pada halaman Event Callbacks, pilih nama domain tempat Anda ingin mengaktifkan callback. Pada tab Callback Settings, aktifkan sakelar Ingest Callback, lalu tambahkan atau ubah tipe callback dan alamat webhook pengambilan. Untuk informasi lebih lanjut, lihat Callback pengambilan.
API
Antarmuka
Deskripsi
Referensi
SetLiveStreamsNotifyUrlConfig
Mengonfigurasi callback pengambilan.
Untuk informasi lebih lanjut, lihat SetLiveStreamsNotifyUrlConfig.
DescribeLiveStreamsNotifyUrlConfig
Menanyakan konfigurasi callback pengambilan.
Menanyakan konfigurasi callback pengambilan aliran siaran langsung
DeleteLiveStreamsNotifyUrlConfig
Menghapus konfigurasi callback pengambilan.
Untuk informasi lebih lanjut, lihat DeleteLiveStreamsNotifyUrlConfig.
Callback Aliran Inferensi
Callback aliran inferensi menyediakan parameter yang dikemas dalam MultiDict.
Logika callback untuk status publish pada callback pengambilan dan gangguan
Untuk aliran RTMP, ApsaraVideo Live mengirimkan callback pengambilan berhasil dalam waktu 2 detik setelah menerima pesan On Publish, asalkan klien pengambil tidak terputus.
Pertimbangkan skenario di mana Anda memiliki domain pengambil A dan domain streaming B. Jika Anda memerlukan callback untuk penarikan aliran (penarikan aliran terjadwal atau pengambilan asal sesuai permintaan) pada domain B, Anda harus mengonfigurasi Stream Ingest Callback pada domain A. Setelah konfigurasi selesai, logika callback untuk penarikan aliran pada domain B sama seperti yang dijelaskan pada langkah sebelumnya. Secara default, penarikan aliran dianggap berhasil jika koneksi terbentuk dan tidak diputus secara aktif dalam waktu 2 detik.
CatatanJangan hanya mengandalkan callback untuk menentukan apakah pengambilan dan penarikan aliran normal. Anda juga harus memanggil operasi DescribeLiveStreamsOnlineList untuk menanyakan daftar aliran aktif. Sebarkan URL pemutaran hanya setelah Anda memastikan bahwa pengambilan aliran normal.
Jika tidak ada data aliran yang didorong ke pusat siaran langsung selama 10 detik atau lebih, layanan ApsaraVideo Live secara otomatis memutus aliran tersebut.
Parameter untuk callback aliran inferensi
Parameter
Deskripsi
action
Event.
publish: pengambilan aliran.
publish_done: gangguan aliran.
ip
Alamat IP klien pengambil.
id
NamaStream.
app
Nama domain pengambil. Secara default, ini adalah nama domain pengambil kustom Anda. Jika tidak ada nama domain pengambil yang dilampirkan, ini adalah nama domain streaming.
appname
AppName.
time
Stempel waktu UNIX. Satuan: detik.
usrargs
Parameter pengambil yang ditentukan pengguna.
node
Nama node CDN atau server yang menerima aliran.
height
Tinggi resolusi. Satuan: piksel.
CatatanInformasi resolusi (tinggi dan lebar) hanya dihasilkan pada callback pertama.
width
Lebar resolusi. Satuan: piksel.
Contoh parameter callback status pengambilan:
http://1.1.X.X?action=publish&ip=192.168.0.1&id=world&app=example.aliyundoc.com&appname=liveApp****&time=1609220385&usrargs={user_parameters}& node=cdnvideocenter01020711****.cm3&height=720&width=1280Contoh parameter callback status gangguan aliran:
http://1.1.X.X?action=publish_done&ip=192.168.0.0&id=world&app=example.aliyundoc.com&appname=liveApp****&time=1609220385&usrargs={user_parameters}& node=cdnvideocenter01020711****.cm3&height=720&width=1280Callback event pengambilan anomali
Parameter callback event pengambilan anomali
Parameter
Deskripsi
action
publish_exception_notify.
domain
Nama domain pengambil.
appname
AppName.
stream
NamaStream.
ip
Alamat IP klien pengambil.
time
Waktu callback.
type
Tipe event.
event_time
Waktu terjadinya event.
Tipe anomali
Contoh parameter callback event pengambilan anomali:
{ "action": "publish_exception_notify", "domain": "demo.aliyundoc.com", "appname": "liveApp****", "stream": "liveStream****", "ip": "141.01.****" "time": "1739760710" "type": "5002" "event_time": "1739760710" }
Otentikasi untuk callback pengambilan aliran siaran langsung
Fitur otentikasi untuk callback pengambilan dinonaktifkan secara default. Anda dapat mengaktifkannya saat mengonfigurasi alamat webhook pengambilan. Setelah diaktifkan, logika otentikasi adalah sebagai berikut:
Saat ApsaraVideo Live mengirimkan permintaan callback, permintaan tersebut menyertakan bidang
ALI-LIVE-TIMESTAMPdanALI-LIVE-SIGNATUREdalam header permintaan HTTP atau HTTPS. Server Anda dapat menggunakan bidang-bidang ini untuk otentikasi tanda tangan. NilaiALI-LIVE-SIGNATUREdihitung sebagai berikut:ALI-LIVE-SIGNATURE = MD5SUM(MD5CONTENT)MD5CONTENT = Nama domain pengambil|Nilai ALI-LIVE-TIMESTAMP|Kunci OtentikasiCatatanNama domain pengambil adalah nama domain tempat URL webhook dikonfigurasi. Kunci Otentikasi adalah kunci yang Anda konfigurasikan untuk URL webhook pengambilan.
Saat server Anda menerima pesan callback, server harus menggabungkan nama domain pengambil, nilai
ALI-LIVE-TIMESTAMP, dan Kunci Otentikasi. Kemudian, server menghitung hash MD5 dari string gabungan tersebut untuk menghasilkan string tanda tangan. Server kemudian harus membandingkan string tanda tangan yang dihasilkan dengan nilai bidangALI-LIVE-SIGNATUREdalam header permintaan HTTP atau HTTPS dari ApsaraVideo Live. Jika kedua string tidak cocok, permintaan dianggap tidak valid.
Otentikasi untuk callback status pengambilan aliran siaran langsung
Otentikasi untuk callback pengambilan aliran dinonaktifkan secara default. Anda dapat mengaktifkan fitur ini saat menentukan URL callback pengambilan aliran. Setelah diaktifkan, logika otentikasi berikut berlaku:
Saat ApsaraVideo Live memulai permintaan callback, permintaan tersebut menyertakan header
ALI-LIVE-TIMESTAMPdanALI-LIVE-SIGNATUREdalam permintaan HTTP atau HTTPS agar server penerima pesan callback dapat mengotentikasi tanda tangan. NilaiALI-LIVE-SIGNATUREdihitung berdasarkan rumus berikut:ALI-LIVE-SIGNATURE = MD5SUM (MD5CONTENT)MD5CONTENT = Nama domain|Nilai ALI-LIVE-TIMESTAMP|Kunci kriptografiCatatanNama domain adalah domain pengambil tempat Anda mengonfigurasi URL callback. Kunci kriptografi adalah kunci kriptografi yang Anda tentukan untuk URL callback.
Setelah menerima pesan callback, server penerima pesan callback menggabungkan nama domain callback, nilai header
ALI-LIVE-TIMESTAMP, dan kunci kriptografi dalam format di atas. Server menghitung nilai MD5 dari string tersebut untuk mendapatkan string terenkripsi. Kemudian, server membandingkan string terenkripsi tersebut dengan nilai headerALI-LIVE-SIGNATUREdalam permintaan HTTP atau HTTPS yang dimulai oleh ApsaraVideo Live. Jika kedua nilai berbeda, permintaan tidak valid.
Callback perekaman siaran langsung
Callback perekaman siaran langsung mencakup callback status perekaman, callback pembuatan file, dan callback kesalahan perekaman.
Cara mengonfigurasi callback perekaman siaran langsung
Konsol
Masuk ke Konsol ApsaraVideo Live. Di panel navigasi sebelah kiri, pilih . Pada halaman Event Callbacks, pilih nama domain tempat Anda ingin mengaktifkan callback. Pada tab Callback Settings, aktifkan sakelar Recording Callback, lalu tambahkan atau ubah alamat webhook. Untuk informasi lebih lanjut, lihat Callback perekaman.
API
Operasi API
Deskripsi
Referensi
AddLiveRecordNotifyConfig
Menambahkan konfigurasi callback perekaman tingkat domain.
Untuk mengaktifkan callback status tugas perekaman, atur parameter NeedStatusNotify ke true.
Untuk informasi lebih lanjut, lihat AddLiveRecordNotifyConfig.
DescribeLiveRecordNotifyConfig
Menanyakan konfigurasi callback perekaman tingkat domain.
DeleteLiveRecordNotifyConfig
Menghapus konfigurasi callback perekaman tingkat domain.
Untuk informasi lebih lanjut, lihat DeleteLiveRecordNotifyConfig.
Callback status perekaman: Callback ini dikirim ketika file mulai atau berhenti direkam untuk menunjukkan status perekaman.
Parameter callback status perekaman
Parameter
Deskripsi
domain
Nama domain streaming yang digunakan untuk perekaman.
app
AppName.
stream
NamaStream.
event
Nama event.
record_started: Perekaman telah berhasil dimulai.
record_paused: Perekaman telah berhasil dijeda.
Contoh parameter callback status perekaman
{ "domain": "demo.aliyundoc.com", "app": "liveApp****", "stream": "liveStream****", "event": "record_started" }
Callback pembuatan file: Callback ini dikirim ketika file rekaman dihasilkan. Callback ini mencakup detail seperti nama file, waktu mulai dan akhir, serta durasi.
Parameter callback pembuatan file
Parameter
Deskripsi
domain
Nama domain streaming yang digunakan untuk perekaman.
app
AppName.
stream
NamaStream.
uri
Jalur file rekaman di bucket OSS Anda.
record_id
ID manifes.
file_url
URL file rekaman.
duration
Durasi file rekaman. Satuan: detik.
start_time
Waktu mulai perekaman. Ini adalah stempel waktu UNIX. Satuan: detik.
stop_time
Waktu akhir perekaman. Ini adalah stempel waktu UNIX. Satuan: detik.
is_finished
Menunjukkan apakah perekaman telah selesai.
file_url
URL file rekaman.
oss_endpoint
Nama Endpoint penyimpanan OSS.
oss_bucket
Nama bucket penyimpanan OSS.
push_args
Parameter yang diawali dengan `callback_` dalam URL ingest, seperti `callback_arg1` dan `callback_myid`.
CatatanParameter kustom tidak dapat diteruskan untuk aliran rekaman yang ditranskode.
Setiap nama parameter hanya dapat memiliki satu nilai. Jika beberapa nilai diteruskan untuk parameter yang sama, callback hanya menyertakan nilai pertama. Misalnya, jika parameter ingest mencakup
callback_args1=value1&callback_args1=value2, callback tetap akan menjadi"callback_args1": "value1".Contoh parameter callback pembuatan file
URL ingest adalah:
rtmp://demo.aliyundoc.com/liveApp****/liveStream****?callback_args1=value1&callback_myid=1231389741Konten callback adalah:
{ "domain": "demo.aliyundoc.com", "app": "liveApp****", "stream": "liveStream****", "uri": "liveApp****/liveStream****/0_2017-03-08-23:09:46_2017-03-08-23:10:40.flv", "file_url": "http://****.oss-****.aliyuncs.com/liveApp****/liveStream****/0_2017-03-08-23:09:46_2017-03-08-23:10:40.flv", "duration": 69.403, "start_time": 1488985786, "stop_time": 1488985840, "push_args": { "callback_args1": "value1", "callback_myid": "1231389741" } }CatatanContoh callback di atas berlaku untuk semua pelanggan yang tidak memiliki templat callback kustom.
Callback kesalahan perekaman: Jika terjadi kesalahan selama perekaman atau konversi format kontainer (ke MP4 atau FLV) karena aliran sumber abnormal atau kegagalan penulisan OSS, callback kesalahan akan dipicu.
Parameter callback kesalahan perekaman
Parameter
Deskripsi
domain
Nama domain streaming yang digunakan untuk perekaman.
app
AppName.
stream
NamaStream.
event
Nama event.
record_error: Terjadi kesalahan perekaman.
transformat_error: Terjadi kesalahan konversi format kontainer.
error_info
Pesan kesalahan dalam format JSON. Berisi bidang berikut:
code: Kode kesalahan.
message: Deskripsi pesan kesalahan.
file_info
Informasi file. Hanya ada untuk kesalahan konversi format kontainer dan mencakup bidang berikut:
uri: Alamat penyimpanan file yang dikonversi.
start_time: Waktu mulai perekaman file.
stop_time: Waktu berhenti perekaman file.
Contoh parameter callback kesalahan perekaman
Kesalahan perekaman
{ "domain": "example.com", "app": "live", "stream": "stream123", "event": "record_error", "error_info": { "code": "TsSegmenterFail", "message": "ts segmenter error" } }Daftar kode kesalahan:
Kode
Pesan
Deskripsi
BucketNotFound
Bucket tidak ditemukan
Bucket tidak ada atau telah dihapus.
AccessDenied
Bucket tidak termasuk dalam userId yang dikonfigurasi
Bucket tidak dimiliki oleh ID akun yang dikonfigurasi untuk perekaman.
StreamFormatError
Kesalahan format aliran video
Format siaran langsung tidak valid.
UserDisable
Akses OSS oleh pengguna tidak diizinkan
Pengguna tidak diizinkan mengakses OSS, atau otorisasi telah dihapus.
Kesalahan konversi format kontainer
{ "domain": "example.com", "app": "live", "stream": "stream123", "event": "transformat_error", "error_info": { "code": "PermissionDenied.ResourceAccess", "message": "MTS tidak diizinkan mengoperasikan OutputBucket" }, "file_info": { "uri": "record/live/stream123/2025-11-19-03-17-03_2025-11-19-03-28-39.flv", "start_time": 1763493420, "stop_time": 1763494119 } }Daftar kode kesalahan:
Kode
Pesan
Deskripsi
InvalidParameter.ResourceNotFound
Sumber daya yang dioperasikan tidak dapat ditemukan
Bucket tidak ada atau telah dihapus.
InvalidParameter.ResourceContentBad
Sumber daya yang dioperasikan InputFile buruk
Konversi format kontainer gagal karena kualitas buruk dari aliran sumber.
PermissionDenied.ResourceAccess
MTS tidak diizinkan mengoperasikan OutputBucket
Pengguna tidak diizinkan mengakses OSS, atau otorisasi telah dihapus.
Callback perekaman sesuai permintaan
Callback perekaman sesuai permintaan memungkinkan Anda memutuskan apakah akan merekam aliran. Sebelum perekaman dimulai, ApsaraVideo Live mengirimkan callback dengan parameter aliran ke server Anda.
Anda dapat menentukan alamat webhook dan mengatur domain, aplikasi, atau aliran untuk perekaman sesuai permintaan. Saat layanan perekaman menerima aliran yang cocok dengan nama domain, aplikasi, atau aliran, layanan tersebut mengirimkan permintaan dengan lima parameter ke alamat webhook Anda untuk menentukan apakah aliran ini akan direkam.
Parameter permintaan
Parameter Tipe Deskripsi domain String Domain streaming utama. app String Nama aplikasi tempat siaran langsung berada. stream String Nama siaran langsung. codec String Format encoding. Nilai yang valid: - h264
- h265
vbitrate String Bitrate video. Satuan: Kbit/s. Parameter respons
Parameter Tipe Wajib Deskripsi ApiVersion String Tidak Versi API. Versi default adalah 1.0.
NeedRecord Bool Ya Menunjukkan apakah perekaman diperlukan. Interval JSONObject Tidak Durasi perekaman dalam setiap format dalam setiap siklus. Nilai yang valid: 5 to 21600. Satuan: detik. Format JSONArray Tidak Format perekaman. Perekaman dapat dalam format MP4, FLV, atau M3U8. Contoh permintaan
GET /?app=seq_all&domain=demo.aliyundoc.com&stream=ondemand8&vbitrate=2000&codec=h264 HTTP/1.1 Host: pull.aliyundoc.com User-Agent: Go-http-client/1.1 Accept-Encoding: gzipContoh respons
{ "ApiVersion" : "1.0", "NeedRecord" : true, "Interval" : { "Mp4": 300, "Flv": 120, "M3U8": 180 }, "Format" : ["mp4","flv"] }Penanganan parameter respons
Layanan perekaman menimpa konfigurasi yang ada dengan parameter yang dikembalikan oleh server Anda. Misalnya, jika Anda menentukan `Interval`, layanan perekaman akan menimpa nilai `Interval` dalam database. Untuk parameter `Format`, layanan menghitung irisan antara format yang ditentukan dan format dalam database. Jika tidak ada format yang Anda tentukan yang cocok dengan konfigurasi yang ada, aliran tidak akan direkam.
CatatanKode status HTTP apa pun selain 200 dianggap sebagai panggilan API yang gagal.
Badan respons dibatasi hingga 2.048 byte. Respons yang lebih panjang akan dipotong untuk mencegah serangan jahat.
Callback snapshot siaran langsung
ApsaraVideo Live mendukung callback untuk hasil snapshot siaran langsung. Anda dapat mengonfigurasi alamat webhook di konsol atau menggunakan API.
Cara mengonfigurasi callback snapshot
Konsol
Masuk ke Konsol ApsaraVideo Live. Di panel navigasi sebelah kiri, pilih . Pada halaman Event Callbacks, pilih nama domain tempat Anda ingin mengaktifkan callback. Pada tab Callback Settings, aktifkan sakelar Snapshot Callback, lalu tambahkan atau ubah alamat webhook. Untuk informasi lebih lanjut, lihat Callback snapshot.
API
Antarmuka
Deskripsi
Referensi
AddLiveSnapshotNotifyConfig
Menambahkan konfigurasi callback snapshot.
Untuk informasi lebih lanjut, lihat AddLiveSnapshotNotifyConfig.
UpdateLiveSnapshotNotifyConfig
Memodifikasi konfigurasi callback snapshot.
DescribeLiveSnapshotNotifyConfig
Menanyakan konfigurasi callback snapshot.
DeleteLiveSnapshotNotifyConfig
Menghapus konfigurasi callback snapshot.
Parameter callback file snapshot
Parameter
Deskripsi
Event
Event.
DomainName
Nama domain streaming yang digunakan untuk snapshot.
AppName
AppName.
StreamName
NamaStream.
OssBucket
Nama bucket tempat snapshot disimpan.
OssEndpoint
Endpoint OSS tempat snapshot disimpan.
OssObject
Nama file snapshot.
CreateTime
Waktu saat snapshot diambil.
SnapshotUrl
Jalur file snapshot di bucket OSS Anda.
Size
Ukuran citra. Satuan: byte.
Width
Lebar citra. Satuan: piksel.
Height
Tinggi citra. Satuan: piksel.
Contoh parameter callback file snapshot
{ "Event":"Snapshot", "DomainName":"demo.aliyundoc.com", "AppName":"liveApp****", "StreamName":"liveStream****", "OssBucket":"liveBucket****", "OssEndpoint":"oss-cn-shan****.aliyuncs.com", "OssObject":"1****.jpg", "CreateTime":"2015-12-01T17:36:00Z", "SnapshotUrl":"http://liveBucket****.oss-cn-shan****.aliyuncs.com/1****.jpg", "Size":"36291", "Width":"1280", "Height":"720" }ApsaraVideo Live mendukung otentikasi untuk callback snapshot. Untuk informasi lebih lanjut, lihat SetSnapshotCallbackAuth dan Otentikasi callback snapshot.
Callback tinjauan otomatis
ApsaraVideo Live mendukung callback hasil untuk tinjauan video dan tinjauan suara. Anda dapat mengonfigurasi alamat webhook di konsol atau menggunakan API.
Cara mengonfigurasi callback tinjauan video
Konsol
Masuk ke Konsol ApsaraVideo Live. Di panel navigasi sebelah kiri, pilih . Pada halaman Event Callbacks, pilih nama domain tempat Anda ingin mengaktifkan callback. Pada tab Callback Settings, aktifkan sakelar Video Review Callback, lalu tambahkan atau ubah alamat webhook. Untuk informasi lebih lanjut, lihat Callback tinjauan video.
CatatanSaat ini, fitur tinjauan otomatis hanya tersedia di beberapa pusat siaran langsung. Untuk informasi lebih lanjut tentang pusat siaran langsung yang mendukung fitur ini, lihat Wilayah layanan.
API
Antarmuka
Deskripsi
Referensi
AddLiveDetectNotifyConfig
Menambahkan konfigurasi callback tinjauan video.
Untuk informasi lebih lanjut, lihat AddLiveDetectNotifyConfig.
DescribeLiveAudioAuditNotifyConfig
Menanyakan konfigurasi callback tinjauan video.
Menanyakan konfigurasi callback untuk moderasi siaran langsung
UpdateLiveDetectNotifyConfig
Memperbarui konfigurasi callback tinjauan video.
Untuk informasi lebih lanjut, lihat UpdateLiveDetectNotifyConfig.
DeleteLiveDetectNotifyConfig
Menghapus konfigurasi callback tinjauan video.
Untuk informasi lebih lanjut, lihat DeleteLiveDetectNotifyConfig.
Callback tinjauan video
Callback hanya dikirim untuk konten video yang ditandai sebagai bermasalah. Notifikasi mencakup hasil tinjauan dan informasi penyimpanan untuk snapshot video bermasalah.
Parameter callback tinjauan video
Parameter
Tipe
Deskripsi
DomainName
String
Nama domain streaming.
AppName
String
AppName.
StreamName
String
NamaStream.
OssEndpoint
String
Endpoint objek penyimpanan.
OssBucket
String
Bucket objek penyimpanan.
OssObject
String
Nama file objek penyimpanan.
Result
JSONArray
Hasil deteksi. Untuk informasi lebih lanjut, lihat Hasil.
Tabel 1. Hasil
Parameter
Tipe
Deskripsi
BizType
String
Tipe bisnis. Ini dapat digunakan untuk memilih model. Nilai default adalah nama domain.
Scene
String
Skenario deteksi.
porn: Deteksi pornografi.
terrorism: terorisme dan konten sensitif politik.
ad: pelanggaran teks dan citra.
live: adegan yang tidak diinginkan.
logo: logo citra.
Label
String
Klasifikasi hasil deteksi. Klasifikasi bervariasi berdasarkan skenario deteksi:
Klasifikasi hasil deteksi pornografi citra (porn):
normal: normal.
sexy: seksi.
porn: pornografi.
Klasifikasi hasil deteksi terorisme dan konten sensitif politik citra (terrorism):
normal: normal.
bloody: berdarah.
explosion: ledakan dan asap.
outfit: pakaian khusus.
logo: logo khusus.
weapon: senjata.
politics: sensitif politik.
violence : perkelahian.
crowd: kerumunan.
parade: Parade
carcrash: adegan tabrakan mobil.
flag: bendera.
location: landmark.
others: lainnya.
Klasifikasi hasil pelanggaran teks dan citra (ad):
normal: normal.
ad: iklan lainnya.
npx: iklan spam.
qrcode: berisi kode QR.
programCode: berisi kode Mini Program.
Klasifikasi hasil adegan yang tidak diinginkan (live):
normal: normal.
meaningless: tidak ada konten dalam citra, seperti layar hitam atau putih.
PIP: Picture-in-Picture.
smoking: merokok.
drivelive: streaming dalam kendaraan.
Klasifikasi hasil logo citra (logo):
normal: normal.
TV: berisi logo terkendali.
trademark: berisi merek dagang.
Rate
Float
Skor kepercayaan. Nilai yang valid: 0 (kepercayaan terendah) hingga 100 (kepercayaan tertinggi).
CatatanNilai ini hanya sebagai referensi. Kami sangat menyarankan agar Anda tidak menggunakannya dalam logika bisnis Anda. Gunakan hasil Label untuk menentukan pelanggaran konten.
Extent
String
Bidang cadangan.
CatatanSecara default, pengguna baru menggunakan versi ini. Pengguna yang sudah ada tetap menggunakan versi saat ini. Untuk meningkatkan ke versi ini, kirim tiket. Untuk informasi lebih lanjut tentang cara mengirim tiket, lihat Hubungi kami.
Contoh parameter callback tinjauan video
{ "DomainName": "demo.aliyundoc.com", "AppName": "liveApp****", "StreamName": "liveStream****", "OssEndpoint": "oss-cn-hang****.aliyuncs.com", "OssBucket": "liveBucket****", "OssObject": "example.jpg", "Result": [ { "BizType": "demo.aliyundoc.com", "Result": [ {"Label": "Porn", "Rate":11, "Suggestion": "review", "Scene":"porn", "Extent": {}}, {"Label": "Ad", "Rate":11, "Suggestion": "review", "Scene":"ad", "Extent": {}} ] } ] }
Cara mengonfigurasi callback tinjauan suara
Konsol
Masuk ke Konsol ApsaraVideo Live. Di panel navigasi sebelah kiri, pilih . Pada halaman Event Callbacks, pilih nama domain tempat Anda ingin mengaktifkan callback. Pada tab Callback Settings, aktifkan sakelar Voice Review Callback, lalu tambahkan atau ubah alamat webhook. Untuk informasi lebih lanjut, lihat Callback tinjauan suara.
API
Operasi API
Deskripsi
Referensi
AddLiveAudioAuditNotifyConfig
Menambahkan konfigurasi callback tinjauan suara.
PentingRespons untuk callback tinjauan suara adalah string JSON.
Untuk informasi lebih lanjut, lihat AddLiveAudioAuditNotifyConfig.
DeleteLiveAudioAuditNotifyConfig
Menghapus konfigurasi callback tinjauan suara.
Untuk informasi lebih lanjut, lihat DeleteLiveAudioAuditNotifyConfig.
UpdateLiveAudioAuditNotifyConfig
Memperbarui konfigurasi callback tinjauan suara.
Untuk informasi lebih lanjut, lihat UpdateLiveAudioAuditNotifyConfig.
DescribeLiveAudioAuditNotifyConfig
Menanyakan konfigurasi callback tinjauan suara.
Untuk informasi lebih lanjut, lihat DescribeLiveAudioAuditNotifyConfig.
Callback tinjauan suara
Callback hanya dikirim untuk konten audio yang ditandai sebagai bermasalah. Notifikasi mencakup teks transkripsi dari audio bermasalah dan konteks dari menit terakhir.
Parameter callback tinjauan suara
Parameter
Tipe
Deskripsi
domain
String
Nama domain streaming.
app
String
AppName.
stream
String
NamaStream.
timestamp
Int
Stempel waktu callback. Satuan: detik.
result
JSONArray
Hasil deteksi. Untuk informasi lebih lanjut, lihat Hasil.
Tabel 2. Hasil
Parameter
Tipe
Deskripsi
scene
String
Skenario deteksi.
label
String
Klasifikasi hasil deteksi. Nilai yang valid:
normal: teks normal
spam: Konten sampah atau tidak diminta
ad: iklan
politics: sensitif politik
terrorism: terorisme
abuse: bahasa kasar
porn: pornografi
flood: flooding
contraband: barang terlarang
meaningless: tidak berarti
suggestion
String
Tindakan yang disarankan. Nilai yang valid:
pass: Hasil normal. Tidak diperlukan tindakan lebih lanjut.
review: Hasil tidak pasti. Diperlukan tinjauan manual.
block: Hasil merupakan pelanggaran. Kami menyarankan Anda menghapus konten atau membatasi visibilitasnya.
rate
Float
Skor kepercayaan. Nilai yang valid: 0 (kepercayaan terendah) hingga 100 (kepercayaan tertinggi).
CatatanNilai ini hanya sebagai referensi. Kami sangat menyarankan agar Anda tidak menggunakannya dalam logika bisnis Anda. Gunakan hasil Label untuk menentukan pelanggaran konten.
details
JSONArray
Detail teks yang sesuai dengan audio. Setiap kalimat sesuai dengan satu elemen. Dapat berisi satu atau lebih elemen. Untuk deskripsi struktur setiap elemen, lihat Detail.
Tabel 3. Detail
Parameter
Tipe
Deskripsi
startTime
Int
Stempel waktu awal kalimat. Satuan: detik.
endTime
Int
Stempel waktu akhir kalimat. Satuan: detik.
text
String
Teks yang dikonversi dari audio bermasalah.
label
String
Klasifikasi hasil deteksi. Nilai yang valid:
normal: teks normal
spam: Berisi konten sampah
ad: iklan
politics: sensitif politik
Terrorism
abuse: bahasa kasar
porn: pornografi
flood: flooding
contraband: barang terlarang
Meaningless: tidak berarti
Contoh parameter callback tinjauan suara
{ "domain": "example.aliyundoc.com", "app": "liveApp****", "stream": "5d9747eba39b44769852d276f9ff****", "timestamp": 1572248095, "result": [ { "scene": "antispam", "label": "ad", "suggestion": "block", "rate": 99.91, "details": [ { "startTime": 1572248023, "endTime": 1572248040, "text": "Gratis menginap 120 hari di Lijiang Longchuan dan hotel lainnya. Hak menginap dapat dibagikan kepada teman dan keluarga. Datanglah ke pusat penerimaan Hotel Yunqi She International di Jalan Tuanjie No. 96, Mangshi, di sebelah KTV Dengchao. Untuk informasi, hubungi 2285699.", "label": "ad" }, { "startTime": 1572248040, "endTime": 1572248070, "text": "Vila koleksi klasik, nikmati Hot Spring Longduo, Pagoda Emas Lianghe, dan area Binjiangyuan Tahap II Kota Wisata Hot Spring. Grand opening pada 2 November. Air hot spring alami dialirkan ke setiap rumah. Tata letak beragam dan klasik, nilai luar biasa. Anda layak mendapatkannya. Penawaran nilai super pada hari pembukaan. Anda dipersilakan datang dan melihat. Alamat: Jalan Xianfeng No. 229, Kota Zhedao, Kabupaten Lianghe. Hotline: 0692695577769***", "label": "normal" }, { "startTime": 1572248072, "endTime": 1572248077, "text": "Waktu bahagia dihabiskan bersamamu. Hari-hari santai terasa sangat mudah.", "label": "normal" }, { "startTime": 1572248078, "endTime": 1572248086, "text": "fme043 mengambil jeda dari jadwal sibuk untuk waktu musik, dihangatkan oleh lagu-lagu, dan memikirkanmu di bioskop.", "label": "normal" } ] } ] }
Callback pemulihan bencana aliran ganda
Callback ini memberikan notifikasi tentang hasil peralihan aliran untuk pemulihan bencana aliran ganda.
Cara mengonfigurasi callback:
Konsol
Masuk ke Konsol ApsaraVideo Live. Di panel navigasi sebelah kiri, pilih . Pada halaman Event Callbacks, pilih nama domain pengambil tempat Anda ingin mengaktifkan callback. Pada tab Callback Settings, aktifkan sakelar Dual-stream Disaster Recovery Callback, lalu tambahkan atau ubah alamat webhook.
API
Operasi API
Deskripsi
Referensi
SetLiveStreamsNotifyUrlConfig
Mengonfigurasi alamat notifikasi callback pengambilan.
Untuk informasi lebih lanjut, lihat SetLiveStreamsNotifyUrlConfig.
DescribeSwitchStreamsNotifyUrlConfig
Menanyakan konfigurasi callback pengambilan.
Menanyakan konfigurasi callback pengambilan aliran siaran langsung
DeleteSwitchStreamsNotifyUrlConfig
Menghapus konfigurasi callback pengambilan.
Menghapus konfigurasi callback pengambilan aliran siaran langsung
Callback peralihan aliran:
Parameter
Deskripsi
action
Tipe event:
multistream_set_master_result, yang menunjukkan hasil peralihan aliran.domain
Nama domain pengambil.
appname
AppName.
streamname
NamaStream.
upstreamsequence
Pengenal aliran utama setelah peralihan.
upstreamip
Alamat IP klien pengambil untuk aliran utama setelah peralihan.
upstreamtime
Waktu mulai pengambilan untuk aliran utama setelah peralihan. Ini adalah stempel waktu UNIX. Satuan: detik.
changereason
Alasan yang memicu peralihan aliran.
changetime
Waktu saat operasi peralihan aliran dilakukan. Ini adalah stempel waktu UNIX. Satuan: detik.
time
Waktu saat notifikasi callback dihasilkan. Ini adalah stempel waktu UNIX. Satuan: detik.
Contoh callback:
{ "action": "multistream_set_master_result", "domain": "demo.aliyundoc.com", "appname": "liveApp****", "streamname": "liveStream****", "upstreamsequence": "main", "upstreamip": "203.**.***.10", "upstreamtime": 17*****710, "changereason": "merge_cut_manually", "changetime": 17*****705, "time": 17*****706 }