自动化细化条件

选择正确的消息和用户

将回复限定在合适的话题与时间,选择参与者、排除项、邀请来源和要查找的短语

本文内容

时间、群聊话题和邀请链接

同一个问题可能需要不同的回复。白天客服可以立即提供帮助,夜间则可以告知团队何时回来。网络研讨会嘉宾需要的信息,也可能与课程学员不同。时间、位置和邀请条件可以帮助你区分这些情况。

何时回复

任何时间适合始终有用的信息。例如,群规链接在白天和夜间都很有用。

日程可以指定星期几和时间段。假设助教的工作时间是周一至周五,莫斯科时间 10:00 至 18:00,就选择工作日和对应时段。可以添加多个时段,例如休息前和休息后,也可以快速选择每天、工作日或周末。

时间表字段需要输入 UTC 时间,编辑器会在下方显示本地时间作为提示。若希望从莫斯科时间 10:00 开始回复,并在 18:00 准时切换为夜间消息,请输入 UTC 07:00–14:59。指定的最后一分钟包含在时段内。

星期几也按 UTC 选择:你所在时区的深夜可能对应 UTC 的另一天。如果你的时区实行夏令时,请在时钟调整后重新检查时间表。

在此时段外运行适合“我们明早回来”之类的回复。设置工作时间并启用该选项,工作时间以外的匹配问题就会收到非工作时间消息。

日期范围适合临时任务。例如,只在秋季课程报名期间回答相关问题。请设置该时段的开始和结束日期。

如果群聊已有关闭时段

选择关闭时间,即可使用群聊自身设置中的时段。管理员修改该设置后,无需在自动化中再次更新同样的时间。

例如,设置中的时段是 UTC 22:00–06:00。条件会在 22:00 开始匹配,持续整夜,并在 06:00 停止匹配。启用“在此时段外运行”会检查相反的时段。

如果未设置关闭时段、设置无效,或开始和结束时间相同,条件就不会匹配,即使启用了时段之外选项也是如此。00:00–00:00 不表示“全天”。

关于时间,最重要的一点:机器人会等待事件发生。它可以在上午十点回答问题,但不会仅仅因为时间到了 10:00 就发布信息。定时发帖请使用 Combot 定时公告。关闭时段条件也不会让成员在群聊禁止发言时获得发言权限。

检查哪个群聊话题

课程群可能设有“学习”“支持”和“闲聊”话题。在在哪里中选择:

  • 来源聊天:规则覆盖所有话题。例如,在任何话题中使用指定命令都能获取通用信息。
  • 所选话题:限定某个区域,例如只在“支持”中回复付款问题。可以从列表中选择多个话题,也可以输入话题的数字 ID。
  • 一般话题:限定群聊的常规区域,而非某个独立话题。

这项设置决定机器人在哪里寻找匹配事件。回复发到哪里,是另一项独立设置。用户可以在“支持”中提问,而通知则发往团队的日志频道。

用户通过哪个邀请加入

假设学校有两个链接:一个供公开课来宾使用,另一个供正式学员使用。你可以根据对方使用的链接发送不同欢迎语。

编辑器提供以下选项:

  • 任何来源。无论通过何种邀请,都发送相同欢迎语。
  • Combot 邀请链接。链接已记录在此群聊的邀请目录中。请选择公开课的具体链接、输入其代码,或粘贴完整 URL。也可以排除指定链接。
  • 外部邀请链接。Telegram 提供了链接,但该链接不在此群聊的 Combot 邀请目录中。例如,你可以将此类加入通知管理员。仅凭这一点不能认定用户违规。
  • 管理员创建的链接 / 用户创建的链接。快速选择相应创建者类别下已加载的链接,例如组织团队的邀请链接。
  • 没有邀请链接。只有加入数据明确确认未使用链接时才匹配。例如,为这种加入方式提供单独说明。
  • 聊天文件夹邀请链接。用于通过 Telegram 共享文件夹加入的情况,前提是 Telegram 报告了该信息。例如,简短说明当前群聊在这一组聊天中的用途。

有两点需要区分。你未选中的链接不一定是外部链接:Combot 可能知道它。缺少邀请信息也不能证明用户未使用链接加入。数据不可用时,机器人不能猜测来源。

列表每次最多加载 100 个链接。使用“管理员创建的链接”按钮选择时,请先加载所需页面:它只会选中当前已显示的链接。未来新建的邀请不会自动加入该选择。不过,Combot 区分已知链接和外部链接时使用的是整个目录,而不只是可见页面。手动输入 URL 不会把它添加到目录中。

为活动设置自动准入时,请先使用一个具体链接。“所有已知链接”条件涵盖的邀请要多得多。请记住,链接可以被转发,不能证明身份或已付款。

选择规则适用的用户

群聊中有新人、日常参与者和管理员,他们不一定需要相同的响应。新人可能需要资料入口,而警告命令应当只允许管理团队使用。

先确定你指的是谁

如果安娜将伊利亚加入群聊,欢迎的对象是伊利亚,不是安娜。如果安娜回复伊利亚的消息并发送命令,就需要明确操作应当作用于谁。

因此,字段标签会随着事件而变化:

  • ——普通消息的作者。
  • 申请人——申请加入的人。
  • 新成员添加者——分别是伊利亚和邀请他的安娜。
  • 成员发起者——离开的人,以及将其移出的人(如果是被移出)。
  • 触发于应用于——命令发送者和通过回复选中的用户。
  • 被回复消息的用户——通过“回复”选中的那条消息的作者。

选择角色或活跃度条件之前,请先确认这些条件是为哪一个人配置的。

所有消息,还是仅回复

在学习群中,你可能希望以不同方式处理新问题和对他人问题的回复:

  • 所有消息——是否为回复不重要。例如,在整个对话中查找“录播在哪里”。
  • 仅回复 / 任何回复——使用“回复”发送的消息会匹配。例如,仅在回复学员作业时显示反馈格式说明。
  • 不在回复中触发 / 没有回复——独立发送的消息会匹配。例如,提醒在“招聘”话题中新发职位的人遵守格式要求。

被回复消息的用户还能进一步限定:回复的是成员、管理员、机器人、Combot、自己,还是关联频道的帖子。可用选项取决于事件。例如,你可以单独处理对助教消息的回复。

用户第一条消息使用“群内消息数等于 1”条件,可用于向新参与者介绍信息。但统计更新和传入消息并非严格同步处理,因此无法用此条件保证只为真正的第一条消息奖励一次。

预设用户组

编辑器将这些组称为自动分组。它们让你无需逐一列出用户,就能选择一类人。

新成员。例如,向 Combot 仍认定为新人的用户发送提问格式提示。该状态根据群聊设置中的入群时长、消息数和适用豁免来确定,而不是 Telegram 账号的年龄。

普通成员。记录为当前仍在群聊中的用户。例如,将帮助命令限定为群成员使用。“普通”不表示“已经待了很久”:新人也可能属于这个组。

已退出成员。已知离开且当前不在群聊中的用户。例如,将返回成员的入群申请与没有这类已知记录的申请区分开。

白名单用户。即管理设置中按 ID 或用户名列出的允许名单。例如,在某条发链接提醒中排除可信助手。请明确添加排除条件:存在白名单并不会自动取消你创建的所有规则。

Telegram 管理员。例如,允许他们使用 /team_warn

Combot 管理员。单独获得 Combot 控制台访问权限的人。例如,允许通过控制台工作的社区助手使用某个预设命令。此权限不会使他们成为 Telegram 管理员。

所有者。Telegram 认定的群聊所有者。例如,将某个自定义命令保留给群主使用。

如果同时选择 Telegram 管理员和 Combot 管理员,任意允许属于任一组的人使用,全部则要求同时属于两个组。此分组逻辑对事件发起者和另一位选定用户都适用。

如果出现独立的管理员模式设置,也请检查:它可以包含所有人、仅 Telegram 管理员,或除他们之外的所有人。例如,在这里选择“仅管理员”,却在其他地方排除管理员,就会产生矛盾。

入群时长、消息、经验和声望

这些条件可以更准确地描述适用人群。例如:“加入不超过两小时,并且发送的消息不超过十条。”

  • XP:累积经验。例如,为至少拥有 500 XP 的用户提供单独说明。
  • 声望:当前声望值。例如,只允许声望至少为 10 的成员使用某个自定义信息命令。
  • 群内消息:Combot 已知的用户在此群聊中的消息数。例如,向消息不超过 10 条的用户提供提示。
  • 警告:当前有效警告的数量。例如,对没有警告和已经有一次警告的人发送不同提醒。
  • 加入以来的时间:自已知加入时间起经过的时长。例如,为最近两小时内加入的人提供帮助。
  • 头衔:群聊等级体系中的级别。例如,选择达到某一等级的用户,而无需自行计算对应 XP 门槛。

数字支持等于至少最多。它们的区别很重要:“恰好一条消息”不会匹配发过一百条消息的人,而“至少一条”会。

时间单位可以选择秒、分钟、小时、天、周和月。这里一个月为 30 天,一周为 7 天,一天为 24 小时。如果伊利亚在 23:50 加入,到 00:10 时,他的入群时长是二十分钟,而不是一天。

通过“全部满足”或“任一满足”组合时长和活跃度,并添加排除项。例如,新人提示同时要求入群时间较短且消息较少。已排除的用户不会仅因另一条件匹配,就重新进入同一组条件。

信息缺失不等于零。加入时间未知,不能据此认定是新人;消息数未知,也不能认定从未发言。对条件取反同样不能补足缺失的信息。

旧规则。某些规则可能只计算完整天数:25 小时和 47 小时都会变成一天。要进行精确比较,请明确选择时间单位;仅打开并保存规则不会改变此行为。还要检查运算符:“等于一天”和“至少一天”选择的人群不同。

入群时长不等于首次发言后的时长。伊利亚可能周一入群,直到周五才第一次发言。这里不支持距首次消息或其他首次活动的时间。在启用旧的已禁用规则之前,请移除或替换这类条件。

成员资料中的信息

这些检查针对可获取的账号信息,而不是用户对群聊的贡献:

  • 用户名:是否存在,以及具体内容。例如,从某条提醒中排除已知的团队账号。输入用户名时不要带 @
  • 姓名 / 姓:例如,请未填写姓氏的学员按课程要求自我介绍。显示名称不能证明身份。
  • 用户 ID:账号的数字标识符。例如,即使两位指定助教更改用户名,仍允许他们使用命令。
  • Telegram Premium 用户:例如,为 Premium 用户提供单独的信息命令。此条件依赖 Telegram 提供相应标记。
  • 是机器人帐户:例如,在被回复用户条件中区分对机器人的回复和对真人的回复。此选项不适用于入群申请。
  • 语言:例如,Telegram 提供代码 en 时,选择英文回复。它不检查消息使用的语言、国籍或国家;语言代码也可能缺失。
  • 简介:入群申请中的文本。例如,突出显示简介中提及课程名称的申请。这并不意味着机器人能读取每位普通消息发送者的个人简介。

文本条件支持完全匹配、部分匹配或模式搜索。例如,“有用户名”和“用户名包含 support”是不同的检查。组合多个选项时,请确保没有意外留空的项,否则条件可能比预期更宽泛。

找到所需消息

招聘群需要识别职位信息,客服需要发现付款问题,课程群需要留意作业。Combot 会根据你指定的细节查找:词语、链接、长度和消息类型。

先确定用户发送了什么

什么选择消息类型,选项则为该类型添加要求。

你可以选择文本、媒体说明、照片、视频、动画、音频、文档、贴纸、语音消息、视频消息、联系人、位置、投票、骰子、游戏或付费媒体。部分选项位于“更多(More)”中。

例如,单独发送的“家庭作业”是文本;相同文字放在笔记本照片下面,就是媒体说明。只查找普通文本不会覆盖后一种情况。

某些属性可以同时存在:照片并且有说明很常见。但不应该要求同一个文件既是文档又是语音消息。对于这类不同的备选项,应选择任意,而不是“全部满足”。

为每个备选项设置要求,例如普通文本包含某句话,或者照片说明包含同一句话。更改消息类型后,请检查“选项”:文档和投票的设置不同。

短语:用户写了什么

以客服群为例,有几种识别请求的方式:

  • 精确文本:整条文本是“规则”。适合约定好的简短请求;“规则在哪里?”则不同。
  • 包含短语:“怎么付款”可以匹配“请问订阅怎么付款”中的内容。
  • 文本开头为:“报告”可以帮助识别采用“报告:本周……”模板的消息。
  • 文本结尾为:#done 可以识别大家约定以此标记结尾的消息。

机器人查找的是指定文本,并不理解一个问题的所有说法。如果有人写“钱转到哪里”,而不是“怎么付款”,请单独添加这个说法,或创建一个 OR 分支。

词语:完整单词还是单词片段

例如,在宠物群的英文讨论中,整个词“cat”不应匹配“catalog”。如果关注的是字母序列本身,则可以使用包含在词中

还可以搜索单词的单词开头为单词结尾为。例如,词首“vacanc”可以覆盖“vacancy”和“vacancies”,词尾 ing 则可用于英语练习。请用几条普通消息试用:过短的片段可能产生意外匹配。

包含空格的短语应输入到短语条件中。列表字段会把值拆成独立条目,不要不小心把“home assignment”拆成两个独立单词。

大小写、长度和文字系统

区分大小写会区分“Rules”和“rules”。日常问题通常不依赖大小写更合适;固定且区分大小写的标签则可能需要此设置。

消息长度 / 说明文字长度以字符计量。例如,请超过 2500 个字符的招聘信息作者用链接提供额外详情。可以设置最小值、最大值,或两者都设置;某一侧留空表示该侧不限。

字符集可以检测西里尔字母、阿拉伯语或希伯来语等从右向左书写的文字,以及中日韩文字。编辑器可能使用缩写 RTL 和 CJK。例如,语言学习群可以在出现西里尔字母时提示练习格式。

这并不能识别整条消息的语言。英文文本中夹杂俄语短语,仍然包含西里尔字母。不要将这一属性当作用户使用何种语言的证明。

更复杂的搜索:正则表达式

正则表达式是一种可以同时描述多种可能的模式。例如,webinar|livestream 会查找这两个英文单词中的任意一个。两个简单短语也可以通过普通条件实现:使用自动化不需要掌握正则表达式。

如果需要正则表达式,所用引擎是 Python regex,而不是 JavaScript。请直接输入模式本身,不要加外围斜杠或标志。模式测试链接可在配置时提供帮助,但之后仍应在测试群中尝试几条消息。

链接、提及和其他元素

有时,重要的不是某个词,而是消息包含的元素。

命令。例如,在消息中查找 /course_info。这只检查内容;若要创建能让机器人回复的自定义命令,请使用“类型”,详见 自定义命令

URL——可见链接。例如,识别链接到特定学习网站的作业消息。可以指定完整地址或域名,也就是网站名称。

文字链接。消息写着“我的作品集”,地址隐藏在这些文字后面。这是另一种链接类型。若希望不论呈现方式都能识别链接,请同时包含可见 URL 和文本链接。

提及。例如,留意发给客服账号的消息。可以设置用户名,或为支持的提及类型设置数字用户 ID。

话题标签 / 货币标签。带有 #vacancy 的消息可以收到发帖说明。$TON 可用于识别专题讨论中对该符号的提及。这是文本属性,不是在检查金融信息。

电子邮件。例如,提醒招聘发布者,应将申请发送到帖子中的邮箱。可以搜索具体地址或邮箱域名。

电话。如果职位信息含有号码,可以提醒作者联系方式是公开的。可以设置号码或前缀,例如 +7。机器人检查的是消息中的文本,而非账号隐藏的电话号码。

表情。例如,对报告中约定的 ✅ 标记作出响应。普通表情输入符号本身,自定义表情则输入 ID;编辑器会说明如何获取 ID。文本中的表情和消息下方的回应是两回事。

文本格式。例如,提醒影迷群遵守剧透规则,或识别带代码块的学员作业。可用选项包括粗体、斜体、下划线、删除线、行内代码、代码块、剧透、普通引用和可折叠引用。

对于支持的元素,可以选择任意值、仅列表中的值,或排除项。“消息有链接”和“消息链接到我们学校的网站”是不同的条件。

筛选不等于安全检查。允许的域名或 .pdf 扩展名并不能保证链接或文件安全。这些筛选有助于组织群聊,但不会替你检查内容。