开发指南组织级基础能力
概览与调用约定
在百积木平台应用、模块、智能体与工作流中使用组织、身份、通讯录、渠道消息和人工事项等共同能力。
组织级基础能力为业务应用提供工作区内共同使用的人员、角色、联系方式、渠道会话和人工协作能力。 本章属于「百积木平台开发」,面向平台应用、模块、智能体和工作流的开发者;日常界面操作见 工作区工作台和工作区管理台。
按业务目标选择能力
| 要完成的工作 | 开发入口 |
|---|---|
| 找到同事、部门或某个业务角色的成员 | 组织、成员与角色 |
| 区分执行用户、接收人和外部账号,建立正确的调用权限 | 身份映射与权限 |
| 查询同事可用的联系方式或已绑定群聊 | 通讯录与联系方式 |
| 给确定的企微私聊发消息,或把结果发回原渠道 | 渠道与会话消息 |
| 区分消息投递、通知记录、已读与重试 | 通知与投递 |
| 分配待办、接收人工结果并推进流程 | 事项与人工协作 |
例如“报告生成后请同事确认”涉及:生成报告 → 确定接收人 → 创建人工事项 → 消息触达 → 提交人工结果 → 流程继续。 渠道消息负责触达;消息发送成功不会自动创建事项,也不代表对方已经处理。
先发现合同,再编写调用
组织级基础能力不是一个额外的安装资源类型。公开能力由对应 Bundle 中的 Module、角色、权限和事项定义等资源提供。 每个工作区实际安装的版本和可调用方法可能不同;服务展示名只能用于定位,准确身份和参数以目标 Runtime 为准。
- 确认工作区、运行时以及已安装的来源 Bundle。
- 按单个 Bundle 查询服务,取得目标服务的
businessId和 Module 身份。 - 读取服务和目标方法的
methodDefinition,核对参数类型、必填项、返回值和调用权限。 - 声明业务 Bundle 依赖以及调用入口所需的方法授权,再编写调用。
- 先验证只读查询,再向明确授权的测试接收人执行写入或发送;回查业务结果。
CLI 的精确命令以本机分级帮助为准。以下占位值必须替换为目录返回值:
baijimu runtime services list --help
baijimu runtime service get --help
baijimu runtime service call --help
baijimu bundle list --workspace-id <WORKSPACE_ID> --json
baijimu runtime services list --workspace-id <WORKSPACE_ID> \
--environment-key <SOURCE_ENVIRONMENT_KEY> --bundle-id <BUNDLE_ID> --json
baijimu runtime service get --workspace-id <WORKSPACE_ID> <BUSINESS_ID> --json
baijimu runtime service get --workspace-id <WORKSPACE_ID> <BUSINESS_ID> \
--method <METHOD_NAME> --json本章展示已核对的公开方法及常用调用形状,不固定客户工作区、Runtime 服务 ID、模块版本或渠道实例。 方法缺失时先检查 Bundle 安装和版本,不改用内部接口。
不同入口怎样调用
| 调用入口 | 引用与授权方式 |
|---|---|
| 平台应用 | 声明允许调用的 Module 方法,由应用 SDK 调用;见成员列表完整示例。 |
| 工作流 | 使用 module_method,以目录返回的 module: {bundleId, moduleId} 引用资源,业务参数放在 params;见工作流。 |
| 模块后端 | 使用已绑定的 ServiceReference;见模块服务间调用。 |
| Agent 或 CLI | 先查询当前服务和方法定义,再按入口授权调用;CLI 业务参数放入 --params。 |
工作流中的 Module 作者身份与 Runtime 查询得到的 businessId 用途不同,不能互换。业务依赖必须位于当前 Bundle 的源清单或显式依赖闭包内。
工作流、事件和定时器的定义继续使用原有教程,本章只解释它们与组织能力的组合方式。