feat: gemini video veo3.1 add task fail check
This commit is contained in:
@@ -77,6 +77,8 @@ type operationResponse struct {
|
|||||||
URI string `json:"uri"`
|
URI string `json:"uri"`
|
||||||
} `json:"video"`
|
} `json:"video"`
|
||||||
} `json:"generatedSamples"`
|
} `json:"generatedSamples"`
|
||||||
|
RaiMediaFilteredCount int `json:"raiMediaFilteredCount"`
|
||||||
|
RaiMediaFilteredReasons []string `json:"raiMediaFilteredReasons"`
|
||||||
} `json:"generateVideoResponse"`
|
} `json:"generateVideoResponse"`
|
||||||
} `json:"response"`
|
} `json:"response"`
|
||||||
Error struct {
|
Error struct {
|
||||||
@@ -256,20 +258,19 @@ func (a *TaskAdaptor) ParseTaskResult(respBody []byte) (*relaycommon.TaskInfo, e
|
|||||||
return ti, nil
|
return ti, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
ti.Status = model.TaskStatusSuccess
|
if len(op.Response.GenerateVideoResponse.GeneratedSamples) == 0 {
|
||||||
ti.Progress = "100%"
|
ti.Status = model.TaskStatusFailure
|
||||||
|
ti.Reason = fmt.Sprintf("no generated video url found: %s", strings.Join(op.Response.GenerateVideoResponse.RaiMediaFilteredReasons, "; "))
|
||||||
taskID := encodeLocalTaskID(op.Name)
|
} else {
|
||||||
ti.TaskID = taskID
|
|
||||||
ti.Url = fmt.Sprintf("%s/v1/videos/%s/content", system_setting.ServerAddress, taskID)
|
|
||||||
|
|
||||||
// Extract URL from generateVideoResponse if available
|
|
||||||
if len(op.Response.GenerateVideoResponse.GeneratedSamples) > 0 {
|
|
||||||
if uri := op.Response.GenerateVideoResponse.GeneratedSamples[0].Video.URI; uri != "" {
|
if uri := op.Response.GenerateVideoResponse.GeneratedSamples[0].Video.URI; uri != "" {
|
||||||
ti.RemoteUrl = uri
|
ti.RemoteUrl = uri
|
||||||
}
|
}
|
||||||
|
ti.Status = model.TaskStatusSuccess
|
||||||
}
|
}
|
||||||
|
ti.Progress = "100%"
|
||||||
|
taskID := encodeLocalTaskID(op.Name)
|
||||||
|
ti.TaskID = taskID
|
||||||
|
ti.Url = fmt.Sprintf("%s/v1/videos/%s/content", system_setting.ServerAddress, taskID)
|
||||||
return ti, nil
|
return ti, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user