|
|
|
@ -628,21 +628,21 @@ class ChatApiService(private val context: android.content.Context? = null) : Cor |
|
|
|
mapOf("context" to "Tool not found: $functionName") |
|
|
|
} |
|
|
|
if (sessionid == currSessionId) { |
|
|
|
// 处理结果 |
|
|
|
try { |
|
|
|
if(!isError){ |
|
|
|
getSessionCallback(sessionid)?.onFunctionCallResult( |
|
|
|
sessionid, |
|
|
|
convertMapToJsonObject(functionCall), |
|
|
|
convertMapToJsonObject(result) |
|
|
|
) |
|
|
|
}else{ |
|
|
|
getSessionCallback(sessionid)?.onError(sessionid, ChatApiException(errorText)) |
|
|
|
} |
|
|
|
} catch (e: Exception) { |
|
|
|
Log.e(TAG, "onFunctionCallResult回调异常: ${e.message}", e) |
|
|
|
} |
|
|
|
if (functionName != "set_user_profile_field"){ |
|
|
|
// 处理结果 |
|
|
|
try { |
|
|
|
if(!isError){ |
|
|
|
getSessionCallback(sessionid)?.onFunctionCallResult( |
|
|
|
sessionid, |
|
|
|
convertMapToJsonObject(functionCall), |
|
|
|
convertMapToJsonObject(result) |
|
|
|
) |
|
|
|
}else{ |
|
|
|
getSessionCallback(sessionid)?.onError(sessionid, ChatApiException(errorText)) |
|
|
|
} |
|
|
|
} catch (e: Exception) { |
|
|
|
Log.e(TAG, "onFunctionCallResult回调异常: ${e.message}", e) |
|
|
|
} |
|
|
|
// 将结果发送回OpenAI继续对话 |
|
|
|
sendFunctionCallResultInternal( |
|
|
|
sessionid= sessionid, |
|
|
|
@ -650,6 +650,13 @@ class ChatApiService(private val context: android.content.Context? = null) : Cor |
|
|
|
functionCall = functionCall, |
|
|
|
functionResult = gson.toJson(result) |
|
|
|
) |
|
|
|
}else{ |
|
|
|
try { |
|
|
|
getSessionCallback(sessionid)?.onComplete(sessionid) |
|
|
|
} catch (ex: Exception) { |
|
|
|
Log.e(TAG, "onComplete回调异常: ${ex.message}", ex) |
|
|
|
} |
|
|
|
clearCurrentSession() |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|