feat: add customer portal and RTC voice diagnostics

This commit is contained in:
Codex Local
2026-08-27 21:02:37 +08:00
parent 5ff1961d79
commit d97bbf7cf5
18 changed files with 4045 additions and 169 deletions
+9 -2
View File
@@ -283,12 +283,19 @@ func (c *VolcengineClient) call(ctx context.Context, operation, action string, i
if readErr != nil {
return &Error{Operation: operation, Temporary: true, Cause: readErr}
}
var result volcengineResponse
decodeErr := json.Unmarshal(responseBody, &result)
if response.StatusCode < 200 || response.StatusCode >= 300 {
if decodeErr == nil && result.ResponseMetadata.Error != nil {
providerError := result.ResponseMetadata.Error
return &Error{Operation: operation, StatusCode: response.StatusCode,
Code: providerError.Code, Temporary: temporaryHTTPStatus(response.StatusCode) || temporaryProviderCode(providerError.Code),
Cause: errors.New(providerError.Message)}
}
return &Error{Operation: operation, StatusCode: response.StatusCode,
Temporary: temporaryHTTPStatus(response.StatusCode), Cause: errors.New(http.StatusText(response.StatusCode))}
}
var result volcengineResponse
if err := json.Unmarshal(responseBody, &result); err != nil {
if decodeErr != nil {
return &Error{Operation: operation, Temporary: true, Cause: errors.New("provider returned invalid JSON")}
}
if result.ResponseMetadata.Error != nil {