全部產品
Search
文件中心

:資料結構

更新時間:Aug 07, 2025

通過閱讀本文,您可以瞭解iOS SDK涉及的資料類型。

資料結構概覽

說明

舊版本SDK中存在棄用參數、方法,建議您將SDK升級到最新版本,請參見iOS使用指南

結構類型

資料類型

描述

Enum

ARTCAICallAgentType

智能體類型

ARTCAICallAgentState

智能體狀態

ARTCAICallAudioProfile

音頻編碼配置

ARTCAICallAudioScenario

音頻情境配置

ARTCAICallAgentViewMode

智能體視圖渲染模式

ARTCAICallAgentViewMirrorMode

智能體視圖鏡像模式

ARTCAICallAgentViewRotationMode

智能體視圖旋轉模式

ARTCAICallNetworkQuality

網路狀態

ARTCAICallSpeakingInterruptedReason

智能體當前講話被打斷原因

ARTCAICallVoiceprintResult

Vad反饋結果

ARTCAICallErrorCode

錯誤碼

ARTCAICallTurnDetectionMode

判斷使用者說話是否結束模式

Class

ARTCAICallAgentInfo

智能體運行時資訊

ARTCAICallAudioConfig

通話音頻配置

ARTCAICallViewConfig

智能體視圖配置,當智能體需要渲染時(例如:數字人)需要通過該類進行設定

ARTCAICallVisionConfig

視覺理解智能體回合組態

ARTCAICallVisionCustomCaptureRequest

視覺理解智能體開啟自訂截幀配置請求 Model

ARTCAICallSendTextToAgentRequest

給智能體發送簡訊請求 Model

ARTCAICallConfig

啟動智能體通話的配置

ARTCAICallTemplateConfig(棄用)

用於啟動通話的 TemplateConfig 參數

ARTCAICallChatSyncConfig

關聯的 chat 智能體會話配置參數

ARTCAICallAgentShareConfig

分享智能體配置資訊

ARTCAICallVideoConfig

通話本地視頻配置

ARTCAICallAgentConfig

通話智能體啟動與回合組態

ARTCAICallAgentAsrConfig

語音辨識配置

ARTCAICallAgentTtsConfig

語音合成配置

ARTCAICallAgentLlmConfig

大語言模型配置

ARTCAICallAgentAvatarConfig

數字人配置

ARTCAICallAgentInterruptConfig

打斷配置

ARTCAICallAgentVoiceprintConfig

聲紋降噪配置

ARTCAICallAgentTurnDetectionConfig

輪次檢測配置

ARTCAICallAgentVcrResult

VCR檢測結果

ARTCAICallAgentVcrConfig

VCR配置

ARTCAICallAgentVcrBaseConfig

VCR的基礎檢測配置

ARTCAICallAgentVcrFrameMotionConfig

VCR的視訊框架檢測配置

ARTCAICallExperimentalConfig

實驗參數,用於特定邏輯策略的控制

資料結構詳情

Enum

ARTCAICallAgentType

智能體類型

枚舉值

描述

VoiceAgent

0

僅支援語音互動,無視覺形象

AvatarAgent

1

具備虛擬人偶,支援語音和視覺互動

VisionAgent

2

主要負責視覺資訊的理解與分析

VideoAgent

3

視訊通話,使用者與智能體雙向視訊通話

ARTCAICallAgentState

智能體狀態

枚舉值

描述

Listening

1

聆聽中

Thinking

2

思考中

Speaking

3

講話中

ARTCAICallAudioProfile

音頻編碼配置

枚舉值

描述

LowQualityMode

0x0000

音頻低音質模式,預設 8000Hz 採樣率,單聲道,最大編碼碼率 12kbps

BasicQualityMode

0x0001

標準音質模式,預設 16000Hz 採樣率,單聲道,最大編碼碼率 24kbps

HighQualityMode

0x0010

(預設)高音質模式,預設 48000Hz 採樣率,單聲道,最大編碼碼率 64kbps

StereoHighQualityMode

0x0011

立體聲高音質模式,預設 48000Hz 採樣率,雙聲道,最大編碼碼率 80kbps

SuperHighQualityMode

0x0012

超高音質模式,預設 48000Hz 採樣率,單聲道,最大編碼碼率 96kbps

StereoSuperHighQualityMode

0x0013

立體聲超高音質模式,預設 48000Hz 採樣率,雙聲道,最大編碼碼率 128kbps

ARTCAICallAudioScenario

音頻情境配置

枚舉值

描述

DefaultMode

0x0000

一般的音視頻通訊情境推薦使用

MusicMode

0x0300

預設情境,音樂情境,高保真音樂音質,樂器教學等對音樂音質有要求的情境推薦使用

ARTCAICallAgentViewMode

智能體視圖渲染模式

枚舉值

描述

Auto

0

自動模式

Stretch

1

延伸模式

Fill

2

填充模式

Crop

3

裁剪模式

ARTCAICallAgentViewMirrorMode

智能體視圖鏡像模式

枚舉值

描述

OnlyFrontCameraPreviewEnabled

0

只有自拍預覽鏡像,其餘不鏡像

AllEnabled

1

鏡像都開啟

AllDisabled

2

鏡像都關閉

ARTCAICallAgentViewRotationMode

智能體視圖旋轉模式

枚舉值

描述

Rotation_0

0

視頻視圖旋轉角度 - 0

Rotation_90

1

視頻視圖旋轉角度 - 90

Rotation_180

2

視頻視圖旋轉角度 - 180

Rotation_270

3

視頻視圖旋轉角度 - 270

ARTCAICallNetworkQuality

網路狀態

枚舉值

描述

Excellent

0

網路極好,流程度清晰度品質好

Good

1

網路好,流暢度清晰度和極好差不多

Poor

2

網路有點差,音視頻流暢度清晰度有瑕疵,不影響溝通

Bad

3

網路差,視訊卡頓嚴重,音頻能正常溝通

VeryBad

4

網路極差,基本無法溝通

Disconnect

5

網路中斷

Unknow

6

未知

ARTCAICallSpeakingInterruptedReason

智能體當前講話被打斷原因

枚舉值

描述

unknown

0

未知原因

byWords

1

因為識別到特定詞

byVoice

2

因為語音打斷

byInterruptSpeaking

3

因為調用了API:interruptSpeaking

bySpeechBroadCast

4

因為主動語音播報打斷

byLlmQuery

5

因為主動LLM查詢打斷

ARTCAICallVoiceprintResult

Vad反饋結果

枚舉值

描述

Off

0

沒開啟聲紋降噪Vad,且關閉AIVad

Unregister

1

已開啟聲紋降噪Vad,但還完成聲紋註冊

DetectedSpeaker

2

已開啟聲紋降噪Vad,識別到主講人

UndetectedSpeaker

3

已開啟聲紋降噪Vad,沒識別到主講人

DetectedSpeakerWithAIVad

4

開啟AIVad,識別到主講人

UndetectedSpeakerWithAIVad

5

開啟AIVad,但沒識別到主講人

Unknown

100

未知

ARTCAICallErrorCode

錯誤碼

枚舉值

描述

None

0

成功

InvalidAction

-1

操作無效

InvalidParames

-2

參數錯誤

NetworkError

-3

網路錯誤

InternalError

-4

內部錯誤

BeginCallFailed

-10000

啟動通話失敗

ConnectionFailed

-10001

連結出現問題

PublishFailed

-10002

推流失敗

SubscribeFailed

-10003

拉流失敗

TokenExpired

-10004

通話認證到期

KickedByUserReplace

-10005

同名登入導致通話無法進行

KickedBySystem

-10006

被系統踢出導致通話無法進行

KickedByChannelTerminated

-10007

頻道被銷毀導致通話無法進行

LocalDeviceException

-10008

本地裝置問題導致無法進行

AgentLeaveChannel

-10101

智能體離開頻道了(智能體結束通話)

AgentPullFailed

-10102

智能體拉流失敗了

AgentASRFailed

-10103

智能體ASR失敗

AvatarServiceFailed

-10201

數字智能體服務啟動失敗

AvatarRoutesExhausted

-10202

數字智能體超出並發路數

AgentSubscriptionRequired

-10203

發起通話,超出每天免費體驗的額度

AgentNotFound

-10204

智能體未能找到(智能體ID不存在)

ChatTextMessageSendFailed

-10301

簡訊發送失敗

ChatTextMessageReceiveFailed

-10302

簡訊接收失敗

ChatVoiceRecordFailed

-10310

語音訊息錄製失敗

ChatVoiceMessageSendFailed

-10311

語音訊息發送失敗

ChatVoiceMessageReceiveFailed

-10312

語音訊息接收失敗

ChatPlayMessageReceiveFailed

-10321

播放訊息接收失敗

ChatLogNotFound

-10331

聊天記錄未能找到

ChatAttachmentUploading

-10332

附件的還在上傳中,需要上傳完成後,才能發送訊息

UnknowError

-40000

未知錯誤

ARTCAICallTurnDetectionMode

判斷使用者說話是否結束模式

枚舉值

描述

Normal

0

普通模式,不使用AI進行語義判斷是否說話結束,使用ASR靜默時間判斷

Semantic

Semantic,用AI根據上下文語義,判斷是否說話結束

Class

ARTCAICallAgentInfo

智能體運行時資訊

屬性名稱

類型

描述

agentId

String

當前智能體 ID

agentType

ARTCAICallAgentType

智能體類型

channelId

String

智能體所在的 RTC 頻道 ID

uid

String

智能體進入 RTC 頻道的唯一標識

instanceId

String

當前智能體啟動並執行執行個體 ID

requestId

String

當前智能體啟動的請求 ID

region

String?

Agent 所在地區

ARTCAICallAudioConfig

通話音頻配置

屬性名稱

類型

描述

audioProfile

ARTCAICallAudioProfile

音頻編碼配置,預設是 HighQualityMode

audioScenario

ARTCAICallAudioScenario

音頻情境配置,預設是 ARTCAICallAudioSceneMusicMode

ARTCAICallViewConfig

智能體視圖配置,當智能體需要渲染時(例如:數字人)需要通過該類進行設定

屬性名稱

類型

描述

view

UIView

渲染視圖

viewMode

ARTCAICallAgentViewMode

畫面渲染模式

viewMirrorMode

ARTCAICallAgentViewMirrorMode

畫面鏡像模式

viewRotationMode

ARTCAICallAgentViewRotationMode

畫面旋轉模式

ARTCAICallVisionConfig

視覺理解智能體回合組態

屬性名稱

類型

描述

preview

UIView?

預覽,為空白表示不預覽只推流

viewMode

ARTCAICallAgentViewMode

預覽畫面渲染模式

viewMirrorMode

ARTCAICallAgentViewMirrorMode

預覽畫面鏡像模式

viewRotationMode

ARTCAICallAgentViewRotationMode

預覽畫面旋轉模式

dimensions

CGSize

推流解析度

frameRate

Int

推流幀率

bitrate

Int

推流碼率

keyFrameInterval

Int

推流主要畫面格間隔(毫秒)

useHighQualityPreview

Bool

是否使用高清預覽,否則 SDK 自動調整

cameraCaptureFrameRate

Int

預覽解析度(預設為 15fps)

ARTCAICallVisionCustomCaptureRequest

視覺理解智能體開啟自訂截幀配置請求 Model

屬性名稱

類型

描述

text

String

請求多模態大模型時的文本參數

enableASR

Bool

是否將 ASR 結果作為輸入傳給大模型

isSingle

Bool

是否為單次截幀

eachDuration

UInt

截幀間隔時間長度(秒)

num

UInt

每次截幀的圖片數量

duration

UInt

持續截幀的時間長度(秒),僅在持續截幀時生效

userData

String?

JSON 字串,自訂商務資訊

ARTCAICallSendTextToAgentRequest

給智能體發送簡訊請求 Model

屬性名稱

類型

描述

text

String

詢問智能體的簡訊,例如:"這是什嗎?"

ARTCAICallConfig

啟動智能體通話的配置

屬性名稱

類型

描述

agentId

String

智能體 ID

agentType

ARTCAICallAgentType

智能體類型,必須是agentId的類型,否則啟動智能體會報錯

agentUserId

String?

智能體的 Uid,為空白時由服務分配

region

String

智能體服務所在地區,必須是agentId所在的地區,否則啟動智能體會報錯

userId

String

目前使用者 ID

userJoinToken

String

目前使用者的入會 Token

userData

[String: Any]?

使用者自訂資訊,最終傳給智能體

agentConfig

ARTCAICallAgentConfig?

用於啟動通話的agentConfig參數

audioConfig

ARTCAICallAudioConfig?

本地音頻配置

videoConfig

ARTCAICallVideoConfig?

本地視頻配置,VisionAgent/VideoAgent時才會生效

chatSyncConfig

ARTCAICallChatSyncConfig?

關聯的 chat 智能體配置

templateConfig

ARTCAICallTemplateConfig(棄用)?

已棄用,請使用 agentConfig

ARTCAICallTemplateConfig(棄用)

用於啟動通話的 TemplateConfig 參數

重要

該方法在2.5以上版本棄用,最新版請使用 ARTCAICallAgentConfig

屬性名稱

類型

描述

agentGreeting

String?

智能體歡迎語,為空白表示使用智能體配置值,最大長度100字元

userOnlineTimeout

Int32

使用者未入會,智能體逾時關閉任務的時間,小於0則使用服務端預設值 60s

userOfflineTimeout

Int32

使用者退會後,智能體逾時關閉任務的時間,小於0則使用服務端預設值 5s

workflowOverrideParams

[String: Any]?

工作流程覆蓋參數

bailianAppParams

[String: Any]?

百鍊應用中心參數

asrMaxSilence

Int32

語音斷句檢測閾值,範圍 200ms~1200ms,小於0使用服務端預設值 400ms

volume

Int32

智能體說話的音量,範圍 0~400,輸出音量 = 工作流程中的語音輸出音量 * volume / 100,小於0使用服務端預設值 100

vadLevel

Int32

設定AIVad的靈敏度參數,預設值為3,取值範圍:[0,10]

enableVoiceInterrupt

Bool

是否開啟智能打斷

agentVoiceId

String?

智能體講話音色 ID,為空白表示使用智能體配置值

enableIntelligentSegment

Bool

是否開啟智能斷句合并

useVoiceprint

Bool

當前斷句是否使用聲紋降噪識別

voiceprintId

String?

聲紋 ID,如果不為空白表示當前通話開啟聲紋降噪能力

agentMaxIdleTime

Int32

智能體閑時的最大等待時間(單位:秒),小於0使用服務端預設值 600s

llmHistoryLimit

Int32

LLM/Multimodal LLM 歷史對話上下文最大保留輪次,小於0使用服務端預設值 10

enablePushToTalk

Bool

是否開啟對講機模式

agentGracefulShutdown

Bool

是否優雅下線:播報完當前句子再停止

agentAvatarId

String?

數字人模型 ID,為空白表示使用智能體配置值

asrLanguageId

String?

ASR 語種 ID,為空白表示使用智能體配置值,可選:

  • zh_mandarin 中文

  • en 英文

  • zh_en 中英混

  • es 西班牙語

  • jp 日語

wakeUpQuery

String?

使用者在通話啟動前的指令,用於智能體在通話啟動後立即響應

llmSystemPrompt

String?

LLM 系統提示詞,例如:“你是一位友好且樂於助人的助手...” 注意:不支援 LLM 節點為百鍊工作流程類型

asrHotWords

[String]?

ASR熱詞列表,限制:500個詞及以內,每個詞不超過10個字元

interruptWords

[String]?

觸發對話打斷的特定詞彙或短語,例如:“打斷一下”、“我知道了”

ARTCAICallChatSyncConfig

關聯的 chat 智能體會話配置參數

屬性名稱

類型

描述

sessionId

String

關聯的 chat 智能體會話 ID

agentId

String

關聯的 chat 智能體 ID(必須是同一帳號同一地區)

receiverId

String

關聯的 chat 智能體會話的使用者識別碼

ARTCAICallAgentShareConfig

分享智能體配置資訊

屬性名稱

類型

描述

shareId

String?

智能體分享 ID

agentType

ARTCAICallAgentType

智能體工作量類型

expireTime

Date?

到期時間

region

String?

Agent 所在地區

templateConfig

String?

模板配置(JSON 字串)

userData

[String: Any]?

使用者自訂資訊,該資訊最終傳給智能體

ARTCAICallVideoConfig

通話本地視頻配置

屬性名稱

類型

描述

dimensions

CGSize

推流解析度

frameRate

Int

推流幀率

bitrate

Int

推流碼率

keyFrameInterval

Int

推流主要畫面格間隔(毫秒)

useHighQualityPreview

Bool

是否使用高清預覽,否則SDK根據推流解析度自動調整

cameraCaptureFrameRate

Int

預覽解析度

useFrontCameraDefault

Bool

是否預設啟動自拍

ARTCAICallAgentConfig

通話智能體啟動與回合組態

屬性名稱

類型

描述

agentGreeting

String?

智能體歡迎語,為空白表示使用智能體配置值

wakeUpQuery

String?

使用者在通話啟動前的指令,用於智能體在通話啟動後立即響應

agentMaxIdleTime

Int32

智能體閑時的最大等待時間(單位:秒),逾時智能體自動下線,預設值為600s

userOnlineTimeout

Int32

使用者未入會,智能體逾時關閉任務的時間,預設值為60s

userOfflineTimeout

Int32

使用者退會後,智能體逾時關閉任務的時間,預設值為5s

enablePushToTalk

Bool

是否開啟對講機模式

agentGracefulShutdown

Bool

是否優雅下線

volume

Int32

智能體說話的音量,範圍為 0~400,預設值為100

workflowOverrideParams

[String: Any]?

工作流程覆蓋參數

enableIntelligentSegment

Bool

智能斷句開關

asrConfig

ARTCAICallAgentAsrConfig

語音辨識配置

ttsConfig

ARTCAICallAgentTtsConfig

語音合成配置

llmConfig

ARTCAICallAgentLlmConfig

大語言模型配置

avatarConfig

ARTCAICallAgentAvatarConfig

數字人配置

interruptConfig

ARTCAICallAgentInterruptConfig

打斷配置

voiceprintConfig

ARTCAICallAgentVoiceprintConfig

聲紋降噪配置

turnDetectionConfig

ARTCAICallAgentTurnDetectionConfig

輪次檢測配置

experimentalConfig

ARTCAICallExperimentalConfig

非產品化定製化配置

vcrConfig

ARTCAICallAgentVcrConfig

VCR配置

ARTCAICallAgentAsrConfig

語音辨識配置

屬性名稱

類型

描述

asrLanguageId

String?

ASR語種Id,為空白表示使用智能體配置值

asrMaxSilence

Int32

語音斷句檢測閾值,靜音時間長度超過該閾值會被認為斷句,預設值為400ms,參數範圍 200ms~1200ms

asrHotWords

[String]?

ASR熱詞列表,限制:500個詞及以內,每個詞不超過10個字元

vadLevel

Int32

設定AIVad的靈敏度參數,預設值為3,取值範圍:[0,10]

customParams

String?

自接入ASR時,傳入運行時參數,使用URL參數形式,例如:"mode=fast&sample=16000&format=wav"

vadDuration

Int32

語音活動檢測的最短期間閾值用於調節打斷的靈敏度。預設為0,表示關閉此功能;有效範圍為200到2000毫秒,常用範圍為[200,500],對應1到4個字。如果設定的值小於0,則該值將不會發送至服務端(服務端預設關閉此功能)。

ARTCAICallAgentTtsConfig

語音合成配置

屬性名稱

類型

描述

agentVoiceId

String?

智能體講話音色Id,為空白表示使用智能體配置值

pronunciationRules

[[String: Any]]?

發音規則數組,最多支援 20 條規則。若為 nil 或空數組,則不使用任何規則。樣本如下:

 [
  {
      "Word": "重疊",                       // 目標詞
      "Pronunciation": "寵疊",              // 替換髮音
      "Type": "replacement"                // 多音字規則
  },
  {
      "Word": "行動",
      "Pronunciation": "航動",
      "Type": "replacement"
  }
]

speechRate

Double

TTS播報語速,支援所有TTS類型,取值範圍為[0.5, 2.0],預設值為1.0,小於0則不會發給服務端(使用控制台配置值)。

languageId

String?

TTS播報語種代碼,當TTS類型為MiniMax有效。

emotion

String?

TTS播報情緒類型,當TTS類型為MiniMax有效。

modelId

String?

TTS模型Id,當前僅支援minimax,可選值:speech-01-turbo / speech-02-turbo。

ARTCAICallAgentLlmConfig

大語言模型配置

屬性名稱

類型

描述

llmHistoryLimit

Int32

歷史對話上下文最大保留輪次,預設值為10

llmSystemPrompt

String?

LLM的系統提示詞

bailianAppParams

[String: Any]?

百鍊應用中心參數

llmCompleteReply

boolean

是否發送完整的LLM結果。

說明

開啟後,LLM產生結果之後,會通過onLLMReplyCompleted事件回調完整llm結果。

openAIExtraQuery

String?

額外的OpenAI協議LLM的查詢參數。

說明

參數必須使用key=value格式,多個參數用&串連,所有值必須為字串類型。

ARTCAICallAgentAvatarConfig

數字人配置

屬性名稱

類型

描述

agentAvatarId

String?

數字人模型Id,為空白表示使用智能體配置值

ARTCAICallAgentInterruptConfig

打斷配置

屬性名稱

類型

描述

enableVoiceInterrupt

Bool

是否開啟智能打斷

interruptWords

[String]?

觸發對話打斷的特定詞彙或短語

ARTCAICallAgentVoiceprintConfig

聲紋降噪配置

屬性名稱

類型

描述

useVoiceprint

Bool

當前斷句是否使用聲紋降噪識別

voiceprintId

String?

聲紋Id,如果不為空白表示當前通話開啟聲紋降噪能力

ARTCAICallAgentTurnDetectionConfig

輪次檢測配置

屬性名稱

類型

描述

turnEndWords

[String]?

斷句特定詞,例如:“完畢”、“我講完了”

mode

ARTCAICallTurnDetectionMode

判斷使用者說話是否結束模式,預設是Semantic,使用AI進行語義判斷是否說話結束

semanticWaitDuration

Int32

語義斷句自訂等待時間,單位:毫秒,範圍:[0, 10000];如果小於0則不會發給服務端(使用服務端預設值-1,AI自動判斷合適的等待時間)

說明

如果是ARTCAICallTurnDetectionMode.Normal模式,semanticWaitDuration欄位無效。

ARTCAICallAgentVcrResult

VCR檢測結果

屬性名稱

類型

描述

resultData

[String]?

智能體返回的所有的VCR檢測結果

stillFrameMotionResult

FrameMotionResult?

VCR的靜音幀檢測結果

invalidFrameMotionResult

FrameMotionResult?

VCR的無效幀檢測結果

peopleCountResult

PeopleCountResult?

VCR的即時畫面人數檢測結果

equipmentResult

EquipmentResult?

VCR的電子裝置檢測結果

headMotionResult

HeadMotionResult?

VCR的頭部動作檢測結果

ARTCAICallAgentVcrConfig

VCR配置

屬性名稱

類型

描述

data

[String]?

當使用者傳json對象進來時,緩衝起來,後面產生json字串時,使用該對象,這樣可以做到自訂擴充

stillFrameMotion

ARTCAICallAgentVcrFrameMotionConfig?

VCR的靜音幀檢測配置

invalidFrameMotion

ARTCAICallAgentVcrFrameMotionConfig?

VCR的無效幀檢測配置

peopleCount

ARTCAICallAgentVcrBaseConfig?

VCR的即時畫面人數檢測配置

equipment

ARTCAICallAgentVcrBaseConfig?

VCR的電子裝置檢測配置

headMotion

ARTCAICallAgentVcrBaseConfig?

VCR的頭部動作檢測配置

ARTCAICallAgentVcrBaseConfig

VCR的基礎檢測配置

屬性名稱

類型

描述

enable

Boolean

是否啟用,預設開啟

ARTCAICallAgentVcrFrameMotionConfig

VCR的視訊框架檢測配置

屬性名稱

類型

描述

callbackDelay

Int32

多少毫秒後觸發回調,預設3000ms

ARTCAICallExperimentalConfig

實驗參數,用於特定邏輯策略的控制

屬性名稱

類型

描述

rtcSdkParams

[String: Any]?

rtcsdk參數

commonParams

[String: Any]?

通用參數