Home · Blog · How to respond to channel comments and moderate them with a bot

How to respond to channel comments and moderate them with a bot

· Command CHBT · Comments, Moderation

The more active the channel, the more comments there are under posts - and the faster they disperse across three platforms, where they are inconvenient to read and easy to lose. The “editorial team” at CHBT collects responses from Telegram, VKontakte and MAX into one feed: from here they respond in a thread, pass on complex issues to the person, note interest in the purchase and sort out spam. It is important that the moderation here is careful: by default, nothing is deleted, and anything suspicious is sent to a person for verification. Let's look at how the feed works, what is needed to connect each site, how moderation works and what it honestly doesn't do.

Unified response feed

All new comments on posts from Telegram, VKontakte and MAX fall into one list in the “Editorial” section. The feed has filters for connection, site, queue and employee, so you don’t need to keep three applications open and scroll through each channel separately.

The response card shows the comment itself, the author, the post it refers to, and the processing status: new, processed, lead, deleted. From here, three actions are available: reply to the original thread, assign a response to a project participant, and mark your interest in purchasing. The answer goes to the same place where the person wrote - in a channel discussion or under a community post.

This is the same principle as the section “Conversations” for personal correspondence, only here - public comments of channels, not personal messages.

What is needed to connect each site

Responses come from the sites themselves via webhook. The conditions of the sites are different, and without them the feed will remain empty.

VenueWhat needs to be configured
TelegramA discussion group is attached to the channel, and the same bot is its administrator with the right to delete. Comments physically live in this group; regular correspondence and group buttons do not launch personal scripts.
VKUser key of the editor or community administrator and subscription to wall and product comment events.
MAXComments are enabled in the channel settings, the bot has read, reply and delete rights. The comment switch itself is not verified by the API - it needs to be checked manually in MAX.

Checking the site in “Editorial” reads the bot’s rights and shows what is missing: publication, reading comments, replies or deletion. There is a separate analysis about Telegram comments and discussion groups - how to enable comments in a Telegram channel.

Reply, transfer and tag a lead

You can bring the response from the card to the result without going to the messenger.

  • Reply in the thread. The text goes into the original comment thread. Platforms have their own limits: in MAX - text without links and mentions, in Telegram and VKontakte - regular text. The platform checks the right to reply at the time of sending.
  • Assign to employee. If the question requires a person, the response is transmitted to the project participant - you cannot appoint an outsider, everything is within the framework of the project.
  • Mark your interest in purchasing. The flag tags the contact “Interest from comment.” It doesn’t send a private message to the person or run a script—it’s just a flag for you to later filter out the warm ones in “Contacts.” How to build a tagging system - in the article about tags as segmentation.

All project participants can process responses—answer, assign, tag a lead. But deletion on the site, manual linking of a response to a post and verification of a controversial submission are available only to the owner and administrator.

Moderation: signals and queue for review

Moderation in the Editorial Office looks for signs of spam and by default puts suspicious items in the queue for human review - without deleting anything. This is the main difference from aggressive auto-deleteers: the decision is yours.

Features that can be included in the rule:

  • Stop words and phrases — up to 100 options; case, “ё/е” and spaces are normalized, their regular expressions are not executed.
  • Links — URLs, domains, Telegram and VKontakte addresses. The check does not open links or download content - this is a signal, not a transition.
  • Harsh expressions - customizable dictionary. This is a lexical signal without assessing the context: it does not distinguish between sarcasm, quotation and negation, which is why human verification is needed.
  • Flood — at least three messages from the author within a given window of 10 seconds to an hour.
  • Replays - at least two identical ones after normalization from the same author in the same window.

Matches are saved along with the text of the comment and an explanation of the rule used to mark it. The operator can approve the response or return the approved one for review with a reason; Setting up rules, deleting and restoring are up to the owner and administrator. While the response is being verified, the code words for it will not work - there will be no response to spam.

When the bot still deletes

Auto-removal is possible, but it must be turned on deliberately. Three conditions are needed at once:

  1. The action “Delete automatically” is explicitly selected in the rule and this is confirmed when the rule is saved.
  2. The bot on the site has been confirmed to have the right to delete comments.
  3. The connection between the comment and the post is confirmed - otherwise the response remains in the queue for the person.

Before each deletion, the rights and ownership of a comment are checked again. If a rule is disabled, changed, or its author's role is revoked, the pending auto-deletion is cancelled. A match in the validation rule does not override the administrator's explicit deletion decision.

Restoring deleted data is only available on VKontakte and only for deletion that was done by CHBT - the site can still refuse. In Telegram and MAX, restoration via CHBT is not offered; a new comment on behalf of the author is not created to replace the deleted one. These are site restrictions, and we do not bypass them.

Reconciliation and journal

The response and deletion are sent to the external API, where anything can happen: the network is interrupted, the process is restarted, the site’s response is ambiguous. CHBT does not pretend that everything has passed.

An intent with a unique key is stored before an action, and one pending action is allowed per comment at a time. If the result remains unknown, the response receives the status “reconciliation needed”: there are no automatic repetitions, the administrator opens the card, checks the site and confirms “completed” or “not completed” with the reason. Only after checking this response can you send it again.

Every decision - response, deletion, recovery, approval, return for review - is written to the response log: who, what, when and why. Secrets and crude errors of sites are not included in the log. This way, in a controversial situation, you can see the story, not guesswork.

What the feed and moderation don't do

Honest frameworks so as not to wait too much:

  • History is not imported before connection. The feed is filled with new responses, old comments are not retroactively pulled up.
  • In Telegram, manual deletion in a group CHBT is not visible. The site does not send an event about deleting a message from a group, so the “deleted” mark is only valid for deletions via CHBT.
  • Rudeness is defined by the dictionary, not by the meaning. This is a risk signal without AI, so the final decision is up to the person in line.
  • Flood and repetitions are not considered for anonymous authors and they do not unite into common contact.
  • The AI itself does not respond in the comments. The answers in the thread are written by a person or a code word rule with a predetermined text.

Even so, the feed saves a lot of time: the entire conversation under posts is in one place, spam is immediately visible, and the decisions are yours. A full overview of the section is on the page “Posts and comments in channels”, and how to turn responses into leads - in the article about sales through comments. You can get started for free: open “Edit” →

More on the blog