fix up more api usage

This commit is contained in:
Brandon Thomas committed 2025-07-05 22:13:21 -04:00
1 parent 9ec1358594
commit ec26e76f62
4 files changed
+17 -9

No files matched your search

@@ -84,8 +84,8 @@ pub async fn upload_image_media_file_from_file<P: AsRef<Path>>(
}
fn get_route(api_host: &ApiHost) -> String {
let api_hostname = api_host.to_api_hostname();
format!("https://{}/v1/media_files/upload/image", api_hostname)
let api_hostname_and_scheme = api_host.to_api_hostname_and_scheme();
format!("{}/v1/media_files/upload/image", api_hostname_and_scheme)
}
// TODO(bt,2025-04-22): Share API definitions between client and server in common crate.
@@ -52,7 +52,7 @@ pub async fn handle_gpt_image_1_sora(
app_env_configs: &AppEnvConfigs,
sora_creds_manager: &SoraCredentialManager,
sora_task_queue: &SoraTaskQueue,
) -> Result<ContextualEditImageSuccessEvent, InternalContextualEditImageError> {
let sora_creds = match sora_creds_manager.get_credentials() {
@@ -66,7 +66,7 @@ pub async fn handle_gpt_image_1_sora(
return Err(InternalContextualEditImageError::AnyhowError(err));
}
};
// TODO(bt,2025-07-08): Handle many images.
// TODO(bt,2025-07-08): Handle authenticated sessions (for private images).
// TODO(bt,2025-07-08): Handle HTTP batch get requests.
@@ -78,7 +78,7 @@ pub async fn handle_gpt_image_1_sora(
})?;
info!("Calling get media file API: {:?}", app_env_configs.storyteller_host);
let response = get_media_file(
&app_env_configs.storyteller_host,
first_image_token
+3 -1
View File
@@ -82,6 +82,8 @@ pub fn run() {
let app_env_configs = AppEnvConfigs::load_from_filesystem(&app_data_root)
.expect("AppEnvConfigs should be loaded from disk");
let app_env_configs_2 = app_env_configs.clone();
let provider_priority = match ProviderPriorityStore::from_filesystem_configs(&app_data_root) {
Ok(Some(priority)) => {
println!("Loaded provider priority from disk: {:?}", priority.get_priority());
@@ -173,7 +175,7 @@ pub fn run() {
}
tauri::async_runtime::spawn(main_window_thread(app_3, app_data_root_3, storyteller_creds_manager_2));
tauri::async_runtime::spawn(sora_task_polling_thread(app_4, app_data_root_4, sora_creds_manager_3, storyteller_creds_manager_3, sora_task_queue_2));
tauri::async_runtime::spawn(sora_task_polling_thread(app_4, app_env_configs_2, app_data_root_4, sora_creds_manager_3, storyteller_creds_manager_3, sora_task_queue_2));
tauri::async_runtime::spawn(discord_presence_thread());
tauri::async_runtime::spawn(fal_task_polling_thread(app_5, app_data_root_5, fal_creds_manager_3, storyteller_creds_manager_4, fal_task_queue_3));
@@ -3,6 +3,7 @@ use crate::core::events::generation_events::common::{GenerationAction, Generatio
use crate::core::events::generation_events::generation_complete_event::GenerationCompleteEvent;
use crate::core::events::generation_events::generation_failed_event::GenerationFailedEvent;
use crate::core::events::sendable_event_trait::SendableEvent;
use crate::core::state::app_env_configs::app_env_configs::AppEnvConfigs;
use crate::core::state::data_dir::app_data_root::AppDataRoot;
use crate::core::state::data_dir::trait_data_subdir::DataSubdir;
use crate::services::sora::state::sora_credential_manager::SoraCredentialManager;
@@ -17,12 +18,12 @@ use std::fs::File;
use std::io::Write;
use std::path::PathBuf;
use storyteller_client::media_files::upload_image_media_file_from_file::upload_image_media_file_from_file;
use storyteller_client::utils::api_host::ApiHost;
use tauri::AppHandle;
use tempdir::TempDir;
pub async fn sora_task_polling_thread(
app_handle: AppHandle,
app_env_configs: AppEnvConfigs,
app_data_root: AppDataRoot,
sora_creds_manager: SoraCredentialManager,
storyteller_creds_manager: StorytellerCredentialManager,
@@ -31,6 +32,7 @@ pub async fn sora_task_polling_thread(
loop {
let res = polling_loop(
&app_handle,
&app_env_configs,
&sora_creds_manager,
&storyteller_creds_manager,
&sora_task_queue,
@@ -45,6 +47,7 @@ pub async fn sora_task_polling_thread(
async fn polling_loop(
app_handle: &AppHandle,
app_env_configs: &AppEnvConfigs,
sora_creds_manager: &SoraCredentialManager,
storyteller_creds_manager: &StorytellerCredentialManager,
sora_task_queue: &SoraTaskQueue,
@@ -119,7 +122,6 @@ async fn polling_loop(
sora_task_queue.remove_list(&failed_task_ids)?;
let creds = storyteller_creds_manager.get_credentials_required()?;
let api_host = ApiHost::Storyteller;
for task in succeeded_tasks.iter() {
if !sora_task_queue.contains_key(&task.id)? {
@@ -132,7 +134,11 @@ async fn polling_loop(
let download_path = download_generation(generation, &app_data_root).await?;
info!("Uploading to backend...");
let result = upload_image_media_file_from_file(&api_host, Some(&creds), download_path).await?;
let result = upload_image_media_file_from_file(
&app_env_configs.storyteller_host,
Some(&creds),
download_path
).await?;
info!("Uploaded to API backend: {:?}", result.media_file_token);