很多企业想做“来电弹屏”,但真正上线以后才发现:同一个号码可能属于联系人、公司前台、分机转接,甚至数据库里根本没有。voip_crm 解决的不是弹一个窗口,而是把电话事件映射到 CRM 语境里。
主要参考:
enterprise/voip_crm/models/voip_call.pyenterprise/voip_crm/models/res_partner.pyenterprise/voip_crm/tests/test_voip_call.py
一、电话事件先要找到“这是谁”
号码进入系统后,源码会尝试关联 partner,并基于 partner 再去看相关 opportunity。也就是说,来电弹屏不是一个 UI 动画,而是一条解析链:号码 → partner → CRM 上下文。前两步错了,第三步展示得再漂亮也没有意义。
二、CRM 里显示什么,不只是查到一个联系人
res_partner.py 会补机会数量、相关统计等辅助信息。因为销售接电话时,真正想知道的往往不是“这个号码是否存在”,而是“这个客户现在有没有在谈机会、之前谁在跟、要不要直接跳过去”。
三、测试覆盖的是匹配与权限,不只是通话记录
test_voip_call.py 会验证号码解析、关联记录以及动作返回。真实项目里常见的问题其实是:A 业务员看到 B 业务员的机会是否合理、一个公司下多个联系人来电时跳哪个对象、没有 partner 时系统要给什么兜底入口。测试思路能直接反映这些边界。
四、最常见误解
- 来电弹屏不等于 CTI 接通。 接通只是通信层,CRM 关心的是业务上下文。
- 只要有 partner 就够了。 对销售来说,更关键的是能不能进一步落到合适的商机。
- 号码匹配失败就是模块没用。 恰恰相反,失败时怎么创建线索或提示用户,才体现系统设计成熟度。
五、实战建议
- 上线前先治理电话号码格式,至少国家码与分机规则要统一。
- 明确无匹配号码的处理策略:新建线索、记通话日志,还是仅显示拨号面板。
- 把“来电弹屏”培训成销售流程入口,而不是客服炫技功能。
六、结论
电话场景最怕没有上下文。voip_crm 的价值,在于让一通电话不仅能接起来,还能接到正确的客户和正确的机会链路上。
DISCUSSION
评论区