Skip to main content

openlark_analytics/
lib.rs

1//! # OpenLark 数据分析模块
2//!
3//! OpenLark SDK 的数据分析模块,提供飞书数据分析和搜索相关 API 的完整访问。
4//!
5//! ## 功能特性
6//!
7//! - **搜索服务**: 全文搜索、智能搜索、内容检索
8//! - **数据分析**: 数据报表、统计分析、趋势分析
9//!
10//! ## 模块组织
11//!
12//! 本模块按业务域(bizTag)组织:
13//! - `search` - 搜索服务相关 API (14 APIs)
14//!
15//! ## 使用示例
16//!
17//! ```rust,no_run
18//! use openlark_analytics::AnalyticsService;
19//! use openlark_core::prelude::Config;
20//!
21//! # async fn example() -> Result<(), Box<dyn std::error::Error>> {
22//! // 使用 builder 模式创建配置
23//! let config = Config::builder()
24//!     .app_id("app_id")
25//!     .app_secret("app_secret")
26//!     .build();
27//!
28//! let analytics_service = AnalyticsService::new(config)?;
29//!
30//! // 获取搜索服务入口(当前 query/user 子路径会显式返回未接线错误)
31//! # #[cfg(all(feature = "search", feature = "v1"))]
32//! let _search_v2 = analytics_service.search().v2();
33//! # Ok(())
34//! # }
35//! ```
36
37#![allow(clippy::module_inception)]
38#![allow(missing_docs)]
39
40mod service;
41
42// 通用模块
43pub mod common;
44
45// 业务域模块
46#[cfg(feature = "search")]
47pub mod search;
48
49// Prelude 模块
50pub mod prelude;
51
52// 重新导出核心服务
53pub use service::AnalyticsService;
54
55// 配置类型
56pub use openlark_core::config::Config;
57
58/// 数据分析模块版本信息
59pub const VERSION: &str = env!("CARGO_PKG_VERSION");
60
61/// 数据分析服务配置别名
62pub type AnalyticsConfig = Config;
63
64#[cfg(test)]
65#[allow(unused_imports)]
66mod tests {
67    use super::*;
68
69    #[test]
70    fn test_version() {
71        assert_ne!(VERSION, "");
72    }
73
74    #[test]
75    fn test_module_composition() {
76        // 验证模块组织正确
77        assert_eq!(VERSION, env!("CARGO_PKG_VERSION"));
78    }
79}