Debug qobuz pas encore parfait mais mieux
This commit is contained in:
@@ -127,13 +127,16 @@ impl SourcesExt for Server {
|
||||
|
||||
tracing::info!("Initializing Qobuz source...");
|
||||
|
||||
// Obtenir l'URL de base du serveur
|
||||
let base_url = self.base_url();
|
||||
|
||||
// Créer le client depuis la config
|
||||
let client = QobuzClient::from_config()
|
||||
.await
|
||||
.map_err(|e| SourceInitError::QobuzError(format!("Failed to create client: {}", e)))?;
|
||||
|
||||
// Créer la source depuis le registry
|
||||
let source = QobuzSource::from_registry(client)
|
||||
let source = QobuzSource::from_registry(client, base_url)
|
||||
.map_err(|e| SourceInitError::QobuzError(format!("Failed to create source: {}", e)))?;
|
||||
|
||||
// Enregistrer la source
|
||||
@@ -154,13 +157,16 @@ impl SourcesExt for Server {
|
||||
|
||||
tracing::info!("Initializing Qobuz source with explicit credentials...");
|
||||
|
||||
// Obtenir l'URL de base du serveur
|
||||
let base_url = self.base_url();
|
||||
|
||||
// Créer le client avec credentials
|
||||
let client = QobuzClient::new(username, password)
|
||||
.await
|
||||
.map_err(|e| SourceInitError::QobuzError(format!("Failed to authenticate: {}", e)))?;
|
||||
|
||||
// Créer la source depuis le registry
|
||||
let source = QobuzSource::from_registry(client)
|
||||
let source = QobuzSource::from_registry(client, base_url)
|
||||
.map_err(|e| SourceInitError::QobuzError(format!("Failed to create source: {}", e)))?;
|
||||
|
||||
// Enregistrer la source
|
||||
|
||||
@@ -26,6 +26,9 @@ pub struct QobuzCredentials {
|
||||
pub username: Option<String>,
|
||||
/// Mot de passe Qobuz (optionnel, lu depuis la config si absent)
|
||||
pub password: Option<String>,
|
||||
/// URL de base du serveur (optionnelle, "http://localhost:8080" par défaut)
|
||||
#[serde(default)]
|
||||
pub base_url: Option<String>,
|
||||
}
|
||||
|
||||
/// Paramètres pour Radio Paradise
|
||||
@@ -75,6 +78,11 @@ async fn register_qobuz(Json(creds): Json<QobuzCredentials>) -> impl IntoRespons
|
||||
use pmoqobuz::{QobuzClient, QobuzSource};
|
||||
use pmosource::api::register_source;
|
||||
|
||||
// Utiliser l'URL de base depuis les params ou une valeur par défaut
|
||||
let base_url = creds
|
||||
.base_url
|
||||
.unwrap_or_else(|| "http://localhost:8080".to_string());
|
||||
|
||||
// Créer le client selon les credentials fournis
|
||||
let client_result = if let (Some(username), Some(password)) = (creds.username, creds.password) {
|
||||
QobuzClient::new(&username, &password).await
|
||||
@@ -96,7 +104,7 @@ async fn register_qobuz(Json(creds): Json<QobuzCredentials>) -> impl IntoRespons
|
||||
};
|
||||
|
||||
// Créer et enregistrer la source depuis le registry
|
||||
let source = match QobuzSource::from_registry(client) {
|
||||
let source = match QobuzSource::from_registry(client, base_url) {
|
||||
Ok(s) => Arc::new(s),
|
||||
Err(e) => {
|
||||
return (
|
||||
|
||||
Reference in New Issue
Block a user