消息线程

当前状态:Beta

消息线程用于在已有达人关系或邮件任务上下文存在时,处理 NoxInfluencer 内的沟通线程。

适合什么场景

  • 你需要查看已有消息线程
  • 你需要按 SaaS 项目、任务创建人、团队成员、合作状态或标签筛选消息中心线程
  • 你要管理某个已知线程的标签、合作状态或草稿状态
  • 你要在发送或定时前,把已确认文件附加到线程草稿
  • 你要对已有 thread_id 发送、定时或取消一条已确认回复

当前 beta 范围

  • 查看消息线程列表和详情
  • 查看与 SaaS 对齐的项目筛选和任务创建人 / 团队成员筛选选项
  • 解析某个达人 / channel 的相关项目或相关线程
  • 查看、保存和应用消息模板
  • 查看和设置标签
  • 查看和更新合作状态
  • 保存草稿正文
  • 查看、上传和删除草稿附件
  • 对一个已有线程发送、定时或取消回复

重要路由规则

message sendmessage schedule 只适用于已有 thread_id 的回复。如果你只有邮件任务 ID,先用 message list --business_kind email_task --business_id <task_id> 找到线程。如果没有线程,应对平台达人或已确认外部邮箱地址改走 邮件任务 路径。

消息附件属于线程草稿。发送或定时前先上传附件,NoxInfluencer 会在发送时带上这些草稿文件。

SaaS 对齐的列表筛选

构建消息线程筛选前,先使用筛选辅助命令:

noxinfluencer message creator-filters
noxinfluencer message project-filters --creator_uids <user_uid>
noxinfluencer message labels --page_size 20
noxinfluencer message coop-statuses

然后把返回的筛选 ID 传给 message list

noxinfluencer message list --project_ids email_task:<task_id> --creator_uids <user_uid> --coop_status 2 --label_id 12

project_ids 使用公开的 <business_kind>:<business_id> 格式,例如 email_task:1829campaign_offer:99001。不要使用上游原始 business type。

关键命令

构建草稿、发送、定时、标签或合作状态 body 前,先查看 schema:

noxinfluencer schema "message list"
noxinfluencer schema "message project-filters"
noxinfluencer schema "message creator-filters"
noxinfluencer schema "message send"
noxinfluencer schema "message attachments upload"
noxinfluencer schema "message attachments delete"
noxinfluencer schema "message labels set"

先读取线程状态:

noxinfluencer message list --business_kind email_task --business_id <task_id>
noxinfluencer message list --project_ids email_task:<task_id> --creator_uids <user_uid> --page_size 20
noxinfluencer message get <thread_id>
noxinfluencer message projects <thread_id>

管理已知线程的元数据:

noxinfluencer message labels --page_size 20
noxinfluencer message labels set <thread_id> --body-file labels.json --force
noxinfluencer message coop-statuses
noxinfluencer message coop set <thread_id> --body-file coop.json --force

模板和草稿只用于已有线程:

noxinfluencer message templates list --language en
noxinfluencer message templates save --body-file template-save.json --force
noxinfluencer message templates use <template_id> --body-file template-use.json --force
noxinfluencer message draft save <thread_id> --body-file draft.json --force

发送或定时前,把已确认文件附加到线程草稿:

noxinfluencer message attachments list <thread_id>
noxinfluencer message attachments upload <thread_id> --file brief.pdf --force
noxinfluencer message attachments delete <thread_id> <attachment_id> --force

内容和发件人确认后,才发送或定时:

noxinfluencer message send <thread_id> --body-file send.json --force
noxinfluencer message schedule <thread_id> --body-file schedule.json --force
noxinfluencer message cancel <thread_id> --force

安全执行规则

  • 写操作默认 dry-run,真正执行前需要确认并使用 --force
  • 发送和定时需要先确认内容、sender_auth_id 和准确目标线程
  • status=draftstatus=scheduled 需要同时提供 --business_kind--business_id;上游项目标签页已经废弃
  • --project_ids 不能和 --business_kind / --business_id 同时使用
  • --creator_uids 来自 message creator-filters,表示 SaaS 任务创建人或团队成员 ID,不是达人 channel ID
  • message schedule 需要带整点 timezone offset 的 ISO 8601 时间,例如 Z+08:00-05:00
  • 草稿附件上传使用 --file,不是 --body-file
  • 一个线程最多支持 2 个草稿附件,单个最大 10MB;危险可执行文件或脚本扩展名会被拒绝
  • 只有确认准确 thread_id 后,才上传或删除草稿附件

当前边界

  • 消息线程不会从零创建外部消息渠道
  • 当没有 thread_id 时,它不会创建新的消息线程
  • 它不会代你撰写消息文案
  • 它不操作 NoxInfluencer 之外的外部消息平台
  • 部分项目标签页概念在上游已废弃,当前筛选条件以 CLI schema 为准
  • message get 内联 composer state 和 metadata;当前没有单独的 draft-get 或 metadata-get 公开命令
  • 草稿附件不是消息模板附件;模板附件不在当前公开命令范围内

推荐下一步