All use cases
SupportAutomation

Merge Telegram, Avito and chat requests into one queue

Three tabs open at once, and "who takes this one" gets settled by shouting. The agent builds one queue: one customer, one row. Replies stay with you.

Medium · 15 min · set up once

What you get

Shared queue · 09:15 · 23 open
1  A. Smirnova  Telegram + email, same customer  19 h wait
2  Kovalev Ltd  Avito, asking for an invoice      6 h wait
3  m.orlov@…    email, repeat on the same issue   4 h wait
4  +7 921…-14   Telegram, voice note  → needs a person
Replies stay with you: the queue only sets the order

A sample on made-up data — your numbers will be your own.

Who it fits

  • Operators keep three tabs open, and "who takes this one" is settled by shouting into the team chat.
  • A customer writes on Telegram and by email — either two people reply, or nobody does.

When it won't work

The channels already sit in a helpdesk — a second queue simply stops being opened.

How the agent does it

1

Describe the priority

One main condition and two or three tie-breakers is enough. Say separately which field lets you recognize the same customer in different channels.

2

Run the merge

The agent collects the messages and merges threads only on an exact match. Every row shows why it sits where it sits.

3

Check the merges

The queue works because people trust it without re-checking. A stray row or a wrong merge costs more here than a mistake in a report.

What you set

Connect Telegram, Avito and email. By hand: your priority rule, the field that identifies one customer across channels, and what counts as closed.

What you'll need

Telegram
Avito
Почта

Starter prompt

Copy the prompt or open it straight in a chat with the agent.

Prompt for the agent

Merge the new messages from Telegram, Avito and email for [period] into a single queue. Merge messages from one customer into a single thread by [phone / email / order number]. If only the name matched — do not merge: keep the rows separate and add a "possible duplicate" flag. Set the order like this: the primary key is [waiting time], with equal waiting time these go higher: [repeat ticket / mention of payment or a refund / customer with status X]. Do not write replies: each row contains only the substance of the ticket in one phrase. Output a queue: time of the first message, how long it has waited, channel, customer, substance, priority and the condition it was assigned by.

Open in chat
Check the result

Check the queue. List: — threads merged on an inexact customer match; — rows whose priority does not follow from my rule — explain each one; — tickets already answered in another channel but still hanging open; — service notifications, autoresponders and mailouts taken for tickets; — messages with no text — an attachment, a sticker, a voice note — that cannot be judged on substance; — what you can rebuild yourself and where you need my decision on the merging rule.

A second prompt — the agent uses it to review its own work and show what's left for you.

Related use cases