open-lark 0.13.0

Enterprise-grade Lark/Feishu Open API SDK with comprehensive Chinese documentation and advanced error handling
Documentation
//! 群组(Group)服务
//!
//! 提供飞书群组的完整功能集,支持群组管理、群成员管理、群公告发布、
//! 会话标签页、群菜单配置等企业级群组协作能力。是团队沟通和协作的核心工具。
//!
//! # 核心功能
//!
//! ## 群组管理
//! - 👥 群组创建、编辑和删除
//! - 📋 群组信息查询和更新
//! - 🔍 群组搜索和筛选
//! - 📊 群组统计和分析
//! - ⚙️ 群组设置和配置
//!
//! ## 群成员管理
//! - 👤 群成员添加和移除
//! - 👑 群管理员权限设置
//! - 📋 群成员列表查询
//! - 🔐 成员权限管理
//! - 📊 成员活跃度统计
//!
//! ## 群公告管理
//! - 📢 群公告创建和发布
//! - 📝 公告内容编辑和更新
//! - 📅 公告定时发布
//! - 📊 公告阅读统计
//! - 🔔 公告提醒设置
//!
//! ## 会话标签页
//! - 🏷️ 群聊标签页管理
//! - 📱 自定义标签页配置
//! - 🔗 标签页跳转链接
//! - 📊 标签页使用统计
//! - 🎨 标签页外观定制
//!
//! ## 群菜单配置
//! - 🍔 群菜单创建和管理
//! - 🔗 菜单功能链接配置
//! - 🎨 菜单样式自定义
//! - 📊 菜单使用数据统计
//! - 🔧 菜单权限控制
//!
//! # 使用示例
//!
//! ```rust
//! use open_lark::prelude::*;
//!
//! let client = LarkClient::builder("app_id", "app_secret")
//!     .with_app_type(AppType::SelfBuild)
//!     .build();
//!
//! // 获取群组服务
//! let group = &client.group;
//!
//! // 创建群组
//! // let create_request = CreateGroupRequest::builder()
//! //     .name("项目讨论组")
//! //     .description("项目开发讨论群组")
//! //     .members(vec!["user1", "user2", "user3"])
//! //     .build();
//! // let new_group = group.v1.group.create(create_request, None).await?;
//!
//! // 添加群成员
//! // let add_member_request = AddGroupMemberRequest::builder()
//! //     .group_id("group_123")
//! //     .user_ids(vec!["user4", "user5"])
//! //     .build();
//! // group.v1.member.add(add_member_request, None).await?;
//!
//! // 发布群公告
//! // let announcement_request = CreateAnnouncementRequest::builder()
//! //     .group_id("group_123")
//! //     .title("重要通知")
//! //     .content("项目进度更新,请大家查看")
//! //     .build();
//! // group.v1.announcement.create(announcement_request, None).await?;
//!
//! // 配置群菜单
//! // let menu_request = SetGroupMenuRequest::builder()
//! //     .group_id("group_123")
//! //     .menu_items(vec![
//! //         MenuItem::new("项目文档", "https://docs.company.com"),
//! //         MenuItem::new("会议室预约", "https://meeting.company.com")
//! //     ])
//! //     .build();
//! // group.v1.menu.set(menu_request, None).await?;
//! ```
//!
//! # API版本
//!
//! 当前支持v1版本,提供完整的群组功能:
//! - 群组全生命周期管理
//! - 群成员权限控制
//! - 群公告发布系统
//! - 会话标签页定制
//! - 群菜单配置管理
//!
//! # 群组协作特性
//!
//! - 👥 多人实时协作
//! - 📱 跨平台同步支持
//! - 🔔 智能消息提醒
//! - 📊 群组数据分析
//! - 🔐 企业级安全控制
//!
//! # 团队管理
//!
//! - 🎯 高效的团队沟通
//! - 📋 项目协作管理
//! - 📊 团队活跃度监控
//! - 🏆 团队文化建设
//! - 📈 协作效率提升

use crate::core::config::Config;

/// 群组服务 v1 版本
pub mod v1;

/// 群组服务
///
/// 企业级群组协作的统一入口,提供群组管理、群成员管理、
/// 群公告发布、会话标签页、群菜单配置等完整的群组功能。
///
/// # 服务架构
///
/// - **v1**: 群组API v1版本,提供完整功能集
///
/// # 核心特性
///
/// - 👥 全面的群组管理功能
/// - 👑 灵活的权限控制系统
/// - 📢 专业的公告发布机制
/// - 🏷️ 个性化标签页配置
/// - 🍔 自定义群菜单系统
///
/// # 适用场景
///
/// - 团队项目协作
/// - 部门内部沟通
/// - 跨部门工作协调
/// - 企业公告发布
/// - 工作流程管理
///
/// # 最佳实践
///
/// - 合理设置群组权限
/// - 定期发布群公告
/// - 优化群菜单配置
/// - 监控群组活跃度
/// - 建立群组规范
pub struct GroupService {
    /// v1版本API服务
    pub v1: v1::V1,
}

impl GroupService {
    /// 创建新的群组服务实例
    ///
    /// # 参数
    /// - `config`: 客户端配置,包含认证信息和API设置
    ///
    /// # 返回值
    /// 配置完成的群组服务实例
    pub fn new(config: Config) -> Self {
        Self {
            v1: v1::V1::new(config),
        }
    }
}