All Products
Search
Document Center

Intelligent Media Services:Detail operasi API

Last Updated:Aug 28, 2026

Menampilkan daftar operasi API Web SDK, termasuk metode engine dan callback event.

Ikhtisar API

Catatan

Versi SDK sebelumnya berisi parameter dan metode yang sudah tidak digunakan lagi. Kami menyarankan Anda melakukan upgrade ke versi terbaru. Untuk informasi selengkapnya, lihat Panduan Penggunaan Web SDK.

Class/Protocol

API

Description

ARTCAICallEngine

Menentukan operasi API engine.

call

Memulai panggilan.

handup

Mengakhiri panggilan.

Catatan

Panggil handup untuk mengakhiri panggilan sebelum halaman ditutup, misalnya dengan mendengarkan event beforeunload. Jika tidak, agen akan menunggu sekitar 90 detik sebelum keluar. Hal ini dapat menyebabkan masalah seperti melebihi batas konkuren untuk manusia digital.

setAgentView

Menetapkan tampilan rendering agen.

setLocalView

Menetapkan tampilan pratinjau lokal.

interruptSpeaking

Menginterupsi ucapan agen.

enableVoiceInterrupt

Mengaktifkan atau menonaktifkan interupsi cerdas.

muteLocalCamera

Mengaktifkan atau menonaktifkan dorong kamera.

switchCamera

Mengganti kamera.

switchVoiceId

Mengganti voice.

mute

Mematikan atau mengaktifkan mikrofon.

muteAgentAudioPlaying

Menghentikan atau melanjutkan pemutaran aliran audio agen.

startPushToTalk

Memulai berbicara dalam mode push-to-talk.

finishPushToTalk

Menyelesaikan berbicara dalam mode push-to-talk.

cancelPushToTalk

Membatalkan ucapan saat ini dalam mode push-to-talk.

enablePushToTalk

Mengaktifkan atau menonaktifkan mode push-to-talk. Dalam mode push-to-talk, agen hanya melaporkan hasil setelah finishPushToTalk dipanggil.

getRTCInstance

Mendapatkan engine Alibaba Real-Time Communication (ARTC).

sendTextToAgent

Mengirim pesan teks ke agen.

sendCustomMessageToServer

Mengirim pesan kustom ke server.

updateLlmSystemPrompt

Memperbarui system prompt Large Language Model (LLM).

updateVcrConfig

Memperbarui konfigurasi VCR.

updateBailianAppParams

Memperbarui parameter aplikasi Model Studio.

startVisionCustomCapture

Untuk agen pemahaman visual, memulai tangkapan frame kustom. Setelah ini dimulai, Anda tidak dapat berbicara dengan agen melalui voice.

stopVisionCustomCapture

Untuk agen pemahaman visual, menghentikan tangkapan frame kustom.

destroy

Melepaskan sumber daya.

ARTCAICallEngine

Event callback engine

errorOccurred

Terjadi error.

callBegin

Panggilan dimulai.

callEnd

Panggilan berakhir.

agentStateChange

Status agen berubah.

speakingVolumeChanged

Volume berubah.

userSubtitleNotify

Memberikan hasil pengenalan agen atas pertanyaan pengguna.

agentSubtitleNotify

Memberikan respons agen.

voiceIdChanged

Voice panggilan saat ini berubah.

pushToTalkChanged

Mode push-to-talk berubah.

agentWillLeave

Agen saat ini akan meninggalkan (mengakhiri panggilan saat ini).

receivedAgentCustomMessage

Pesan kustom diterima dari agen saat ini.

voiceInterruptChanged

Interupsi voice untuk panggilan saat ini diaktifkan atau dinonaktifkan.

humanTakeoverWillStart

Agen langsung akan mengambil alih dari agen saat ini.

humanTakeoverConnected

Pengambilalihan oleh agen langsung telah terhubung.

agentDataChannelAvailable

Dipicu ketika channel pesan agen tersedia.

receivedAgentVcrResult

Hasil VCR diterima dari agen saat ini.

Detail API

Detail ARTCAICallEngine

call

Memulai panggilan.

async call(userId: string, agentInfo: AICallAgentInfo, config?: AICallEngineConfig): Promise<void>>

Parameter:

Parameter

Type

Description

userId

String

UID pengguna saat ini.

agentInfo

AICallAgentInfo

Informasi agen.

config

AICallEngineConfig

Konfigurasi inisialisasi. Tipe didefinisikan sebagai berikut:

{
  // Menentukan apakah mikrofon dimatikan.
  muteMicrophone?: boolean;
  // Menentukan apakah kamera dimatikan dalam mode pemahaman visual.
  muteCamera?: boolean;
  // Menentukan apakah push-to-talk diaktifkan.
  enablePushToTalk?: boolean;
  // Elemen video pratinjau dalam mode pemahaman visual.
  previewElement?: string | HTMLVideoElement;
  // Pengaturan kamera dalam mode pemahaman visual.
  cameraConfig?: AICallCameraConfig;
}

handup

Mengakhiri panggilan.

async handup(): Promise<void>

setAgentView

Menetapkan tampilan rendering agen.

setAgentView(view: HTMLVideoElement | string): void

Parameter:

Parameter

Type

Description

view

HTMLVideoElement | string

Tag video atau ID-nya.

setLocalView

Menetapkan tampilan pratinjau lokal.

setLocalView(view?: HTMLVideoElement | string): void

Parameter:

Parameter

Type

Description

view

HTMLVideoElement | string

Tag video atau ID-nya. Jika Anda tidak meneruskan parameter ini, pratinjau akan dihentikan.

interruptSpeaking

Menginterupsi ucapan agen.

async interruptSpeaking(): Promise<void>

enableVoiceInterrupt

Mengaktifkan atau menonaktifkan interupsi cerdas.

async enableVoiceInterrupt(enable: boolean): Promise<void>

Parameter:

Parameter

Type

Description

enable

boolean

Mengaktifkan atau menonaktifkan fitur tersebut.

muteLocalCamera

Mengaktifkan atau menonaktifkan pengiriman aliran kamera lokal.

async muteLocalCamera(mute: boolean)

Parameter:

Parameter

Type

Description

mute

boolean

Menentukan apakah kamera dimatikan.

switchCamera

Mengganti kamera.

async switchCamera(deviceId?: string)

Parameter:

Parameter

Type

Description

deviceId

string

ID perangkat. Anda bisa mendapatkan ID tersebut dengan memanggil ARTCAICallEngine.getCameraList(). Jika Anda tidak meneruskan parameter ini pada perangkat seluler, sistem akan beralih antara kamera depan dan belakang.

switchVoiceId

Mengganti voice.

async switchVoiceId(voiceId: string): Promise<void>

Parameter:

Parameter

Type

Description

voiceId

string

ID voice.

mute

Mematikan atau mengaktifkan mikrofon.

async mute(mute: boolean): Promise<void>

Parameter:

Parameter

Type

Description

mute

boolean

Mematikan atau mengaktifkan mikrofon.

muteAgentAudioPlaying

Menghentikan atau melanjutkan pemutaran aliran audio agen.

muteAgentAudioPlaying(mute: boolean)

Parameter:

Parameter

Type

Description

mute

boolean

Menentukan apakah audio dimatikan.

startPushToTalk

Dalam mode push-to-talk, memulai berbicara.

startPushToTalk() :boolean;

finishPushToTalk

Dalam mode push-to-talk, menyelesaikan berbicara.

finishPushToTalk() :boolean;

cancelPushToTalk

Dalam mode push-to-talk, membatalkan ucapan saat ini.

cancelPushToTalk() :boolean;

enablePushToTalk

Mengaktifkan atau menonaktifkan mode push-to-talk. Ketika mode ini diaktifkan, agen hanya mengirim hasil pengenalan setelah finishPushToTalk dipanggil.

enablePushToTalk(enable: boolean):boolean;

Parameter:

Parameter

Type

Description

enable

Bool

Menonaktifkan atau mengaktifkan mode.

getRTCInstance

Mengambil instans engine ARTC.

getRTCInstance(): AliRtcEngine | undefined

sendTextToAgent

Mengirim pesan teks ke agen.

sendTextToAgent(req: AICallSendTextToAgentRequest);

Parameter:

Parameter

Type

Description

req

AICallSendTextToAgentRequest

Struktur pesan yang akan dikirim.

new AICallSendTextToAgentRequest(text)

sendCustomMessageToServer

Mengirim pesan kustom ke server. Harus dipanggil setelah panggilan terhubung.

sendCustomMessageToServer(msg: string)

Parameter:

Parameter

Type

Description

msg

string

Konten yang akan dikirim.

updateLlmSystemPrompt

Memperbarui system prompt Large Language Model (LLM). Harus dipanggil setelah panggilan terhubung.

updateLlmSystemPrompt(prompt: string)

Parameter:

Parameter

Type

Description

prompt

string

Prompt.

updateVcrConfig

Memperbarui konfigurasi VCR.

 public updateVcrConfig(vcrConfig: AICallAgentVcrConfig)

Parameter:

Parameter

Type

Description

vcrConfig

AICallAgentVcrConfig

Konfigurasi VCR.

updateBailianAppParams

Memperbarui parameter aplikasi Model Studio.

public updateBailianAppParams(params: JSONObject)

Parameter:

Parameter

Type

Description

params

object

Parameter aplikasi Model Studio.

startVisionCustomCapture

Untuk agen pemahaman visual, memulai tangkapan frame kustom. Setelah memanggil metode ini, interaksi suara dengan agen dinonaktifkan. Harus dipanggil setelah panggilan terhubung.

startVisionCustomCapture(req: AICallVisionCustomCaptureRequest)

Parameter:

Parameter

Type

Description

req

AICallVisionCustomCaptureRequest

Informasi konfigurasi.

{
  /**
   * Parameter teks untuk permintaan ke model besar multimodal.
   */
  text?: string;

  /**
   * Jika disetel ke true, satu frame ditangkap, dan sistem langsung keluar dari status tangkapan frame kustom.
   * Jika disetel ke false, frame ditangkap secara terus-menerus, dan sistem keluar dari status tangkapan frame kustom setelah durasi yang ditentukan.
   */
  isSingle?: boolean;

  /**
   * Interval tangkapan frame.
   * Default: 5 detik.
   */
  eachDuration?: number;

  /**
   * Jumlah gambar yang ditangkap setiap kali.
   * Default: 2.
   */
  num?: number;

  /**
   * Durasi tangkapan frame berkelanjutan dalam detik. Parameter ini diabaikan jika isSingle bernilai true. Jika tidak, status tangkapan frame kustom berakhir ketika durasi yang ditentukan tercapai.
   */
  duration?: number;

  /**
   * String JSON yang berisi informasi bisnis kustom. Informasi ini dikirim ke model besar bersama teks dan frame gambar untuk pemrosesan bisnis.
   */
  userData?: string;
}

stopVisionCustomCapture

Untuk agen pemahaman visual, menghentikan tangkapan frame kustom. Harus dipanggil setelah panggilan terhubung.

stopVisionCustomCapture()

destroy

Melepaskan sumber daya.

async destroy()

Detail event ARTCAICallEngine

errorOccurred

Menunjukkan bahwa terjadi error selama panggilan.

Parameter:

Parameter

Type

Description

code

AICallErrorCode

Jenis error.

callBegin

Menunjukkan bahwa panggilan telah dimulai.

callEnd

Menunjukkan bahwa panggilan telah berakhir.

agentStateChange

Menunjukkan bahwa status agen telah berubah.

Parameter:

Parameter

Type

Description

state

AICallAgentState

Status agen saat ini: Listening, Thinking, atau Speaking.

speakingVolumeChanged

Menunjukkan perubahan volume berbicara.

Parameter:

Parameter

Type

Description

uid

string

UID pembicara. String kosong menunjukkan pengguna saat ini.

volume

Int32

Volume. Rentang: 0 hingga 100.

userSubtitleNotify

Memberikan hasil pengenalan ucapan agen atas input pengguna.

Parameter:

Parameter

Type

Description

subtitle

AICallSubtitleData

Informasi takarir.

agentSubtitleNotify

Memberikan teks respons agen.

Parameter:

Parameter

Type

Description

subtitle

AICallSubtitleData

Informasi takarir.

voiceIdChanged

Menunjukkan bahwa voice panggilan saat ini telah berubah.

Parameter:

Parameter

Type

Description

voiceId

string

ID voice saat ini.

pushToTalkChanged

Menunjukkan bahwa mode push-to-talk telah berubah.

Parameter:

Parameter

Type

Description

enable

boolean

Menentukan apakah mode diaktifkan.

agentWillLeave

Menunjukkan bahwa agen akan mengakhiri panggilan.

Parameter:

Parameter

Type

Description

reason

number

Alasan keluar: 2001 (idle timeout) atau 0 (lainnya).

message

string

Deskripsi alasan keluar.

receivedAgentCustomMessage

Menunjukkan bahwa pesan kustom diterima dari agen.

Parameter:

Parameter

Type

Description

data

Object

Konten pesan.

voiceInterruptChanged

Menunjukkan bahwa interupsi voice untuk panggilan saat ini diaktifkan atau dinonaktifkan.

Parameter:

Parameter

Type

Description

enable

boolean

Menentukan apakah fitur diaktifkan.

humanTakeoverWillStart

Menunjukkan bahwa agen langsung akan mengambil alih panggilan.

Parameter:

Parameter

Type

Description

takeoverUid

string

UID agen langsung.

takeoverMode

number

1: Output menggunakan voice agen langsung. 0: Output menggunakan voice agen.

humanTakeoverConnected

Menunjukkan bahwa agen langsung telah terhubung dan mengambil alih panggilan.

Parameter:

Parameter

Type

Description

takeoverUid

string

UID agen langsung.

agentEmotionNotify

Memberikan hasil analisis emosi agen.

Parameter:

Parameter

Type

Description

emotion

string

Label emosi, seperti netral, senang, marah, atau sedih.

userAsrSentenceId

number

ID kalimat jawaban atas pertanyaan pengguna.

agentDataChannelAvailable

Dipicu ketika channel pesan agen tersedia. Setelah callback ini dipicu, Anda dapat mulai mengirim pesan ke agen.

receivedAgentVcrResult

Menunjukkan bahwa hasil VCR diterima dari agen. Untuk informasi selengkapnya, lihat AICallAgentVcrResult.

receivedAgentVcrResult: (result: AICallAgentVcrResult) => void;

Parameter:

Parameter

Type

Description

result

AICallAgentVcrResult

Hasil VCR.