2025-11-22 22:54:45 -03:00
|
|
|
// Core modules (always included)
|
2025-11-04 23:11:33 -03:00
|
|
|
pub mod basic;
|
2025-11-22 22:54:45 -03:00
|
|
|
pub mod core;
|
|
|
|
|
|
|
|
|
|
// Re-export shared from core
|
|
|
|
|
pub use core::shared;
|
|
|
|
|
|
Add .env.example with comprehensive configuration template
The commit adds a complete example environment configuration file
documenting all available settings for BotServer, including logging,
database, server, drive, LLM, Redis, email, and feature flags.
Also removes hardcoded environment variable usage throughout the
codebase, replacing them with configuration via config.csv or
appropriate defaults. This includes:
- WhatsApp, Teams, Instagram adapter configurations
- Weather API key handling
- Email and directory service configurations
- Console feature conditionally compiles monitoring code
- Improved logging configuration with library suppression
2025-11-28 13:19:03 -03:00
|
|
|
// Bootstrap progress tracking
|
|
|
|
|
#[derive(Debug, Clone)]
|
|
|
|
|
pub enum BootstrapProgress {
|
|
|
|
|
StartingBootstrap,
|
|
|
|
|
InstallingComponent(String),
|
|
|
|
|
StartingComponent(String),
|
|
|
|
|
UploadingTemplates,
|
|
|
|
|
ConnectingDatabase,
|
|
|
|
|
StartingLLM,
|
|
|
|
|
BootstrapComplete,
|
|
|
|
|
BootstrapError(String),
|
|
|
|
|
}
|
|
|
|
|
|
2025-11-22 22:54:45 -03:00
|
|
|
// Re-exports from core (always included)
|
|
|
|
|
pub use core::automation;
|
|
|
|
|
pub use core::bootstrap;
|
|
|
|
|
pub use core::bot;
|
|
|
|
|
pub use core::config;
|
|
|
|
|
pub use core::package_manager;
|
|
|
|
|
pub use core::session;
|
2025-11-23 20:12:09 -03:00
|
|
|
pub use core::ui_server;
|
2025-11-22 22:54:45 -03:00
|
|
|
|
|
|
|
|
// Feature-gated modules
|
|
|
|
|
#[cfg(feature = "attendance")]
|
|
|
|
|
pub mod attendance;
|
|
|
|
|
|
|
|
|
|
#[cfg(feature = "calendar")]
|
|
|
|
|
pub mod calendar;
|
|
|
|
|
|
|
|
|
|
#[cfg(feature = "compliance")]
|
|
|
|
|
pub mod compliance;
|
|
|
|
|
|
|
|
|
|
#[cfg(feature = "console")]
|
|
|
|
|
pub mod console;
|
|
|
|
|
|
|
|
|
|
#[cfg(feature = "desktop")]
|
|
|
|
|
pub mod desktop;
|
|
|
|
|
|
|
|
|
|
#[cfg(feature = "directory")]
|
|
|
|
|
pub mod directory;
|
|
|
|
|
|
|
|
|
|
#[cfg(feature = "drive")]
|
2025-11-22 12:26:16 -03:00
|
|
|
pub mod drive;
|
2025-11-27 23:10:43 -03:00
|
|
|
#[cfg(feature = "drive")]
|
|
|
|
|
pub use drive::drive_monitor::DriveMonitor;
|
2025-11-22 22:54:45 -03:00
|
|
|
|
2025-11-04 23:11:33 -03:00
|
|
|
#[cfg(feature = "email")]
|
|
|
|
|
pub mod email;
|
2025-11-22 22:54:45 -03:00
|
|
|
|
|
|
|
|
#[cfg(feature = "instagram")]
|
|
|
|
|
pub mod instagram;
|
|
|
|
|
|
|
|
|
|
#[cfg(feature = "llm")]
|
2025-11-04 23:11:33 -03:00
|
|
|
pub mod llm;
|
2025-11-27 23:10:43 -03:00
|
|
|
#[cfg(feature = "llm")]
|
|
|
|
|
pub use llm::cache::{CacheConfig, CachedLLMProvider, CachedResponse, LocalEmbeddingService};
|
2025-11-22 22:54:45 -03:00
|
|
|
|
|
|
|
|
#[cfg(feature = "meet")]
|
2025-11-04 23:11:33 -03:00
|
|
|
pub mod meet;
|
2025-11-22 22:54:45 -03:00
|
|
|
|
|
|
|
|
#[cfg(feature = "msteams")]
|
|
|
|
|
pub mod msteams;
|
|
|
|
|
|
|
|
|
|
#[cfg(feature = "nvidia")]
|
2025-11-22 12:26:16 -03:00
|
|
|
pub mod nvidia;
|
2025-11-22 22:54:45 -03:00
|
|
|
|
|
|
|
|
#[cfg(feature = "tasks")]
|
|
|
|
|
pub mod tasks;
|
2025-11-27 23:10:43 -03:00
|
|
|
pub use tasks::TaskEngine;
|
2025-11-22 22:54:45 -03:00
|
|
|
|
|
|
|
|
#[cfg(feature = "vectordb")]
|
2025-11-27 23:10:43 -03:00
|
|
|
#[path = "vector-db/mod.rs"]
|
2025-11-22 22:54:45 -03:00
|
|
|
pub mod vector_db;
|
|
|
|
|
|
|
|
|
|
#[cfg(feature = "weba")]
|
|
|
|
|
pub mod weba;
|
|
|
|
|
|
|
|
|
|
#[cfg(feature = "whatsapp")]
|
|
|
|
|
pub mod whatsapp;
|