use synapse::{
Config,
types::SimpleMessage,
};
use anyhow::Result;
use tracing::info;
#[tokio::main]
async fn main() -> Result<()> {
tracing_subscriber::fmt()
.with_max_level(tracing::Level::INFO)
.init();
info!("๐ Starting Connectivity Demo");
demo_different_config_types().await?;
info!("๐ Connectivity Demo completed!");
Ok(())
}
async fn demo_different_config_types() -> Result<()> {
let test_config = Config::for_testing();
info!("๐งช Test config created: {}", test_config.entity.local_name);
let gmail_config = Config::gmail_config(
"MyBot",
"Tool",
"mybot@gmail.com",
"app_password_here"
);
info!("๐ง Gmail config created: {}", gmail_config.entity.local_name);
let outlook_config = Config::outlook_config(
"OfficeBot",
"Service",
"officebot@outlook.com",
"password_here"
);
info!("๐ข Outlook config created: {}", outlook_config.entity.local_name);
let entity_config = Config::default_for_entity("NetworkBot", "AiModel");
info!("๐ค Entity config created: {}", entity_config.entity.local_name);
let message = SimpleMessage::new(
"ConnectivityDemo",
"NetworkTest",
"Testing connectivity configurations"
);
info!("๐ค Demo message created: {}", message.content);
info!("๐ฏ Demonstrated different configuration types for various network setups");
Ok(())
}