挑战
构建 Zoho CRM 小部件是重复且零散的:
- 每个小部件都需要自己的项目结构、清单和构建设置
- 小部件之间没有共享的实用程序或组件
- 本地开发需要手动设置 HTTPS 服务器以兼容 CRM SDK
- 为部署打包小部件涉及手动创建 ZIP 文件
- 添加新的小部件意味着复制现有项目的样板代码
我们的解决方案
我们构建了一个多小部件工作区框架,该框架包含共享实用程序、自动化脚手架、本地 HTTPS 开发服务器和一键式构建打包。
架构
- 小部件应用:在共享工作区中组织的独立小部件源
- 共享实用程序:所有小部件均可访问的通用代码
- 开发服务器:带有自签名证书的 HTTPS 服务器,用于本地 CRM SDK 测试
- 构建系统:用于每个小部件 ZIP 打包的自动化脚本
- 脚手架:用于从模板生成新的小部件样板代码的 CLI 工具
- 清单:用于所有小部件声明的集中式清单
开发工作流程
- 搭建脚手架 — 运行脚手架工具,生成包含所有样板代码的新小部件
- 开发 — 使用 HTTPS 开发服务器编辑小部件 HTML/JS,用于在 CRM 沙箱中进行实时测试
- 测试 — 小部件通过 Zoho Embedded App SDK 在 CRM 沙箱中加载
- 构建 — 打包脚本创建一个可部署的 ZIP 工件
- 部署 — 将 ZIP 文件上传到 Zoho CRM Extension 管道
小部件功能
该框架用于构建嵌入在各种 CRM 模块中的小部件,包括:
- 用于触发操作的按钮小部件(发送模板、启动工作流)
- 数据显示小部件,以手风琴/列表 UI 形式显示相关记录
- 连接 CRM 与外部微服务的集成小部件
- 具有查询功能的小部件,用于交叉引用 CRM 记录
主要功能
- 多小部件工作区 — 所有小部件都在一个具有共享依赖项的单一项目中
- 自动化脚手架 — 通过一个命令从模板生成新小部件
- HTTPS 开发服务器 — 本地测试并兼容 CRM SDK
- 一键构建 — 每个小部件的自动化 ZIP 打包
- 共享代码 — 所有小部件可用的通用实用程序
- i18n 支持 — 多语言小部件的国际化集成
- 集中式清单 — 所有小部件元数据的单一配置
成果
技术栈
常见问题
MicrocosmWorks 创建了一个可重用的小部件开发框架,该框架提供共享认证、数据获取、状态管理和 UI 组件,因此新的 Zoho CRM 小部件可以在数天而非数周内构建完成。如果没有框架,每个小部件都将独立开发,存在重复的样板代码、不一致的错误处理和差异化的用户界面,随着您的小部件组合增长到三四个工具以上,这将成为一个维护负担。
MicrocosmWorks 在框架内构建了一个集中式认证模块,该模块处理 Zoho CRM SDK 初始化、OAuth 令牌管理以及带有自动重试和错误处理功能的 API 调用封装。小组件开发者只需导入该认证模块并调用类型化的 API 方法,无需处理令牌刷新、连接范围界定或 Zoho CRM 嵌入式小组件环境引入的各种认证边缘情况。
是的,MicrocosmWorks 设计此框架时采用了模块无关的数据适配器,用于规范化跨不同 CRM 模块的字段访问,因此单个微件代码库可以在 Leads、Contacts、Deals 或自定义模块的详细信息页面中渲染,并带有适当的字段映射。该框架会检测它正在哪个模块上下文中运行,并自动调整其数据查询和显示逻辑,通过配置层而不是代码更改来实现。
MicrocosmWorks 实施了一个 CI/CD 管道,用于构建、测试和打包作为 Zoho CRM 扩展的小部件,并为开发、预生产和生产 Zoho 实例提供了特定于环境的配置。该框架包含一个版本控制系统,允许在发布期间多个小部件版本共存,并且管理员可以通过框架管理界面中的一个简单开关,控制每个用户组的活动版本。
MicrocosmWorks 以 $15-$35/小时的费率构建 Zoho CRM 小部件框架,初始框架投资通常相当于构建 2-3 个独立小部件的成本。从第四个小部件开始,该框架即可收回成本,因为每个后续小部件都利用了共享基础设施,并且与从零开始构建相比,开发时间减少了 60-70%,从而显著降低了扩展您的 CRM 功能的持续成本。
