«Essence» Bot Blog

A word filter leaves only what you need from a Telegram channel, if what you need can be named in words

How to get only the posts with the words you need from a Telegram channel: when the task can be solved with words and when it can't, how to account for word forms and the source language, why you need an exclusion list, and how to test the rule before saving it.

Sometimes you need a channel for only a small part of what it publishes. A job channel posts dozens of listings a day, but you only want analyst jobs. A design channel writes about everything, but you follow Figma news. In a relocation channel, you care about one city. You don’t need the other posts, but unsubscribing feels like a loss: the useful part would go along with the rest.

So you either scroll through everything or search the channel for the right word every time. If what you need can be recognized by its words, there is a simpler way: set a rule and get only the posts from the channel that contain those words.

First, check whether what you need has a name

A word filter looks for the words from your list in the text of a post. It doesn’t understand meaning. That is why it works well when what you need has a name: a profession, a product or company name, a city, a term. An analyst job almost always gives itself away with the word “analyst”. A post about Figma mentions Figma.

It gets harder when what you need is defined by topic or importance. You can’t make a list for “interesting AI stuff”: such a post may not contain a single predictable word, and words like “neural network” and “AI” also appear in posts you don’t care about. The same goes for “urgent news”: urgency usually isn’t spelled out in the text. «Essence» Bot can’t select posts by topic, so a word filter won’t work for these tasks.

There is also a middle case: the word is the right one, but it appears in almost every post. If you filter a cryptocurrency channel by the word “bitcoin”, you will get almost the whole channel. Then you need to narrow the list by adding more precise words.

How to build the list

The “Only with” filter lets a post through if it contains at least one word or phrase from the list. Words are matched whole, and case doesn’t matter. The list can hold up to 50 entries.

Whole means that the entry analyst won’t find analysts. If a word changes its ending in the text, put an asterisk at the end: analyst** will find both analyst and analysts. The asterisk works only at the end of a word, so the beginning has to be written in full. Avoid stems that are too short: art** will find not only art and artist, but also article.

Next, think about how else people write about the same thing. A product name may be written both in the original and in local transliteration, a profession in different languages, and a city may have several names. For example, Serbian channels write about Belgrade sometimes in Latin script and sometimes in Cyrillic, while English-language channels use the English name. A list for such a city:

  • belgrade
  • beograd**
  • београд**

The asterisk here catches case forms: “in Belgrade” in Serbian is u Beogradu or у Београду.

The filter checks the original text of the post in the channel’s language. If the channel writes in another language and you receive summaries in yours, words in your language in the list won’t find anything: take them from the source language.

When you need the “Without” list

The second list works the other way around: a post with any word from it won’t arrive. Exclusion beats inclusion: if a post matches both lists, it is filtered out.

Take an English-language job channel. You are looking for an analyst job, but internships don’t suit you. In “Only with” you write:

  • analyst**

In “Without”:

  • intern
  • interns
  • internship**

You shouldn’t shorten this to intern*: such an entry would match international and internal and remove, for example, jobs at international companies, which might be exactly the ones that suit you. With the exclusion list, a mistake costs more: you will see an extra post and skip it, but you won’t see a needed one at all.

What the filter sees and what it doesn’t

The filter checks the full original text of the post, including the captions of every part of an album. Captions count even for attachments you have turned off in your media settings.

A post without text won’t pass when the “Only with” list is filled in: there is nothing to search. If a channel publishes some of its listings as an image without a caption, the filter will drop those posts. It doesn’t read what is written in the image.

Ad filtering keeps working alongside your filter: posts with the hashtags #реклама, #ad and #sponsored won’t arrive, even if they contain the word you need.

Test the rule before saving

Before saving, you can test the rule on the channel’s latest posts that the bot has stored, up to 20 of them, or on text you paste yourself. This shows whether the posts you need get through and the unwanted ones are filtered out. If there is no suitable post among the latest ones, paste the text of a listing you would like to receive. The test works only on this sample, not on the channel’s entire history.

After saving, a filter mark and the number of posts filtered out over the last seven days appear next to the channel in your list of sources. This number shows when the rule isn’t working as intended. If nothing has been filtered out in a busy channel over a week, the list is probably too broad. If almost everything is filtered out and the posts you need don’t arrive, the words are too narrow, in the wrong forms, or in the wrong language.

Where the rule applies

The filter applies to delivery to your private chat with the bot and to your channels and groups with autopublishing. By default, the rule applies to every place this channel’s posts go to, but you can set it only for your private chat or only for one autopublishing destination.

The filter doesn’t carry over to “Channel digests” overviews or to the web feed.

The rule applies to new posts. Posts the filter dropped earlier won’t arrive after you change it, and posts already delivered won’t disappear. The bot doesn’t guarantee that every post will be received, so for a channel where missing a single message is costly, it’s better to keep your subscription with notifications on.

Matching posts arrive in the same chat with the bot as the posts from your other channels. If you read many channels through the bot, the posts you need will be among the rest. There will be fewer of them, but they won’t get a separate feed.

How to turn on the filter

Add the channel to «Essence» Bot and open the settings of this source. Words are entered as a regular message, one entry per line, and unwanted ones are removed with buttons. Test the rule on recent posts and tap “Save”: changes apply only after that. The word filter is available on all plans. If plain words aren’t enough, there is an advanced mode with regular expressions.

This material was prepared using AI and approved by the editor of «Essence» Bot.

Home →