From 720f3d8f7515d8cd20a9cd73086bd6c1ab857651 Mon Sep 17 00:00:00 2001 From: phoenix Date: Sun, 21 Jun 2026 17:57:02 -0400 Subject: [PATCH] Adding function to load twilio config --- src/config/auxiliary/mod.rs | 23 +++++++++++++++++++++++ src/envy/environment.rs | 2 ++ 2 files changed, 25 insertions(+) diff --git a/src/config/auxiliary/mod.rs b/src/config/auxiliary/mod.rs index 5a54aea..069c381 100644 --- a/src/config/auxiliary/mod.rs +++ b/src/config/auxiliary/mod.rs @@ -19,3 +19,26 @@ impl TwilioConfig { println!("Number: {:?}", self.phone_number); } } + +// TODO: Remove the async at a later point +pub async fn load_config() -> Result { + let auth_sid_var = crate::envy::environment::get_env("TWILIO_AUTH_SID").await; + let service_sid_var = crate::envy::environment::get_env("TWILIO_SERVICE_SID").await; + let auth_token_var = crate::envy::environment::get_env("TWILIO_AUTH_TOKEN").await; + let phone_number_var = crate::envy::environment::get_env("TWILIO_PHONE_NUMBER").await; + + if auth_sid_var.value.is_empty() + || service_sid_var.value.is_empty() + || auth_token_var.value.is_empty() + || phone_number_var.value.is_empty() + { + Err(std::io::Error::other("Config not set")) + } else { + Ok(TwilioConfig { + service_sid: service_sid_var.value, + auth_token: auth_token_var.value, + account_sid: auth_sid_var.value, + phone_number: phone_number_var.value, + }) + } +} diff --git a/src/envy/environment.rs b/src/envy/environment.rs index b05d433..e006a6d 100644 --- a/src/envy/environment.rs +++ b/src/envy/environment.rs @@ -1,3 +1,5 @@ +// TODO: Functions does not need to be async + pub async fn get_db_url() -> crate::envy::EnvVar { dotenvy::dotenv().ok(); let key = crate::envy::keys::DB_URL;