AI contact center for messengers: Telegram, WhatsApp, Viber and VK

Incoming requests across four messengers at once — a familiar picture: some dialogs get lost, operators can't keep up with replies. We develop a turnkey AI contact center: a unified queue, auto-reply, hybrid mode, and an operator assistant. We reduce response time and take peak load off the team.
Frequently Asked Questions

Why an AI contact center breaks under peak inquiry volume

Peak inquiry load almost never aligns with shift schedules.

In the morning and evening, the queue of conversations grows faster than operators free up: while there are ten inquiries in it, response wait time is measured in seconds, but by the three-hundredth it is already measured in tens of minutes.

Some people leave without waiting for an answer and return with the same question in another channel.

Overnight inquiries complete the picture. Their share is small, but they are exactly the ones left hanging without an answer until morning: by opening time, the person has either solved the issue themselves or written to a competitor.

In reports, such lost inquiries are almost invisible — the conversation formally did not start, so it did not make it into the statistics.

A separate problem is inquiries lost between channels. One customer writes in a messenger, repeats the question in a second one, then calls: the system has three unrelated conversations and not a single closed one.

The operator finds out the context anew, and response wait time grows for everyone queued behind them.

The root cause is not the number of operators on the line, but that channels are not brought into a single flow with conversation state preserved and clear routing rules.

While every message lives in a separate window, every morning starts with sorting through what accumulated overnight. Let's break down how this is closed.

What changes after implementation: response speed and workload

The first thing visible after launch is the share of inquiries closed without an operator.

The bot completes typical scenarios on its own (order status, booking, return, delivery terms), while complex ones are handed to a human with context already gathered: conversation history, channel, clarified details.

Checkpoints we use to verify the result:

  • Auto-response share — calculated by conversations closed without operator involvement, not by the number of replies; overnight inquiries are included here as well.
  • First response time — stops depending on shift load: the reply goes out within seconds both during peak hours and outside business hours.
  • 24/7 support — no night shift needed: the queue does not pile up until morning, and inquiries are not lost at shift handover.
  • Operator workload — people move away from the stream of identical questions to complex cases that require judgment and accountability.
  • Cost of downtime — the no-answer window shrinks to zero: an inquiry in Telegram or another channel is processed immediately, not from shift opening.

We take metrics weekly: auto-response share, first response time, number of escalations and repeat inquiries. They show which scenarios to extend and which topics to deliberately leave to operators.

Operating modes: auto-response, hybrid, operator assistant

Operating mode is set not for the entire contact center, but at the level of channel and inquiry type: in Telegram and VK, soft rules are usually kept, while in WhatsApp they are strict because of the response window and template messages.

That is why the project fixes a "channel × queue × mode" matrix, and it can be changed without rewriting the scenario.

Mode When it fits Limitations
Auto-response Homogeneous flow: order status, booking, reference information. The answer fits within 2–3 replies Works only on labeled topics: a composite request or non-standard wording takes the scenario beyond its logic
Hybrid mode Mixed flow where some inquiries are typical and some require investigation, but headcount expansion is not planned Requires a confidence threshold and escalation rules; in borderline cases, some work is lost at the junction between bot and operator
Operator assistant Complex sales, complaints, long correspondence, priority customers — the bot does not respond to the customer directly Speeds up operators but does not reduce their number; the result depends on knowledge base completeness and search quality

Handing the conversation to a human is a standard rule, not an emergency exit. Triggers include an explicit customer request, a repeated question, negative sentiment, and the absence of a suitable topic in the scenario.

At the moment of handoff, the operator receives the message history, tags, and a draft response — the customer does not repeat the context anew.

We check scenario limitations before launch: we run a regression set of real channel conversations, mark where auto-response reaches a dead end, and only after that assign a mode for each queue.

Contact center implementation stages: from conversation audit to handover

We start from real conversations, not templates: first we look at how operators respond now, where inquiries are lost, and which questions repeat most often.

Then we assemble the scheme, connect channels, and test the assistant on live traffic — only after that do we hand it over to operation.

  1. Conversation audit. We export history from all channels, label inquiry topics, and calculate the share of typical questions — usually 60–70% of conversations are closed by recurring scenarios. Separately, we record where people leave without waiting for an answer.

  2. Scenario map. We build a conversation tree: what the assistant handles itself, where it calls an operator, and at which step it passes context to them. For each branch, we define the exit condition and escalation rule so the bot does not get stuck on misunderstanding.

  3. Channel connection. We bring Telegram, WhatsApp, Viber, and VK into a single core: the bot conducts conversations in each messenger, and the operator sees all inquiries in one window. Conversation history and inquiry status are preserved when the customer moves between channels.

  4. Knowledge base. We break regulations, price lists, and typical answers into short fragments so the assistant responds to the point and cites the source. Updating a document changes answers immediately, without code changes.

  5. Pilot launch on real traffic. We enable the assistant on part of the inquiries and compare it with operator performance: share of auto-closed conversations, number of escalations, first response time. We fix acceptance criteria before launch, not after.

  6. Team training and handover to operation. We show operators and the manager the panel, conversation review, and scenario setup, and leave instructions for typical changes.

    We hand over access, documentation, and monitoring, fix the knowledge base update procedure, and remain in contact according to the support agreement.

What we hand over: scenarios, schemes, regulations

We format each artifact so that your support team can accept it and change it further without us. Below is the mandatory package for an AI contact center: nothing remains "in the developer's head" or in chat.

  • Scenario tree — all conversation branches with transition conditions, return points, and closed dead ends. A new branch is added in the editor and released after tests are run, without code changes.
  • Knowledge base — the facts from which the assistant takes answers: regulations, terms, inquiry statuses. Every statement has a source specified, so a change in terms or deadlines is an edit to one section, not a rewrite of the scenario.
  • Escalation rules — which signals send the conversation to an operator: negative sentiment, a repeated question, a topic outside the knowledge base, refusal to confirm data. With queue priorities and message history in the card.
  • Integration scheme — what data goes where between channels and the accounting system, where reference data is stored, and what we show the customer if an external service is unavailable.
  • Error review procedure — how an unsuccessful conversation is caught and reviewed: a log with confidence scores, a weekly sample, review, editing the knowledge base or branch, and rechecking on the same examples.
  • Operator instructions — queue handling, response templates, shift handover, and actions to take when a channel fails.
  • Set of reference conversations — we use it to check any change before release so that editing one branch does not break the others.

Case study: four channels, a single queue, metrics before and after

Starting point

The client had four channels — Telegram, WhatsApp, Viber, and VK — and each lived in its own funnel. The operator kept four windows open, messages from one person were not merged, and at night the conversation waited until morning.

Pre-launch measurements: first response took an average of 3–4 hours, and every fifth request remained completely unanswered.

Single queue: what we did and what measurements showed

As a first step, we brought several channels into a single queue: a common message format and merging conversations by customer so the operator sees the entire correspondence, regardless of which messenger it came from.

Then we split the flow by priorities — repeat inquiries and questions about an already placed order are raised higher, while typical ones are closed by the bot before handoff to a human.

The third contour is conversation review: each closed conversation is labeled by topic, and this map shows which requests repeat and where the scenario breaks.

Metric Before After
First response 3–4 hours up to 5 minutes
Unanswered inquiries every fifth isolated
Operator windows 4 1
Conversations per shift baseline +60%

The class of failures also changed: instead of lost inquiries, there is predictable handoff to an operator with preserved context.

How a button-based scenario differs from an agent with a knowledge base

A button-based scenario is a pre-defined transition tree: the developer determines the conversation route, and the customer chooses from ready-made options.

An agent with a knowledge base first recognizes intent in free text, then searches for the answer in regulations, tariffs, and order data. The difference is not in "smartness," but in who is responsible for the route — hardcoded logic or a model.

The tree answers quickly and consistently as long as the question fits within a few typical topics. As soon as a person writes "move the delivery to tomorrow and change the address," they either press "other" or leave. Each new topic is a separate scenario edit, so maintenance grows along with the range of questions.

For the agent, intent recognition determines the topic, knowledge base search collects relevant fragments, and the answer is formed for the customer's wording.

If there is not enough data, the agent clarifies or hands the conversation to an operator along with the message history. The weak point is mirror-image: quality depends on how up-to-date the knowledge base is, not on the number of defined branches.

In practice, the choice of approach is almost always hybrid: buttons are kept where unambiguous action is needed — payment, cancellation, order confirmation — and the agent is connected for everything else.

This option removes load from the first line without breaking critical operations; Telegram, WhatsApp, Viber, and VK use the same logic layer.

Common technical concerns before launch

Before launch, technical teams ask roughly the same things: what to do with unrecognized requests, how to transfer logic from the current solution, how quality is measured, and how a new channel is connected.

What happens to unrecognized requests?

The conversation is saved with context: channel, message history, recognition confidence. Below the threshold, it is transferred to an operator, and the fragment goes into a sample for review.

We expand wording examples for the required intent, and the share of unrecognized requests falls iteration by iteration.

Can scenarios be transferred from the current system?

We do not copy the logic; we rebuild it as a state tree: branches, transition conditions, escalation points. While the new contour is running, the old one remains enabled — we run identical conversations through both and compare the result before switching traffic.

How are quality and edits checked after launch?

There is a set of test conversations, including incomplete and deliberately complex ones. Before an update, we run regression: share resolved without an operator, first response time, number of escalations.

The scenario is stored as configuration — edits are checked on the same set, versions are saved, and rollback is available.

How is a new channel connected?

The channel connects as a separate adapter to the common conversation model — the scenario does not need to be rewritten. We account for platform limitations: available button types, response window, template message rules. The new channel immediately enters the same analytics as the others.

Let's discuss the task: what is needed for an estimate and plan

An estimate for an AI contact center does not require a full technical document — a few inputs are enough to show the scale and boundaries.

Below is what is worth preparing in advance: with this set, we will return with a work plan and channel connection scheme, not with generic clarifying questions.

  • Task description: which inquiries we remove from operators — consultations, order statuses, booking, returns — and what deliberately remains with humans.
  • Channel composition: Telegram, WhatsApp, Viber, VK — which are already running, under which accounts, and whether there are provider-side limitations.
  • Inquiry volume: conversations per day, peak hours, share of repeats, and share of inquiries outside business hours.
  • Typical questions: 20–30 frequent wordings, their shares, and those the operator closes without escalation.
  • What already exists: CRM, knowledge base, telephony, message history — and in what form access to them is available.
  • Escalation rules: which topics the conversation must go to a human for, within what time, and in which channel.
  • Limitations: requirements for storing message history, personal data handling, and who makes decisions on response content.

The absence of some data does not block the estimate — the channel composition and volume already show the solution outline and stage order.

We build the work plan so that the first launch covers the most frequent scenarios in one or two channels, while the rest are connected after checking answer quality on real conversations.

Describe the task in free form: what contact center exists now and what should change. We will return with an estimate, a staged work plan, and a list of access requirements needed from your side.

AI Development Areas

Latest works

  • B2B ADVANCE company website development
    B2B ADVANCE company website development
    1542
  • Development of a web application for FEEDME
    Development of a web application for FEEDME
    1394
  • Website development for BELFINGROUP
    Website development for BELFINGROUP
    1081
  • Development of an online store for the company FURNORO
    Development of an online store for the company FURNORO
    1369
  • B2B Advance company logo design
    B2B Advance company logo design
    816
  • Development of a web application for Enviok
    Development of a web application for Enviok
    1142