diff --git a/analytics/user_retention.sql b/analytics/user_retention.sql index 4b54794df4..da1362f17c 100644 --- a/analytics/user_retention.sql +++ b/analytics/user_retention.sql @@ -56,5 +56,20 @@ order by number desc limit 100; +select count(*) from tts_inference_jobs +where created_at > now() - interval 1 day ; + +select count(distinct creator_ip_address) from tts_inference_jobs +where created_at > now() - interval 1 day ; + + + +select j.creator_ip_address, count(*) as number +from tts_inference_jobs as j +where j.created_at > now() - interval 1 day +group by j.creator_ip_address +order by number desc +limit 100; + diff --git a/crates/service/storyteller_web/src/http_server/endpoints/investor_demo/default_redirect.rs b/crates/service/storyteller_web/src/http_server/endpoints/investor_demo/default_redirect.rs index 535b61c44c..95ac8fbc41 100644 --- a/crates/service/storyteller_web/src/http_server/endpoints/investor_demo/default_redirect.rs +++ b/crates/service/storyteller_web/src/http_server/endpoints/investor_demo/default_redirect.rs @@ -8,7 +8,7 @@ pub fn redirect_is_allowed(redirect_url: &str) -> bool { "https://create.storyteller.io" => true, "https://create.storyteller.io/" => true, "https://fakeyou.com" => true, - "https://fakeyou.com/" => true, + "https://fakeyou.com/clone" => true, "https://jungle.horse" => true, "https://jungle.horse/" => true, "https://storyteller.io" => true, diff --git a/crates/service/storyteller_web/src/http_server/endpoints/investor_demo/disable_demo_mode_handler.rs b/crates/service/storyteller_web/src/http_server/endpoints/investor_demo/disable_demo_mode_handler.rs index 7326bfedef..7d2b61c503 100644 --- a/crates/service/storyteller_web/src/http_server/endpoints/investor_demo/disable_demo_mode_handler.rs +++ b/crates/service/storyteller_web/src/http_server/endpoints/investor_demo/disable_demo_mode_handler.rs @@ -24,12 +24,13 @@ pub async fn disable_demo_mode_handler( ) -> impl Responder { let unsafe_redirect = query.redirect_to - .map(|r| r.clone()) + .as_deref() + .map(|r| r.to_string()) .unwrap_or(DEFAULT_INVESTOR_REDIRECT.to_string()); let redirect_allowed = redirect_is_allowed(&unsafe_redirect); - let safe_redirect = if redirect_allowed { + let safe_redirect_url = if redirect_allowed { unsafe_redirect } else { DEFAULT_INVESTOR_REDIRECT.to_string() @@ -44,7 +45,7 @@ pub async fn disable_demo_mode_handler( .finish(); HttpResponse::build(StatusCode::FOUND) - .append_header((header::LOCATION, url.to_string())) + .append_header((header::LOCATION, safe_redirect_url.to_string())) .del_cookie(&cookie) .finish() } diff --git a/crates/service/storyteller_web/src/http_server/endpoints/investor_demo/enable_demo_mode_handler.rs b/crates/service/storyteller_web/src/http_server/endpoints/investor_demo/enable_demo_mode_handler.rs index a93acf6a1e..8af17b3fd1 100644 --- a/crates/service/storyteller_web/src/http_server/endpoints/investor_demo/enable_demo_mode_handler.rs +++ b/crates/service/storyteller_web/src/http_server/endpoints/investor_demo/enable_demo_mode_handler.rs @@ -24,12 +24,13 @@ pub async fn enable_demo_mode_handler( ) -> impl Responder { let unsafe_redirect = query.redirect_to - .map(|r| r.clone()) + .as_deref() + .map(|r| r.to_string()) .unwrap_or(DEFAULT_INVESTOR_REDIRECT.to_string()); let redirect_allowed = redirect_is_allowed(&unsafe_redirect); - let safe_redirect = if redirect_allowed { + let safe_redirect_url = if redirect_allowed { unsafe_redirect } else { DEFAULT_INVESTOR_REDIRECT.to_string() @@ -43,7 +44,7 @@ pub async fn enable_demo_mode_handler( .finish(); HttpResponse::build(StatusCode::FOUND) - .append_header((header::LOCATION, url.to_string())) + .append_header((header::LOCATION, safe_redirect_url.to_string())) .cookie(cookie) .finish() } diff --git a/crates/service/storyteller_web/src/routes.rs b/crates/service/storyteller_web/src/routes.rs index 544b4ba020..432503075d 100644 --- a/crates/service/storyteller_web/src/routes.rs +++ b/crates/service/storyteller_web/src/routes.rs @@ -633,11 +633,11 @@ fn add_investor_demo_routes (app: App) -> App { app.service(web::scope("/demo_mode") .service(web::resource("/enable") - .route(web::post().to(enable_demo_mode_handler)) + .route(web::get().to(enable_demo_mode_handler)) .route(web::head().to(|| HttpResponse::Ok())) ) .service(web::resource("/disable") - .route(web::post().to(disable_demo_mode_handler)) + .route(web::get().to(disable_demo_mode_handler)) .route(web::head().to(|| HttpResponse::Ok())) ) ) diff --git a/crates/service/twitch_pubsub_subscriber/src/threads/twitch_pubsub_user_subscriber/event_handlers/bits_event_handler.rs b/crates/service/twitch_pubsub_subscriber/src/threads/twitch_pubsub_user_subscriber/event_handlers/bits_event_handler.rs index a8610ce6fa..ee95769659 100644 --- a/crates/service/twitch_pubsub_subscriber/src/threads/twitch_pubsub_user_subscriber/event_handlers/bits_event_handler.rs +++ b/crates/service/twitch_pubsub_subscriber/src/threads/twitch_pubsub_user_subscriber/event_handlers/bits_event_handler.rs @@ -124,6 +124,8 @@ impl BitsEventHandler { .await?; } } + EventResponse::TtsCommandPresets { .. } => {} // TODO + EventResponse::TtsCommandCustom { .. } => {} // TODO } Ok(()) diff --git a/crates/service/twitch_pubsub_subscriber/src/threads/twitch_pubsub_user_subscriber/event_handlers/channel_points_event_handler.rs b/crates/service/twitch_pubsub_subscriber/src/threads/twitch_pubsub_user_subscriber/event_handlers/channel_points_event_handler.rs index 4abe29a971..aafa50bddf 100644 --- a/crates/service/twitch_pubsub_subscriber/src/threads/twitch_pubsub_user_subscriber/event_handlers/channel_points_event_handler.rs +++ b/crates/service/twitch_pubsub_subscriber/src/threads/twitch_pubsub_user_subscriber/event_handlers/channel_points_event_handler.rs @@ -133,6 +133,8 @@ impl ChannelPointsEventHandler { .await?; } } + EventResponse::TtsCommandPresets { .. } => {} // TODO + EventResponse::TtsCommandCustom { .. } => {} // TODO } Ok(())