Compare commits
1 Commits
main
...
feature/us
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e7b855c944 |
22
src/main.rs
22
src/main.rs
@@ -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 {
|
||||
|
||||
Reference in New Issue
Block a user