自动化不只处理文本

文件、回应和团队任务清单

了解 PDF、照片、语音消息、回应和 Telegram 任务清单规则,并查看适用于课程群和工作团队的示例

本文内容

照片、视频、文件和其他消息

课程群会收到笔记照片、PDF 和语音消息,兴趣社群会分享音乐与贴纸,工作群会交换联系人名片和投票。Combot 为各类消息都提供了相应设置。

先从实际任务出发:“请给长视频附上简短说明”,或“收到 PDF 后发送提醒”,再选择对应的消息类型及其选项。

数字通常支持上下限,值通常支持包含和排除。如果 Telegram 未提供文件大小等属性,并不意味着大小为零。请使用成员实际会发送的文件试用规则。

照片

场景:摄影群会讨论照片,但投稿者有时忘记遵守发布要求。

你可以检查:

  • 文件大小:例如,对大照片回复发送建议。大小取自机器人可获取的最大照片版本,单位可以是字节、KB 或 MB。
  • 相册/媒体组:例如,当照片属于一组媒体时,提醒发送者为这组内容添加说明。
  • 实况照片:将此格式与普通图片区分开。
  • 剧透:例如,在电影讨论中单独处理被隐藏的照片。

照片下方的文本需要作为媒体说明来设置。一个相册可能以多条消息的形式传给机器人,因此无法保证整组内容只出现一次提醒。

视频

场景:学员发送自己的演示录像。对于超过五分钟的视频,你希望请作者提供简短说明。

选择视频(Video)并设置所需时长,可以使用秒、分钟或小时。

其他选项包括大小、文件类型和名称、是否属于相册,以及剧透。例如,可以通过名称识别带有“演示”标记的文件,通过大小提醒作者将特别大的视频改为链接分享。

类型可以输入 .mp4 之类的扩展名,也可以输入 video/mp4 之类的技术标识符,即 MIME 类型。它描述的是格式,不会评估录像质量。

动画

场景:工作群设有专门的 GIF 话题。当匹配的动画出现在另一个指定话题时,机器人请发送者把它发到 GIF 话题中。

可以检查大小、时长、文件类型和名称,以及剧透。例如,识别特别大的动画。

如果有人将同一个文件作为文档发送,动画规则不能替代文档规则:发送方式很重要。

音频

场景:音乐社群的成员分享录音,你希望他们注明表演者和标题。

可以检查这些字段是否存在以及包含什么文本。例如,标题缺失时,请发送者为录音补上名称。还可以检查大小、时长、文件类型、文件名和是否属于相册,方便区分长录音和短录音。

机器人读取的是音频文件附带的信息,不会通过聆听音乐识别表演者。

文档

场景:课程学员以 PDF 提交作业。收到文件后,机器人提醒他们注明课次和希望批阅者解答的问题。

将文件类型设为 .pdfapplication/pdf。必要时添加大小、名称或相册条件。例如,单独处理文件名中包含“作品集”的文件。

这条规则只能识别类型符合要求的文档,不会阅读作业,也不会确认老师是否已经批阅。

贴纸

场景:社区有自己的贴纸包,你希望在某些讨论中提醒大家使用允许的贴纸包。

输入贴纸包名称或链接。可以选择指定贴纸包,也可以将它们从规则中排除。

还可以使用其他属性:

  • 大小(Size):例如,按大小阈值选择贴纸。
  • 类型:普通贴纸、面具贴纸或自定义表情贴纸。
  • 动画和视频(Animation and video):例如,将动态贴纸与其他贴纸区分开。仅选择“普通(Regular)”类型并不意味着静态图片。
  • Premium 动画:这类贴纸的独立属性。
  • 关联表情(Associated emoji):是否存在及其值。例如,识别与 👍 关联的贴纸。
  • 自定义表情符号 ID:选择特定的自定义表情。

语音消息

场景:客服收到一条七分钟的语音,团队无法迅速了解发生了什么。

将最短时长设为两分钟,并回复:“请用文字简要说明问题,方便我们更快地帮你处理。”也可以检查文件大小和类型。

Combot 检查的是时长,不是讲话的含义。文本短语搜索不会把语音消息转写成文字。

视频消息

场景:大家用圆形视频消息提交回答。对于较长的回答,你希望建议对方改用普通视频。

选择视频消息(Video note)和所需时长,也可以检查大小。圆形视频消息和普通视频是两个不同选项,请选择你需要的类型。

联系人

场景:组织者分享联系人名片。遇到已知电话号码时,可以触发说明,介绍哪些事情应联系此人。

可用属性包括电话号码或国家呼叫代码、Telegram ID、名字、姓氏,以及该联系人是否为群成员。

检查针对的是名片上的人。如果安娜发送伊利亚的名片,伊利亚的电话号码并不会变成安娜的号码。

联系人名片可能没有 Telegram ID。因此,“联系人不是群成员”不一定意味着机器人已识别此人并检查了其成员身份;没有已知 ID 的名片也可能归入此类。

位置和地点

场景:徒步群分享集合点。对于指定区域内的位置,机器人可以发送集合地点的说明。

使用纬度、经度和以米为单位的半径定义区域。这是在检查分享的位置点,而不是跟踪用户。

还可以选择实时位置、以秒为单位的持续时间、以度为单位的方向,以及接近提醒半径。例如,将实时路线与一次性位置标记区分开。

对于分享的地点,可以检查地址,以及数据中提供的 Foursquare 或 Google Place ID 或类型。例如,识别特定场所的地点卡片。

分享位置并不能证明用户当前就在那里,也不会让机器人获得持续访问其行踪的权限。

投票

场景:读书会投票选择下一本书,课程群则发布测验。可以用独立规则分别处理。

可用设置包括:

  • 类型和参与方式:普通投票或测验、匿名、多选、允许更改投票、仅限成员参与,以及是否关闭。例如,在新测验发布后发送答案讨论须知。
  • 数字和时间:选项数、总票数、以秒为单位的投票时长和关闭时间。例如,识别选项较多的投票。
  • 文本:问题、答案选项、解析和描述。例如,识别问题中包含“下一本书”的投票。
  • 格式:问题、解析和描述中的格式,以及解析和描述的附件。例如,区分带有补充资料的测验。
  • 附加字段:数据中提供的国家代码限制,以及正确答案 ID。这里的 0 表示第一个选项,而不是没有答案。

如果关闭时间字段要求 Unix 时间戳,请输入以秒为单位的时间戳,而不是“还剩 30 分钟”。如果你已经使用这种格式,这项设置会很有用。

规则检查的是收到的事件中的投票信息。没有为每次投票单独触发的事件,部分字段也可能缺失。

骰子和其他游戏表情

场景:成员在社群的“闲聊”话题中掷 🎲。某个特定结果可以触发一条轻松的回复。

选择游戏表情和结果。🎲 与 🎯 的可能取值不同,请检查所选游戏。再次投掷可能再次触发相同回复。

游戏

场景:有人分享 Telegram 游戏,机器人提醒对方应在哪个话题中讨论。

可以检查游戏标题和描述。这不是比赛结果:规则不会得知谁获胜或创造了纪录。

付费媒体

场景:专题群中有人分享付费帖子,你希望回复一条发布规则提醒。

可以检查 Telegram Stars 价格、项目数量及其类型:照片、视频、实况照片或锁定预览。例如,单独处理包含多个项目的帖子。

其他选项包括是否有锁定预览、大小、时长、文件类型和名称、视频封面、以秒为单位的视频起始时间,以及数据中提供的质量信息。请使用相关媒体类型实际具有的属性。例如,付费照片可能没有 MIME 类型。

这些设置不会购买帖子、消耗 Stars、解锁付费文件,也不会检查特定成员是否已为它们付款。

回应和团队任务清单

群聊中的活动不只通过新消息发生。用户会更改回应,同事会勾选清单任务。自动化也能留意这些变化。

有人添加、移除或替换回应

假设你希望将工作讨论中符合条件的回应变化通知团队。先选择用户回应,再选择关注的变化:

  • 已添加——出现了之前没有的回应。
  • 已移除——用户移除了回应。
  • 如需匹配这两种变化,请将两个选项都保持为未选中状态。

例如,伊利亚把 👍 换成 ❤️。这次变化同时包含移除 👍 和添加 ❤️。

此事件要求 Telegram 提供用户身份。以频道或匿名管理员身份作出的回应不会触发。试用时请使用个人身份添加回应。

你可以包含或排除指定回应。普通表情输入符号本身,自定义表情输入数字 ID;付费回应另有单独选项。

有一个细节用例子最容易说明。伊利亚已经对某条消息留下了 👍,随后又添加 ❤️,一共有两个回应。👍 筛选仍然能看到这个表情:它检查的是变化后保留的回应,而不只是刚添加的那个。

筛选指定回应时,必须选中已添加。它并不表示“有人移除了这个特定的 👍”:被移除的表情可能已不在新回应集合中。

如果有人移除回应后再添加,规则可能再次运行。因此,仅靠此条件不足以实现“每个赞只奖励一次”。如果管理员希望亲自致谢,可以使用 11 个现成场景 中的命令。

帖子的回应数量达到要求

假设编辑团队希望留意关联频道中当前 👍 和 ❤️ 合计为 20 到 30 个的帖子。

选择回应数量,选择要统计的类型,并将最小值设为 20、最大值设为 30

  • 12 个 👍 和 10 个 ❤️ 会匹配:总数为 22。
  • 10 个 👍 和 8 个 ❤️ 不匹配:总数为 18。
  • 如果没有选择另一种类型,额外 50 个该类型的回应不会影响此处计数。

可以包含需要的类型,也可以排除不需要的类型。未设置类型筛选时,使用总数。边界留空或设为 0 都表示“此侧不限”。两侧都为零并不表示“恰好零个回应”。

这不是一次性的阈值提醒。机器人收到数量 20 时,规则会匹配;之后收到 21 时,还可能再次匹配。即使你只想留意热门帖子一次,范围设置也不会记住是否已经通知过你。

一个实用方案是发送简短日志通知,并为这项发送操作启用删除上一条回复。通知会被替换,但这并不能阻止重复执行。

此事件不包含回应者名单。你无法根据总数选出“第 20 个回应的人”并奖励 XP。

指定任务清单发生变化

工作群有一份网络研讨会准备清单:检查音效、整理演示文稿、给参与者发邮件。团队希望有人完成任务时收到简短通知。

  1. 选择已完成的清单任务。如果关注的是新增任务,则选择添加了清单任务
  2. 复制 Telegram 中包含该清单的消息的直接链接,并将其填入任务清单条件。
  3. 添加发送操作:“网络研讨会计划中有任务已标记完成,请查看还有哪些待办事项。”
  4. 也可以添加一个指向同一清单的按钮。

这样,旁边另一份清单的变化就不应触发通知。机器人将链接与清单本身比较,而不是与单独的“任务已完成”服务消息比较。

直接链接可以指向公开或私有群聊,也可以指向特定话题。对于公开链接,Combot 必须从收到的数据中知道对应群聊的用户名。

带有 ?comment=… 的链接不适用。请在讨论群本身打开清单,复制清单消息的直接链接。

移除链接条件后,就会覆盖所选群聊或话题中所有匹配的清单。例如,收集工作群中所有新增任务的日志通知。

不要为任务完成事件写“网络研讨会已全部准备就绪”。可能只是有人检查了音效,其他任务仍待完成。