inserts pending job

This commit is contained in:
Brandon Thomas committed 2022-01-31 04:36:26 -05:00
1 parent 99b642f7ac
commit 69186282a0
2 files changed
+14 -2

No files matched your search

@@ -47,7 +47,8 @@ impl TtsInferenceJobInsertBuilder {
uuid_idempotency_token: Some(idempotency_token),
maybe_creator_user_token: None,
creator_ip_address: Some("127.0.0.1".to_string()),
creator_set_visibility: Some("public".to_string()),
// hidden | public | ...
creator_set_visibility: Some("hidden".to_string()),
}
}
@@ -57,7 +58,7 @@ impl TtsInferenceJobInsertBuilder {
}
pub fn set_model_token(mut self, value: &str) -> Self {
self.job_token = Some(value.to_string());
self.model_token = Some(value.to_string());
self
}
@@ -87,6 +88,7 @@ impl TtsInferenceJobInsertBuilder {
}
pub async fn insert(&mut self, mysql_pool: &MySqlPool) -> AnyhowResult<()> {
// TODO: These should be custom error types with a custom macro to make this easy.
let job_token = self.job_token
.clone()
.ok_or(anyhow!("no job_token"))?;
@@ -8,6 +8,7 @@ use crate::twitch::oauth::oauth_token_refresher::OauthTokenRefresher;
use crate::twitch::pubsub::build_pubsub_topics_for_user::build_pubsub_topics_for_user;
use crate::twitch::twitch_user_id::TwitchUserId;
use crate::twitch::websocket_client::TwitchWebsocketClient;
use database_queries::tts::insert_tts_inference_job::TtsInferenceJobInsertBuilder;
use database_queries::twitch_oauth::find::{TwitchOauthTokenRecord, TwitchOauthTokenFinder};
use database_queries::twitch_oauth::insert::TwitchOauthTokenInsertBuilder;
use database_queries::twitch_pubsub::insert_bits::TwitchPubsubBitsInsertBuilder;
@@ -284,6 +285,7 @@ impl TwitchPubsubUserSubscriberThreadStageTwo {
Some(e) => e,
};
match error {
"" => {}, // No-op
"ERR_BADAUTH" => {
warn!("Invalid token. Bad auth. Need to refresh");
let token_record = self.refresh_twitch_oauth_token().await?;
@@ -551,6 +553,14 @@ impl TwitchPubsubUserSubscriberThreadStageTwo {
async fn write_tts_inference_event(&mut self, tts_text: &str) -> AnyhowResult<()> {
let sanitized_text = remove_cheers(tts_text);
let model_token = "TM:7wbtjphx8h8v"; // "Mario *" voice.
let mut builder = TtsInferenceJobInsertBuilder::new_for_internal_tts()
.set_job_token("todo")
.set_model_token(model_token)
.set_raw_inference_text(&sanitized_text);
let _r = builder.insert(&self.mysql_pool).await?;
Ok(())
}
}