通過閱讀本文,您可以瞭解Android SDK介面詳情。
API概覽
類/協議 | API | 說明 |
ARTCAIChatEngine 訊息對話引擎介面定義 | 註冊訊息對話引擎回調。 | |
釋放資源。 | ||
設定訊息對話配置的參數項,如果不需要設定業務參數,可不調用 | ||
使用者自訂資訊,該資訊最終傳給智能體,業務自訂擴充欄位 | ||
開始聊天。 | ||
結束聊天。 | ||
發送簡訊。 | ||
開始按鍵語音。 | ||
結束按鍵語音。 | ||
取消按鍵語音。 | ||
中斷智能體輸出。 | ||
刪除訊息。 | ||
擷取歷史訊息列表。 | ||
擷取智能體資訊。 | ||
開始文本朗讀。 | ||
停止文本朗讀。 | ||
是否文本朗讀中。 | ||
當前文本朗讀音色列表。 | ||
當前使用的音色。 | ||
擷取當前智能體的回複狀態。 | ||
建立附件上傳器對象,附件類型可以是圖片、檔案等 | ||
擷取當前引擎狀態。 | ||
解析一個分享的智能體資訊。 | ||
啟動一個分享的智能體訊息對話。 | ||
IARTCAIChatEngineCallback 訊息對話引擎回調事件 | 請求鑒權token,必須要實現的回調。 | |
引擎狀態發生變化。 | ||
接收到訊息時回調。 | ||
當使用者發送的訊息裡某些欄位更新後會觸發該回調。 | ||
當智能體響應狀態發生變化時調用的方法。 | ||
文本朗讀播放狀態改變。 | ||
發生了錯誤。 | ||
收到自訂訊息 | ||
ARTCAIChatAttachmentUploader 附件上傳器類 | 註冊附件上傳回調 | |
添加附件對象 | ||
刪除附件對象 | ||
擷取附件列表 | ||
所有附件是否都上傳成功 | ||
IARTCAIChatAttachmentUploadCallback 附件上傳進度回調類 | 上傳成功回調 | |
上傳失敗回調 | ||
上傳進度 |
API詳情
ARTCAIChatEngine詳情
setEngineCallback
註冊回調
/**
* 註冊回調
* @param engineCallback
*/
public abstract void setEngineCallback(ARTCAIChatEngine.IARTCAIChatEngineCallback engineCallback);參數詳情:
參數 | 類型 | 含義 |
engineCallback | IARTCAIChatEngineCallback | 引擎回調 |
destory
釋放資源
/**
* 釋放資源
*/
public abstract void destory();setTemplateConfig
設定訊息對話配置的參數項,如果不需要設定業務參數,可不調用
public abstract void setTemplateConfig(ARTCAIChatTemplateConfig templateConfig);參數詳情:
參數 | 類型 | 含義 |
templateConfig | 用於訊息對話的TemplateConfig參數 |
setUserData
使用者自訂資訊,該資訊最終傳給智能體,業務自訂擴充欄位
public abstract void setUserData(String userData);參數詳情:
參數 | 類型 | 含義 |
userData | String | 使用者自訂資訊 |
startChat
開始聊天
/**
* 開始聊天
* @param userInfo
* @param agentInfo
* @param sessionId 當前會話的唯一標識,如果為空白,則使用userId+agentId作為唯一標識
*/
public abstract void startChat(ARTCAIChatUserInfo userInfo, ARTCAIChatAgentInfo agentInfo, String sessionId);
參數詳情:
參數 | 類型 | 含義 |
userInfo | 使用者資訊,userId不可為空白,可以使用業務的使用者ID | |
agentInfo | 智能體資訊,agentId不可為空白 | |
sessionId | String | 當前會話的唯一標識,如果為空白,則使用userId+agentId作為唯一標識,使用sessionId來關聯使用者和智能體對話的所有聊天記錄 |
endChat
結束聊天
/**
* 結束聊天
* @param needLogout
*/
public abstract void endChat(boolean needLogout);參數詳情:
參數 | 類型 | 含義 |
needLogout | boolean | 是否結束聊天並登出IM |
sendMessage
發送簡訊
/**
* 發送簡訊
* @param request
*/
public abstract void sendMessage(ARTCAIChatSendMessageRequest request, IARTCAIChatMessageCallback callback);參數詳情:
參數 | 類型 | 含義 |
request | 發送訊息請求 | |
callback | IARTCAIChatMessageCallback | 發送簡訊回調 |
startPushVoiceMessage
開始按鍵語音訊息
/**
* 開始按鍵語音
* @param request
*/
public abstract boolean startPushVoiceMessage(ARTCAIChatSendMessageRequest request);參數詳情:
參數 | 類型 | 含義 |
request | 發送訊息請求 |
finishPushVoiceMessage
結束按鍵語音訊息
/**
* 結束按鍵語音
* @param callback
*/
public abstract void finishPushVoiceMessage( IARTCAIChatMessageCallback callback);參數詳情:
參數 | 類型 | 含義 |
request | IARTCAIChatMessageCallback | 發送按鍵語音訊息回調 |
cancelPushVoiceMessage
結束按鍵語音訊息
/**
* 取消按鍵語音
*/
public abstract void cancelPushVoiceMessage();interruptAgentResponse
中斷智能體輸出
/**
* 中斷智能體輸出
*/
public abstract void interruptAgentResponse();deleteMessage
刪除訊息
/**
* 刪除訊息
* @param message
*/
public abstract void deleteMessage(ARTCAIChatMessage message, IARTCAIChatMessageCallback callback);參數詳情:
參數 | 類型 | 含義 |
message | 需要刪除的訊息記錄 | |
callback | IARTCAIChatMessageCallback | 刪除訊息回調 |
queryMessageList
擷取歷史訊息列表
/**
* 擷取歷史訊息列表
* @param request 請求model
* @param callback
*/
public abstract void queryMessageList(ARTCAIChatMessageListRequest request, IARTCAIChatHistoryMessageCallback callback);參數詳情:
參數 | 類型 | 含義 |
message | 歷史訊息列表請求 | |
callback | IARTCAIChatHistoryMessageCallback | 請求歷史訊息列表回調 |
getAgentInfo
擷取智能體資訊
/**
* 擷取智能體資訊
*/
public abstract ARTCAIChatAgentInfo getAgentInfo();startPlayMessage
開始文本朗讀
/**
* 開始文本朗讀
* @param message 要播放的訊息
* @param voiceId 播放的音色
* @param callback 回調訊息
*/
public abstract void startPlayMessage(ARTCAIChatMessage message, String voiceId, IARTCAIChatMessageCallback callback);參數詳情:
參數 | 類型 | 含義 |
message | 開始文本朗讀的訊息 | |
voiceId | String | 播放的音色 |
callback | IARTCAIChatMessageCallback | 文本朗讀的回調 |
stopPlayMessage
停止文本朗讀
/**
* 停止播放訊息內容
*/
public abstract void stopPlayMessage();isPlayingMessage
是否正在文本朗讀中
/**
* 是否正在文本朗讀中
*/
public abstract boolean isPlayingMessage(String messageId);參數詳情:
參數 | 類型 | 含義 |
messageId | String | 當前訊息是否正在文本朗讀中 |
getVoiceList
當前音色列表
/**
* 當前音色列表
*/
public abstract List<String> getVoiceList();getCurrentVoice
當前使用的音色
/**
* 當前使用的音色
*/
public abstract String getCurrentVoice();getCurrentAIChatAgentState
擷取當前智能體的回複狀態
/**
* 擷取當前智能體的回複狀態
*/
public abstract ARTCAIChatAgentState getCurrentAIChatAgentState();createAttachmentUploader
建立附件上傳器對象,附件類型可以是圖片、檔案等
/**
* 建立附件上傳器對象,只能建立一個
* @return
*/
public abstract ARTCAIChatAttachmentUploader createAttachmentUploader()getEngineState
擷取當前引擎狀態
/**
* 擷取當前引擎狀態
*/
public abstract ARTCAIChatEngineState getEngineState();parseShareConfig
解析一個分享的智能體資訊
/**
* 解析一個分享的智能體資訊
* @param shareInfo
* @return
*/
public abstract ARTCAIChatAgentShareConfig parseShareConfig(String shareInfo);參數詳情:
參數 | 類型 | 含義 |
shareInfo | String | 分享智能體的String |
generateShareAgentChat
啟動一個分享的智能體訊息對話
/**
* 啟動一個分享的智能體訊息對話
* @param shareConfig
* @param userId
* @param callback
*/
public abstract void generateShareAgentChat(ARTCAIChatAgentShareConfig shareConfig, String userId, IARTCAIChatGenerateShareAgentCallback callback);參數詳情:
參數 | 類型 | 含義 |
shareConfig | ARTCAIChatAgentShareConfig | 分享智能體的配置資訊 |
userId | String | 使用者Id |
callback | IARTCAIChatGenerateShareAgentCallback | 分享智能體回調 |
IARTCAIChatEngineCallback詳情
onRequestAuthToken
請求鑒權token,必須要實現的回調,通過AppServer或者業務Server調用generateMessageChatToken OpenAPI擷取Token,AICall SDK需要用這個Token進行鑒權
/**
* 請求鑒權token
* @param userId
* @param callback
*/
public void onRequestAuthToken(String userId, IARTCAIChatAuthTokenCallback callback);參數詳情:
參數 | 類型 | 含義 |
userId | String | 使用者Id |
callback | IARTCAIChatAuthTokenCallback | 擷取Token的回調 |
onEngineStateChange
當引擎狀態發生變化時調用的方法
/**
* 當引擎狀態發生變化時調用的方法
*
* @param oldState 變化前的引擎狀態,表示引擎之前的狀態
* @param newState 變化後的引擎狀態,表示引擎當前的新狀態
*/
public void onEngineStateChange(ARTCAIChatEngineState oldState, ARTCAIChatEngineState newState);參數詳情:
參數 | 類型 | 含義 |
oldState | 變化前的引擎狀態 | |
newState | 變化後的引擎狀態 |
onReceivedMessage
當接收到訊息時調用的方法
/**
* 當接收到訊息時調用的方法
* 該方法用於處理接收到的ARTCAIChatMessage對象,可以在此處實現訊息的邏輯
* 例如,可以將訊息顯示在介面上,或進行其他處理
*
* @param message 接收到的訊息對象,包含訊息的內容和其他相關資訊
*/
public void onReceivedMessage(ARTCAIChatMessage message);參數詳情:
參數 | 類型 | 含義 |
message | 接收到的訊息對象,包含訊息的內容和其他相關資訊 |
onUserMessageUpdated
當使用者發送的訊息裡某些欄位更新後會觸發該回調
/**
* 當使用者發送的訊息裡某些欄位更新後會觸發該回調
*
* @param message 使用者發送的訊息
*/
public void onUserMessageUpdated(ARTCAIChatMessage message);參數詳情:
參數 | 類型 | 含義 |
message | 使用者發送的訊息 |
onAgentResponseStateChange
當智能體響應狀態發生變化時調用的方法
/**
* 當智能體響應狀態發生變化時調用的方法
*
* @param agentState 新的智能體狀態
* @param requestId 響應狀態變化相關的句子ID
*/
public void onAgentResponseStateChange(ARTCAIChatAgentState agentState, String requestId);參數詳情:
參數 | 類型 | 含義 |
agentState | 智能體狀態 | |
requestId | String | 對應的請求,可為空白 |
onMessagePlayStateChange
文本朗讀播放狀態改變
/**
* 文本朗讀播放狀態改變
*
* @param message 訊息對象
* @param state 訊息播放狀態
*/
public void onMessagePlayStateChange(ARTCAIChatMessage message, ARTCAIChatMessagePlayState state);參數詳情:
參數 | 類型 | 含義 |
message | 文本朗讀的訊息對象 | |
state | ARTCAIChatMessagePlayState | 訊息播放狀態 |
onErrorOccurs
發生了錯誤
/**
* 發生了錯誤
* @param error
* @param requestId
*/
public void onErrorOccurs(ARTCAIChatError error, String requestId)參數詳情:
參數 | 類型 | 含義 |
error | ARTCAIChatError | 錯誤資訊 |
requestId | String | 對應的請求,可為空白 |
onReceivedCustomMessage
收到自訂訊息
/**
* 收到自訂訊息
* 該回調觸發時機:調用OpenAPI發送自訂訊息是,AICall SDK會收到該訊息
* @param text 自訂訊息
*/
public void onReceivedCustomMessage(String text) 參數詳情:
參數 | 類型 | 含義 |
text | String | 接收到的自訂訊息。 |
ARTCAIChatAttachmentUploader
registerAttachmentUploadCallback
註冊附件上傳回調
/**
* 註冊附件上傳回調
* @param callback
*/
public abstract void registerAttachmentUploadCallback(ARTCAIChatAttachmentUploader.IARTCAIChatAttachmentUploadCallback callback);參數詳情:
參數 | 類型 | 含義 |
callback | IARTCAIChatAttachmentUploadCallback | 附件上傳結果回調 |
addAttachment
添加附件對象
/**
* 添加附件
* @param attachment
*/
public abstract void addAttachment(ARTCAIChatAttachmentUploader.ARTCAIChatAttachment attachment);
參數說明:
參數 | 類型 | 含義 |
attachment | 附件對象 |
removeAttachment
刪除附件對象
/**
* 添加附件
* @param attachment
*/
public abstract void removeAttachment(ARTCAIChatAttachmentUploader.ARTCAIChatAttachment attachment);
參數說明:
參數 | 類型 | 含義 |
attachment | 附件對象 |
getAttachmentList
擷取附件列表
/**
* 擷取附件列表
*/
public abstract List<ARTCAIChatAttachment> getAttachmentList()allUploadSussess
所有附件是否都上傳成功
/**
* 所有附件是否都上傳成功
*/
public abstract boolean allUploadSussess();IARTCAIChatAttachmentUploadCallback
onSuccess
上傳成功回調
/**
* 上傳成功回調
*/
public void onSuccess(ARTCAIChatAttachment attachment) {}onFailure
上傳失敗回調
/**
* 上傳失敗回調
* @param error 返回的錯誤資訊
*/
public void onFailure(ARTCAIChatAttachment attachment, ARTCAIChatEngine.ARTCAIChatError error) {}
參數詳情:
參數 | 類型 | 含義 |
attachment | 附件對象 | |
error | ARTCAIChatError | 上傳失敗原因 |
onProgress
上傳進度
/**
* 上傳進度
* @param progress
*/
public void onProgress(ARTCAIChatAttachment attachment, int progress) {}
參數詳情:
參數 | 類型 | 含義 |
attachment | 附件對象 | |
progress | int | 上傳進度,取值範圍:[0, 100] |