Restore user subcommand

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
joren
2026-04-02 01:03:57 +02:00
parent 233045510a
commit e7b855c944

View File

@@ -5,6 +5,7 @@ use tokio::sync::Mutex;
use tracing::{error, Level};
use tracing_subscriber::FmtSubscriber;
use qobuzd::api::QobuzApi;
use qobuzd::auth::QobuzAuth;
use qobuzd::config::Config;
use qobuzd::qconnect::QConnect;
@@ -33,6 +34,7 @@ enum Commands {
},
Logout,
Status,
User,
Serve,
}
@@ -94,6 +96,26 @@ async fn main() -> Result<()> {
}
}
Commands::User => {
let guard = auth.lock().await;
let token = guard.get_valid_token().await?;
drop(guard);
let api = QobuzApi::new(&config);
match api.get_user(&token).await {
Ok(user) => {
println!("User: {}", user.display_name.unwrap_or_default());
println!("Email: {}", user.email);
if let Some(sub) = &user.subscription {
println!("Subscription: {}", sub.offer);
}
}
Err(e) => {
error!("Failed: {}", e);
std::process::exit(1);
}
}
}
Commands::Serve => {
let guard = auth.lock().await;
let token = match guard.get_valid_token().await {