# 结束、重新打开、延后、置顶和静音对话

把对话从日常视图里清出去但不丢失它，把它停放到以后处理，或者让它一直留在列表最上面。

## 快速上手

1. 打开 **Inbox**，点开一个对话。所有者、管理员和客服可以结束和延后对话。
2. 处理完之后，在头部点 **结束**。结束操作可能会给客户发消息。
3. 想先停放的话，打开头部的 **更多操作** → **延后** → **1 小时**。
4. 之后可以在视图栏的 **已结束** 或 **已延后** 里找到它。
5. 在头部点 **重新打开**，就能把已结束的对话放回 **进行中**。

## 注意

- 已结束的对话不会自己重新打开。客户下一条消息会开启一个新对话。
- 结束操作可能会触达客户：开启满意度调查时会发送调查，也会启动任何以「对话结束」为触发条件的工作流。

## 在哪里找到它

**Inbox** → 打开一个对话 → 头部的 **结束** 或 **重新打开**，以及 **更多操作** 下的 **延后**。列表行的 **对话操作** 菜单里有 **结束对话**、**延后对话**、**置顶对话**、**静音通知** 和 **标记为未读**。在应用里：长按列表行可以打开同一个操作面板，或者在对话头部操作。

## 开始之前

- **所有者**、**管理员** 或 **客服** 可以结束、重新打开和延后对话。**只读成员** 不能。
- 置顶和静音是个人操作，不需要任何权限 —— **只读成员** 也可以使用这两项。
- 不需要提前设置任何东西。这些操作在任何对话上都能用。

## 字段

| 字段 | 含义 | 默认值 | 限制 |
| --- | --- | --- | --- |
| 结束 / 重新打开 | 把对话移出 **进行中**，或者放回去。 | — | 如果联系人在这个渠道上已经有一个更新的进行中对话，重新打开会被拒绝。 |
| 延后 | 把对话停放到你选的时间：**1 小时**、**今晚**、**明天上午 9 点**，或者 **自定义（MYT）**。 | — | 最早一分钟后，最晚不超过一年。客户一发消息就会提前结束延后。 |
| 置顶对话 | 让对话浮动到每个列表的最上面，只对你生效。 | 关闭 | — |
| 静音通知 | 为你静音这个对话的通知：**8 小时**、**1 周** 或 **始终**。 | 关闭 | 只对你生效。不会隐藏对话，也不会阻止 AI 或工作流继续运行。 |
| 标记为未读 | 为你把对话放回 **未读**。 | — | 仅个人生效。你同事的列表不会改变。 |

## 它如何运作

- 结束会把结束时间写入对话，加上一条 **{name} closed the conversation**，列表行会显示 **对话已结束**。
- 已结束的对话会立刻离开 **进行中**，但仍然可以在 **已结束** 和 **全部** 里找到。
- 结束还会为你把对话标记为已读，这样它就不会一直占着你不会去看的那个视图的未读角标。
- 结束会启动任何以「对话结束」为触发条件的工作流，并在开启满意度调查时发送调查。这个开关在 **Settings → Conversations** 里。
- **重新打开** 会把对话放回 **进行中**，并清除它的结束时间。同时会加上一条 **{name} reopened the conversation**。
- 延后只是设定一个时间，不会改变状态：延后中的对话仍然是进行中的，只是暂时休息。
- 在休息期间，它会被排除在 **进行中**、**等待中**、**我的** 和其他日常视图之外。它会出现在 **已延后** 里；有任务到期时也会出现在 **待处理** 里；如果你把它标成未读，也会出现在 **未读** 里。
- 延后菜单提供 **1 小时**、**今晚** 和 **明天上午 9 点**，以及带 **延后至该时间** 的 **自定义（MYT）**。
- **取消延后** 会在对话进入休息状态后出现在同一个菜单里，点击就能立刻把它找回来。
- 应用提供同样的三个预设，以及一个不同的自定义选择器：**日期**、**时间（MYT）**，配 **今天**、**明天**、**提前一小时** 和 **推后一小时**。
- **置顶对话** 会让对话浮动到每个列表的最上面。这只对你生效，最近置顶的排在最上面。
- **静音通知** 提供 **8 小时**、**1 周** 或 **始终**。它只为你静音这个对话，列表行上会显示一个静音标记。
- **标记为未读** 会为你把对话放回 **未读**。你同事的列表不会改变。
- 标记未读会保留你上次查看的记录；正是这个标记让角标重新出现。
- 手机上的操作面板带有同样的操作，外加 **添加到列表**；在列表行上滑动可以直接标记未读，不用打开面板。

## 它在什么时候会失败

- **无法结束此对话。** 和 **无法重新打开此对话。** —— 状态没有改变。
- **This contact already has an open conversation on this channel** —— 重新打开会被拒绝，因为同一个人已经有一个更新的进行中对话。请去那个对话里回复，或者先结束它。
- **You don't have permission to change this conversation.** —— 你是只读成员，或者不是这个工作区的成员。
- **无法延后此对话。** 和 **无法取消延后此对话。** —— 计时没有改变。
- **请选择未来的时间。** —— 自定义的延后时间已经过去了。
- **Snooze time must be in the future.** 和 **Snooze can't be more than a year out.** 是服务器自己对自定义时间设的限制。
- **Could not mark as unread.** —— 标记没有设置成功，对话保持原样。
- **该操作未能完成。** 是列表行菜单的通用失败提示；什么都没有改变。

## 它不会做什么

- 结束不会删除任何东西。每条消息都会保留，对话仍然能在 **已结束**、**全部** 里找到，也能通过搜索找到。
- 结束不会屏蔽客户，也不会停止正在这个对话上运行的工作流。
- 已结束的对话不会自己重新打开。客户再次发消息时，会开启一个新对话 —— 它会把之前的消息显示在新消息上方，所以历史看起来还是同一个对话。
- 延后不会告诉客户任何事情，也不会阻止他们发消息。客户一发消息，延后就会结束，对话会立刻回来。
- 置顶和静音都只属于你。其他人的列表不会改变，也没有人能看到你置顶或静音过某个对话。
- 静音只会让通知安静下来。它不会隐藏对话，也不会阻止 AI 或工作流继续回复。
- **标记为未读** 同样是个人性质的。它不会把对话放回其他任何人的队列里。
- 在这些操作里，只有结束、重新打开和标记未读可以一次对多个对话操作。

## 最佳做法

- 客户的问题解决了就结束，而不是看这一行看烦了就结束。**已结束** 是已完成工作的记录。
- 用延后，而不是留着一个进行中的对话来提醒自己。**已延后** 会让它离开所有人的队列，直到真正到期。
- 遇到「我看过了但现在处理不了」的情况，用 **标记为未读** —— 它会让对话留在队列里，但不会隐藏它。
- 把整天都在处理的两三个对话置顶，结束后就取消置顶。置顶列表太长就失去了提醒的作用。
- 同事正在处理的对话，静音就好，不要直接结束它。结束也会把它从他们的日常视图里移走。

## 使用场景

- Sarah Chen 的订单已送达并确认：结束这个对话。
- Michael Torres 说明天早上付款：延后到 **明天上午 9 点**。
- 一批客户都在等同一个供应商：把这些对话置顶，直到货到。
- 你在手机上看完一条很长的投诉，想留到电脑前再处理：标记为未读。
- 同事在处理一个你也在里面的吵闹对话：静音 **8 小时**。

## 常见问题与排查

### 客户再次发消息时，已结束的对话会重新打开吗？

不会。会为他们的新消息开启一个新对话，旧对话保持结束状态。对话还是会把之前的消息显示在新消息上方，所以看起来不会丢失任何内容。

### 我点了重新打开，但被拒绝了。

这种情况发生在客户在同一个渠道上已经有一个更新的进行中对话时。同一时间只能有一个是进行中的，所以请到更新的那个对话里回复，或者先结束它。

### 结束会删除对话吗？

不会。它只是把对话移出 **进行中**。每条消息都会保留，对话仍然在 **已结束**、**全部** 里，也能通过搜索找到。

### 延后和结束有什么区别？

结束表示工作已经完成。延后表示工作还没完成，但也还没到要处理的时候 —— 对话会在你设定的时间自动回来，客户提前发消息的话会更早回来。

### 我的同事会看到我置顶或静音了某个对话吗？

不会。这两项都只属于你。他们的列表和通知都不会改变。

### 静音会阻止 AI 回复吗？

不会。静音只会让你自己的通知安静下来。AI 会不会回复，取决于对话顶部的归属控件。

## 相关文章

- [找到你要的对话](https://inchat.inseller.my/help/zh/inbox/find-a-conversation)
- [Act on many conversations at once](https://inchat.inseller.my/help/inbox/bulk-actions-in-the-inbox)
- [分配对话、路由给团队、添加协作者](https://inchat.inseller.my/help/zh/inbox/assign-route-and-collaborate)
- [从 AI 手里接管，再交还回去](https://inchat.inseller.my/help/zh/inbox/take-over-from-the-ai)
- [Run a workflow on this conversation](https://inchat.inseller.my/help/inbox/run-a-workflow-on-a-conversation)

---

Source files: `src/lib/inbox/row-actions.ts`, `src/components/inbox/ConversationRowMenu.tsx`, `src/components/inbox/SnoozeMenu.tsx`, `src/components/inbox/ThreadHeader.tsx`, `src/app/(app)/inbox/[id]/conversation-actions.ts`, `src/app/(app)/inbox/[id]/pin-star-hide-actions.ts`, `src/app/(app)/inbox/[id]/thread-actions.ts`, `src/lib/inbox/snooze-presets.ts`, `src/lib/inbox/unread-queue.ts`, `src/lib/conversations/upsert.ts`, `src/components/inbox/views.ts`, `src/lib/push/notify.ts`, `src/lib/i18n/messages/inbox-list.ts`, `src/lib/i18n/messages/inbox-thread.ts`, `mobile/src/components/inbox/RowActionSheet.tsx`, `mobile/src/lib/inbox/conversation-actions.ts`, `mobile/src/lib/i18n/en.ts`
