美洽怎么设置访客端聊天窗口离线使用功能?
美洽访客端可通过“后台开启离线留言 + 在前端/移动端配合离线缓存”两步实现离线使用体验:在管理后台打开访客端的离线留言开关,配置必填字段、自动回复与通知;对网站或 App,按需在前端保存访客未发出的输入(localStorage/IndexedDB 或 SDK 的本地缓存),网络恢复时调用美洽发送接口提交留言或消息。下面我会把概念讲清、一步步操作写明,并补上测试、处理和优化建议,帮助你稳妥落地。

先把概念弄清楚:离线留言和离线缓存到底是什么?
简单说,访客端的“离线使用”通常包含两件事,别把它们混成一团:
- 离线留言(后台功能):当客服不在线或访客暂时无法即时对话时,访客可以填写一份留言表单(姓名、联系方式、问题描述等),提交后系统把这条留言保存为消息/工单并触发通知(邮件、短信或工作台提醒)。这是美洽控制台里能直接打开和配置的功能。
- 离线缓存(前端/客户端手段):访客在没有网络或短暂断开时仍能输入内容,系统把这些未发送的内容临时保存在本地(localStorage、IndexedDB 或 App 的本地数据库),待网络恢复再自动提交。这个行为通常需要前端或移动端配合实现;有些 SDK 会提供相关能力,但也常由开发者按需实现。
两者配合,才是真正的“访客端离线使用”:既能让访客随时留下信息,也能保证本地输入不会丢失并在恢复网络后被发送。
准备工作(在动手前先准备这些)
- 有管理权限的美洽账号,能进入产品后台配置访客端/消息设置。
- 网站或 App 的前端开发权限,能在页面/应用中集成或调整美洽的代码或 SDK。
- 确定要收集的字段(如姓名、手机号、邮箱、工单分类等)以及通知方式(邮件、应用推送、Webhook 等)。
- 制定隐私与数据保留策略,确认收集信息的合法性与告知方式(特别涉及手机号或敏感信息)。
场景一:在美洽后台开启并配置“离线留言”
这是最快能实现离线体验的部分:当客服不在线或访客主动选择留言时,访客能提交一份表单。按步骤来:
步骤 1:登录管理后台并进入访客端/会话窗口设置
用有权限的账号登录美洽管理后台,查找“会话窗口/访客端/渠道设置/小程序或网页客服”之类的菜单(不同版本表述可能略有差异)。目标是找到与访客侧聊天窗口、留言表单相关的设置项。
步骤 2:开启“离线留言”开关
在访客端设置里,通常会有“离线留言”或“访客不在线时显示留言表单”的选项,打开它。常见可以设置:
- 是否展示留言表单(开启/关闭)。
- 留言表单字段(姓名、联系方式、问题描述、附件等)。
- 字段是否必填(例如联系方式至少需要一个:手机号或邮箱)。
- 是否把留言转为工单或工单池(便于后续跟进)。
步骤 3:配置自动回复与通知
当访客提交离线留言,你通常希望做到两件事:一是让访客看到一个确认的自动回复,二是让内部及时收到通知。
- 自动回复模板:设置留言提交成功后的提示语,建议包含工单编号、预计响应时间和联系方式。
- 通知规则:选择把离线留言推送到哪些团队或个人(邮箱、工单系统、Webhook、内部消息推送等)。
步骤 4:字段与数据映射
把表单字段映射到你的 CRM 或用户资料字段,方便后续检索与自动化。例如把“手机号”映射到客户标签,把“问题类型”映射到工单分类。
步骤 5:保存并预览
保存设置后,务必用“访客身份”在网站或演示页面上验证:把客服设为离线,打开页面,确认留言表单出现并可填写、提交;确认后台能看到留言记录和通知。
场景二:网站/移动端离线缓存(让访客输入不会丢失)
后台的离线留言能让访客在没客服时留信息,但如果访客在没有网络或页面意外关闭时输入,输入内容会丢失。这就是前端离线缓存要解决的。
实现思路(通用、安全、可靠)
原理很简单:输入行为先写到本地存储,等到能连上网络再把它发送到美洽后台。关键点在于什么时候保存、如何持久化、如何重试和如何去重。
具体实现建议
- 何时保存:在访客在留言框输入时,使用节流(throttle)或防抖(debounce)周期性保存内容,例如每隔 2-5 秒或在输入停止后保存一次。
- 保存位置:在 Web 上优先用 IndexedDB(结构化、稳定),备选 localStorage(简单但容量小)。在移动 App 上用本地数据库或 key-value 存储。
- 数据格式:存储 JSON,包含:内容、时间戳、页面标识、会话id(如已存在)、附件引用(如果可选)和一个本地唯一 id(例如 UUID)。
- 网络恢复逻辑:监听 online 事件或定时检测网络;恢复后按顺序读出本地未发送项,通过美洽 SDK 或 API 发出;成功后标记为已发送并清除本地存储。
- 重试与幂等:请求要支持重试策略(指数退避),并保证幂等性,避免同一条留言被重复入库。可在发送请求时带上本地唯一 id,后台检查并去重。
- 附件处理:附件体积大,建议先上传到你的 CDN 或临时存储,记录文件链接,然后把链接作为留言内容的一部分缓存与发送。
和美洽 SDK 的协作
美洽提供 Web 与移动端 SDK 来接入对话功能。实践中你可以:
- 先把访客输入保存在本地,网络恢复时调用美洽的消息发送接口(SDK 或 REST API)提交留言。
- 如果 SDK 自带离线能力(查看 SDK 文档),优先采用 SDK 内建机制;否则用自实现的缓存转发方案。
关键配置项一览(建议表)
| 配置项 | 说明 | 建议值/说明 |
| 离线留言开关 | 开启后访客在客服不在线时可填写表单 | 开启 |
| 必填字段 | 决定哪些字段为必填(联系方式通常至少一项) | 姓名、联系方式至少一项、问题描述必填 |
| 自动回复模板 | 留言提交后访客看到的提示 | 包含工单编号和预期响应时间 |
| 通知方式 | 内部接收离线留言的渠道(邮件/工单/Webhook) | 邮件 + 工单 + Webhook(便于集成) |
| 本地缓存策略 | 前端如何保存未发送内容 | IndexedDB(Web)/本地 DB(App),并设置定期清理 |
| 幂等标识 | 防止重复发送 | 每条消息带 UUID |
测试与验证(如何确保一切如你所想)
别只看页面能提交,细致的测试能避免后续问题:
- 离线场景测试:把浏览器/设备切换到离线模式,输入留言并提交,查看表单是否能提交到本地缓存或是否有提交失败提示;恢复网络后检查留言是否成功到达后台。
- 客服不在线测试:在管理后台把所有客服设为离线或设置免打扰,访问访客端确认是否展示留言表单并能提交,后台是否收到并触发通知。
- 重复/幂等测试:在弱网络或短时间内触发多次发送,确认后台不会产生重复工单(使用幂等 ID 验证)。
- 附件测试:尝试上传图片/文件并在断网/恢复网络时验证是否能正常提交和显示。
- 跨设备测试:在同一账号下,用不同设备或浏览器打开会话,验证留言是否同步、是否被覆盖。
常见问题与排查思路
列几个常遇到的坑和处理办法,方便现场调试时少走弯路:
- 访客提交后后台没收到:先检查是否只是没触发通知,还是根本没入库。看前端是否返回成功响应或是否在本地留下未发送项;看后端日志或工单列表。
- 重复工单:检查是否发送请求没有带幂等 ID,或发送重试时后台没有去重机制。为每条本地缓存消息生成唯一 ID。
- 附件上传失败:排查文件大小、网络超时和临时上传地址的有效期;建议先上传到 CDN 并把 URL 缓存到本地。
- 敏感信息泄露风险:确认留言表单里哪些字段能输入敏感信息,必要时隐藏或提示并加密传输与存储。
- 通知丢失:如果邮件/Webhook 没收到通知,检查通知规则是否正确、邮件是否被拦截、Webhook 是否可访问及返回码。
合规与隐私注意事项
处理访客离线留言时,往往涉及个人信息。别忽视合规:
- 收集信息前要有明确告知与同意(隐私声明、服务条款)。
- 只收集必要字段,避免不必要的敏感信息。
- 传输和存储要使用加密(HTTPS/加密存储)。
- 设置合理的数据保留期,超过期限的离线留言应当按公司策略或法规清理。
优化与体验提升建议(让访客更舒服、客服更高效)
- 表单但别太长:只保留必要字段,长表单会让访客放弃,也可分步收集信息。
- 即时提示:在访客提交后给出明确反馈(编号、预计响应时间),降低焦虑感。
- 自动分类与标签:让留言自动打标签或分类,便于分配给合适团队。
- 工单追踪入口:在自动回复中提供工单查询入口或后续联系渠道,提升信任。
- 局部保存:对长文本或多段输入做局部保存(比如分段回复),防止中断导致大量输入丢失。
- 失败回显与恢复:如果发送失败,前端应清晰提示并保留恢复入口而非直接丢弃。
示例:一个比较稳妥的实现流程(实操步骤总结)
假设你有一个商业网站,需要在访客断网或客服离线时保证信息能安全提交与后续跟进,下面是推荐的实施流程:
- 在美洽后台开启离线留言,设置表单字段(姓名、手机号/邮箱、问题描述)并启用邮件 + 工单通知。
- 前端集成美洽的网页浮窗代码,并在聊天输入框实现本地缓存:输入时每隔 3 秒保存到 IndexedDB,附带本地 UUID。
- 监听网络状态,网络恢复后读取本地未发送条目,逐条通过美洽 SDK/接口发送(请求中带 UUID),成功后标记并删除本地缓存。
- 在后台把离线留言转为工单并分配给对应团队,自动回复模板里写明工单号与预计响应时长。
- 定期清理超过保留期的本地缓存与后台留言,确保数据合规。
最后聊点不太严肃但实用的细节(开发和运营中会遇到的小问题)
- 如果访客在提交后立刻刷新,浏览器是否还能把提交放行取决于你使用的保存/提交方式;推荐在提交时做本地标记并在 unload/visibilitychange 时二次保存。
- 遇到网络抖动时,尽量让发送函数幂等并能识别重复请求;用户体验上可以显示“正在发送中,请稍候”的提示。
- 在移动端,操作系统有时会清理本地存储(尤其是缓存目录),关键数据放在更可靠的本地数据库中或配合后台做临时备份。
好啦,这些是按我自己做产品和配合开发时总结出来的实用步骤和注意点 —— 有点长,但确实是把“访客端离线使用”从后台配置、前端实现到测试与优化整个链路都讲清楚了。你可以按上面的流程一步步来,先把后台的离线留言打开并验证,再实现前端的缓存逻辑;过程中遇到具体 SDK 或接口调用问题,留个脚印我再帮你看更细的代码或错误信息,能更快定位。