转发消息过滤

借助 FLOWIN 服务,您可以使用丰富的转发消息过滤功能。过滤器会根据特定条件自动屏蔽或允许转发消息,例如文本中的词语、作者姓名、媒体类型和格式、原始消息的时间、转发来源信息、消息 ID 等。

从各类公告中筛选程序员招聘消息

过滤功能

过滤器适用于以下场景:

  • 分析聊天、群组和频道,寻找对您业务相关内容有需求的潜在客户。您可以设置对大量相关主题聊天的监控,用户发布的、与您业务有关的所有需求和询问都会实时自动转发给您。您只需回复意向强烈的潜在客户发送的消息。
  • 如果您在运营新闻聚合频道,可以屏蔽来自来源的广告帖。
  • 只收集特定主题的信息。
  • 只复制群组中特定用户的聊天内容。
  • 按照预先准备的脚本,模拟群组中不同账号之间的对话。

创建过滤器

假设您要将相关主题聊天中的程序员招聘信息收集到单独的频道。下面设置一个过滤器,只放行包含“程序员”或“开发者”的消息。不含这些词语的消息将不会转发。

开始之前

创建过滤器前,请确认已有一个已配置的转发任务。

过滤器在 FLOWIN 控制面板中设置。

  1. 打开 @flow_in_bot,发送 /start 命令,然后点击“控制面板”。

    通过 @flow_in_bot 进入控制面板
    通过 @flow_in_bot 进入控制面板。
  1. 在控制面板中打开“菜单”→“过滤器”,然后点击“创建”。

    菜单中的“过滤器”部分
    菜单中的“过滤器”部分。
    过滤器页面上的“菜单”和“创建”按钮
    过滤器页面上的“菜单”和“创建”按钮。
  2. 选择“列表”模式。在“搜索”字段中输入以逗号分隔的程序员, 开发者,选择“允许”,然后点击“创建”。

    过滤器允许包含“程序员”或“开发者”的消息通过
    过滤器允许包含“程序员”或“开发者”的消息通过。
  3. 在新过滤器旁点击闪烁的“应用”→“转发任务”。勾选所需转发任务,然后点击“保存”。按钮上的数字表示已选转发任务的数量。

    在应用菜单中选择“转发任务”
    在应用菜单中选择“转发任务”。
    保存关联前选中的转发任务
    保存关联前选中的转发任务。
  4. 列表中将出现已关联转发任务的过滤器。此后,该任务的来源中只有包含“程序员”或“开发者”的新消息才会转发。

    已创建的过滤器及其关联的转发任务
    已创建的过滤器及其关联的转发任务。
    来源中发布了两条消息
    来源中发布了两条消息。
    程序员招聘信息通过过滤,到达目标
    程序员招聘信息通过过滤,到达目标。

过滤器设置

下面以已创建的过滤器为例,了解其设置和功能。

如何更改过滤器

  1. 点击过滤器旁带铅笔图标的“更改”按钮,打开包含其参数的窗口。

    过滤器旁的“更改”按钮
    过滤器旁的“更改”按钮。
  2. 修改所需参数,然后点击“保存”。例如,在“说明”字段中填写“开发者招聘”。新的说明会显示在过滤器所在行。

    保存过滤器的新说明
    保存过滤器的新说明。
    过滤器所在行中的新说明
    过滤器所在行中的新说明。

现成示例

现成示例包含词语黑名单和白名单、按作者屏蔽、屏蔽贴纸等场景。在过滤器窗口中点击“现成示例”,选择一个选项。示例的值会填入字段,请按自己的需要修改。

表单中的“现成示例”按钮
表单中的“现成示例”按钮。
未限制搜索条件的完整现成示例列表
未限制搜索条件的完整现成示例列表。

筛选依据

此设置决定在哪里查找过滤条件中的内容。可选项如下:

“筛选依据”字段展开的条件列表
“筛选依据”字段展开的条件列表。
  • “消息”:消息文本、隐藏链接和按钮的内容、引用文本,以及投票的问题和答案选项。
  • “作者”:原始消息作者的姓名、用户名和 ID。
  • “聊天”:消息来源的名称、用户名和 ID,来源可以是聊天、频道或群组。
  • “按钮”:消息按钮的文字、文本和链接。
  • “媒体”:原始消息中媒体的格式、类型和名称。
  • “媒体价格”:付费媒体的价格,以 Telegram 星币计。没有付费媒体的消息,其值为 0。
  • “浏览量”:原始消息的浏览次数。
  • “转发数 / 浏览量,%”:原始消息的转发数占浏览量的比例。
  • “回应数 / 浏览量,%”:原始消息的回应数占浏览量的比例。
  • “评论数 / 浏览量,%”:原始消息的评论数占浏览量的比例。
  • “日期和时间”:原始消息的日期和时间。完整格式为2006-01-02 15:04:05。可以指定日期、日期范围或时间段,例如09:00-18:00。
  • “消息 ID”:原始消息的数字标识。
  • “回复消息 ID”:原始消息所回复的那条消息的数字标识。
  • “转发来源信息”:转发消息标题中的人名或来源名称,Telegram 会将其显示在“转发自”旁边。
  • “话题 ID”:当来源是启用了话题的群组时,表示话题的数字标识。在如下形式的链接中:t.me/c/1234567890/25/48,话题 ID 为25,消息 ID 为48。
  • “消息延迟(秒)”:从原始消息发送到监听账号会话收到该消息之间的时间,单位为秒。
  • “消息组内的序号”:媒体在相册中的排列序号。

搜索

此字段用于指定过滤器要查找的内容,旁边有三种搜索模式:

  • 文本:精确查找输入的字符组合,包括所有空格、缩进、括号等。不区分字母大小写。
  • 列表:查找以逗号或换行分隔的多个选项。只需匹配其中一个。不区分字母大小写。
  • Regexp:使用正则表达式搜索。有关语法的详细说明,请阅读文章《过滤器和替换规则中的正则表达式》。
在“文本”模式中查找字符组合
在“文本”模式中查找字符组合。
“列表”模式中的多个选项
“列表”模式中的多个选项。
使用正则表达式搜索
使用正则表达式搜索。

需要注意的细节

“文本”和“列表”也会在词语内部查找字符组合:程序员会匹配“程序员”和“程序员们”。过滤器不会考虑消息的含义,因此,只要包含所查找的词语,讨论这一职业的消息也会通过过滤。

对于数值条件,“文本”和“列表”模式支持精确数值、范围和比较式:10、10-20、>=1000。对于比例,可以填写>=2%。

屏蔽或允许

  • “屏蔽”会阻止转发包含“搜索”字段内容的消息。
  • “允许”只转发包含该内容的消息,并屏蔽其他消息。
“屏蔽”和“允许”选项
“屏蔽”和“允许”选项。

提示

如果同一转发任务直接关联了多个过滤器,消息就必须通过其中每一个。例如,在包含词语程序员, 开发者的过滤器之外,可以再添加一个允许型过滤器,其文本为招聘:只有同时满足两个条件,消息才会转发。

处理前或处理后

  • “处理前”会在翻译、AI 助手、水印、消息合并以及后续过滤器和替换规则执行前,检查原始消息。
  • “处理后”会在主要转换完成后检查消息,但早于设置为“处理后”的替换规则。

“处理后”仅适用于“消息”“按钮”和“媒体价格”条件。其他条件都在处理前检查,对应的切换选项不可用。

选择过滤器的执行时间
选择过滤器的执行时间。

说明

说明:供您自己查看的可选备注,不影响过滤器的工作。

过滤器的可选说明
过滤器的可选说明。

媒体过滤

如需过滤带媒体的消息,请在“筛选依据”字段中选择“媒体”。服务会在附件媒体的名称、类型和扩展名中查找指定内容。

可以使用以下类型:

  • photo:所有照片和图片
  • document:文档
  • poll:投票
  • geo:地理位置
  • video:视频
  • voice:语音消息
  • audio:音频
  • round:圆形视频消息
  • sticker:贴纸
  • webpreview:网页预览

发送账号过滤

FLOWIN 服务不仅可以将过滤器关联到转发任务,还可以关联到发送账号,从而选择由谁转发包含指定内容的消息。

满足以下条件时,可以将过滤器关联到发送账号:

  • 过滤器的操作选择了“允许”。
  • 过滤器选择了“处理前”。
  • 过滤器关联到某个转发任务,且该任务的发送账号选择了“轮换发送账号”选项。
  • 如需在账号之间选择,必须连接两个或更多有权访问目标的发送账号。

例如,配送和付款请求从同一来源进入工作群。群成员通过发送者区分两类请求:带“配送:”标记的请求由“小林”账号发布,带“付款:”标记的请求由“付款助手”机器人发布。其他主题不会进入这个群。下面使用示例订单号。

  1. 在“转发任务”页面,打开所需转发任务的目标更改窗口。在“发送账号”字段中选择“轮换发送账号”,然后保存更改。

    更改转发任务的目标
    更改转发任务的目标。
    目标设置中的轮换发送账号
    目标设置中的轮换发送账号。
  2. 在“过滤器”页面点击“创建”,在“搜索”字段中输入标记配送:,再选择“允许”。创建过滤器,并将其应用到准备好的转发任务。

    创建用于选择发送账号的过滤器
    创建用于选择发送账号的过滤器。
    允许“配送:”标记通过的过滤器
    允许“配送:”标记通过的过滤器。
    使用轮换发送账号的转发任务
    使用轮换发送账号的转发任务。
  3. 打开此过滤器的“更多”→“应用”,选择“发送账号”,勾选“小林”账号,再点击“保存”。用同样的方法为标记付款:创建第二个过滤器,关联到同一转发任务,并选择“付款助手”作为发送账号。

    应用菜单中的“发送账号”选项
    应用菜单中的“发送账号”选项。
    发送匹配消息的账号
    发送匹配消息的账号。
    用于“付款:”标记和另一个发送账号的第二个过滤器
    用于“付款:”标记和另一个发送账号的第二个过滤器。
  4. “配送:订单 №1042 延误。”由小林发送,“付款:订单 №1043 需要账单。”由付款助手发送。“退货:订单 №1044 不合适。”不符合任何发送账号过滤器,因此不会转发。

    配送、付款和退货的示例请求
    配送、付款和退货的示例请求。
    两条消息已由所选发送账号转发
    两条消息已由所选发送账号转发。

过滤器的可用操作

带铅笔图标的“更改”按钮用于打开过滤器的主要设置。“更多”菜单提供其他操作:

  • “创建副本”:创建一个设置相同的过滤器副本。
  • “选择项目”:将过滤器添加到项目。
  • “删除”:删除过滤器。
“更多”菜单中的过滤器操作
“更多”菜单中的过滤器操作。

“转发任务 [数量]”按钮显示关联的转发任务数量。点击它可更改选择,然后保存。

显示已关联转发任务列表的按钮
显示已关联转发任务列表的按钮。
更改过滤器与转发任务的关联
更改过滤器与转发任务的关联。

常见问题

如何设置词语过滤器,使其中任意一个词匹配即可?

选择“列表”模式,在“搜索”字段中用逗号或换行列出词语,然后选择“允许”。只需匹配其中一个。如果需要两个必须满足的条件,请创建两个允许型过滤器,并将两者都关联到转发任务。此规则适用于消息过滤器;账号的选择另见“发送账号过滤”部分。

为什么词语过滤器会匹配另一个词语中的一部分?

“文本”和“列表”模式查找字符组合,也包括较长词语中的一部分。例如,“猫”会匹配“小猫”。搜索不区分字母大小写。如需只匹配完整单词,请使用带单词边界的“Regexp”模式,并检查应该通过和不应通过过滤器的示例。

可以按其他语言的关键词筛选消息吗?

可以。在“搜索”字段中输入所需语言的关键词。过滤器会检查转发任务来源中的消息,只查找指定的文本。它不会自动翻译词语,也不会查找同义词:请在“列表”模式中列出所需选项。

如何筛选包含照片或视频的消息?

在“筛选依据”字段中选择“媒体”,选择“列表”模式和“允许”操作。在“搜索”字段中填写photo以筛选照片,填写video以筛选视频,或填写photo, video以同时筛选两种类型。请注意,搜索也会检查文件名称和扩展名,因此附件名称中的匹配也可能使消息通过。媒体说明文字中的词语由“消息”条件检查。

可以在翻译或 AI 处理后检查文本吗?

可以。为“消息”条件选择“处理后”。过滤器会检查翻译和 AI 的结果,但仍早于设置为“处理后”的替换规则。此选项也适用于“按钮”和“媒体价格”条件。其他条件都在处理前检查。过滤器本身不会更改文本。

如何只为符合条件的消息添加按钮?

将过滤器关联到要添加的按钮。如果消息未通过此过滤器,按钮就不会添加,但消息本身仍可以转发。如果将过滤器关联到转发任务,它决定的则是是否发送整条消息。按钮过滤器不会删除原始消息中已有的按钮。