Messaging
In the panel, Channels › Messaging is where you connect the WhatsApp number, Instagram account and Telegram bot your customers write to: incoming messages land in Conversations, your team replies from the panel, and the reply goes back on the same channel. It has three tabs: WhatsApp, Instagram and Telegram. The connection status at the top of the screen shows every connected number and account on one row; the Transcribe voice messages card above the tabs covers voice messages on the three customer channels (below). Alerts for your team (the former Team alerts tab) have been under Team › Notifications since 30 October 2026; the link under the tabs takes you there.
You connect your WhatsApp number and your Instagram account on this screen; SemAgent's Meta app is approved for messaging. Telegram doesn't need Meta — it works the moment you paste the bot token.
Connecting a WhatsApp number
You need a business account on Facebook (Meta Business), a number, and a payment method in WhatsApp Manager for Meta's message charges (Meta bills you directly). When you click a connect button, Meta's window opens: you pick your business, WhatsApp account and number. It takes under a minute.
| Option | What happens |
|---|---|
| Connect my app's number | The number you use in the WhatsApp Business app on your phone. You keep using the app: messages show up both on your phone and in Conversations, and what you send from the phone lands in the same conversation. The app must be version 2.24.17 or later. |
| Connect a new number | A number that has never been used on WhatsApp and can receive an SMS or voice call. It will only be used from Conversations. |
| Connect with token | For when Meta's window won't open or doesn't show your number (for example while Meta's review is in progress). In Meta Business Suite › Settings › Users › System users you create a system user, add your WhatsApp account to it and generate a permanent token with whatsapp_business_messaging and whatsapp_business_management, then paste it here. We ask Meta whether the token can reach your number; the token is stored encrypted and never shown again. With one WhatsApp account and one number, the ID fields can stay empty. |
A number connected to another SemAgent account can't be connected. If Meta's window can't complete the connection, the screen says why: for example, the app needs updating, the number has to be disconnected from another platform first (Settings › Account › Business Platform in the app), or the feature isn't offered in your number's region.
Using the number alongside the phone app
- History and contacts: If you choose to share them while connecting, the last 180 days of chats and the names in your contacts are imported. Progress shows on the number's card (“Importing chat history: 55% · 1,240 messages so far”); keep the app open until it finishes. Imported chats sit in Conversations as closed conversations: you find them in the archive and in search, they don't fill your inbox and use no credits. When the customer writes again, the conversation opens.
- Contact names show in the conversation as “In your contacts: …” and name conversations that have no name; they don't replace the customer's WhatsApp profile name.
- Meta accepts the import only within 24 hours of connecting. After a temporary error SemAgent retries every few minutes, and the card has a Request again now button. If the 24 hours pass, the card says so; to import anyway, disconnect in the app under Settings › Account › Business Platform and connect the number again.
- Limits: This number sends at most 20 messages per second. Group chats, broadcast lists, calls and disappearing messages don't come to Conversations.
- Keep the app in use: Open the WhatsApp Business app at least every two weeks; if the phone goes unused for about 14 days, Meta disconnects the number and the card says why.
- If the phone changes: When the app is reinstalled or the number moves to another phone, the card shows Paused and replies aren't sent. Meta usually reconnects on its own within a few minutes, and sending resumes.
- Disconnecting in the panel doesn't unlink the phone app. To fully disconnect on Meta's side, tap Settings › Account › Business Platform › Disconnect in the app.
Connecting an Instagram account
Your Instagram account must be professional (Business or Creator) and linked to a Facebook Page, and you need messaging access on that Page (admin or moderator). In the Instagram app, Settings › Messages and story replies › Message controls › Connected tools › “Allow access to messages” must be on. Connect Instagram opens a Facebook window; only Pages with a linked Instagram account are listed, and DMs to the account you pick land in Conversations.
Continue with your account in the window and approve every permission it asks for; once it closes, the panel carries on. After you pick the account the window opens again for a moment and closes: no permission screen, just the connection approval. When Facebook asks you to log in, the window can lose its link to the panel; the panel then says Waiting for the Facebook window and waits three more minutes. If you finished logging in and approving in Facebook it continues on its own; if you gave up, press Cancel. If your browser blocks the window, allow pop-ups for this site from the icon in the address bar and press the button again.
- Ice breakers: ready-made questions Instagram shows when a customer writes to the account for the first time (up to 4). The tapped question arrives as a message and the AI answers it. The questions are stored at Meta.
- Quick reply suggestions: short buttons shown next to “Talk to a person” in the AI's first reply (up to 3, at most 20 characters). When the customer taps one, its text arrives as a message.
- A reply to your story shows as “Replied to your story”, an edited message carries an “Edited” note (the original is still visible), and an unsent message shows as withdrawn.
- A reply typed in the Instagram app lands in the same conversation, and the AI stays quiet there.
Connecting a Telegram bot
Telegram has no approval process: you create the bot, paste its token, and the channel works. It does not wait for Meta's app review.
- In Telegram, message @BotFather, send
/newbot, and give the bot a name and a username (the username must end inbot). - BotFather gives you a token (in the form
123456789:AA…). Treat it as a password: don't share it. - On Messaging › Telegram, paste the token and press Connect. The token is verified with Telegram, stored encrypted, and the connection that brings messages to SemAgent is set up automatically.
- Write to the bot yourself to try it. The customer's first message lands in Conversations.
Only private chats become conversations. If you add the bot to a group, messages there do not open a support conversation — group listening is a separate feature. The bot's own messages are not read back either.
- There is no 24-hour window. The timing rule on WhatsApp and Instagram does not apply on Telegram: you can write to the customer whenever you want, and no approved template is needed.
- Opening questions: you can define up to 4 ready questions shown when the customer sends
/start. If you define them,/startgets a greeting and buttons and the AI is not called (no credits spent). Leave them empty and nothing changes. - Quick reply suggestions: short buttons that appear next to “Talk to an agent” in the AI's first answer. When the customer taps one, its text counts as a message they wrote.
- The AI switch is per bot and on by default; turn it off and every message waits for your team.
- If the customer blocks the bot, sending fails and the reason appears under the message. That is not a connection fault; the bot keeps working.
- Disconnecting: use Disconnect on the card. The connection on Telegram's side is dropped first, then the token is deleted — so a customer's message cannot get lost in between. Past conversations stay.
The 24-hour window and approved templates
On WhatsApp and Instagram you can reply freely within 24 hours of the customer's last message. The open conversation's header and the channel label in the reply box show the time left (for example via WhatsApp · 1h 10m left); when the customer is waiting for a reply and less than two hours are left, the list shows a Window chip. Telegram is outside this section: there is no timing rule there.
| Channel | After the window closes |
|---|---|
| You can only write with an approved template. In Conversations, Write with an approved template lists the approved templates of your WhatsApp account; you fill in the variables and preview what the customer will see. Templates with an image (JPG or PNG, up to 5 MB), video (MP4, up to 16 MB) or document (PDF, up to 10 MB) header can be sent too; the file goes out once it passes the virus scan. Marketing and verification code templates can't be sent from here. Templates are written in WhatsApp Manager and approved by Meta; Meta bills template messages to your WhatsApp account and no SemAgent credits are used. When the customer replies, the window opens again. | |
| Once the 24 hours are up, nothing can be sent until the customer writes again; Instagram has no approved templates. If the human agent tag is on (it needs a separate Meta approval), an agent can write for up to 7 days; the label in the composer reads human agent · … left. |
Get warned before the window closes: with … before the WhatsApp or Instagram reply window closes selected under Team › Notifications (30, 60, 120 or 180 minutes; on by default, 60 minutes), your team gets one alert per window when a waiting customer's window is about to close. Who gets it, and how: Notifications › Who gets it?
Message statuses and reactions
- Under each message you send, its status shows: sending, sent, delivered, read (seen on Instagram). A message that didn't go out shows why: the window is closed, the rate limit was reached, a payment method problem on the WhatsApp account, a broken connection and so on.
- A customer's reaction to a message (such as 👍) shows as a small chip on that message; if they remove it, the chip goes away. Reactions you give from the phone app show the same way. The AI doesn't reply to reactions.
- Locations, contact cards, stickers and similar messages show with their type; a location gets an “Open in maps” link.
AI and files
Each number's and account's card has two switches; like every switch on the screen they save as soon as you change them (the screen says "Switches on this page save as soon as you change them."):
| Switch | Details |
|---|---|
| Let the AI answer first | When on (the default), the AI answers the customer's message from your knowledge base; each answer uses credits just like the chat bubble. The first reply carries a “Talk to a person” button: when the customer taps it, or the AI isn't sure, the conversation goes to your team. Photos without text, and voice messages while transcription is off, get a short reply that uses no credits. When off, every message waits for your team. |
| Accept files, voice notes and video | When on, photos, documents, voice notes and videos the customer sends are added to the conversation; they can be downloaded once the virus scan comes back clean, and your agents can send files from the panel too. Each stored file costs 1 credit. When off, nothing is downloaded and the file is shown with the reason instead. Instagram accepts a narrow set: PNG/JPG, MP4, M4A and PDF. Rules: Conversations › File sharing. |
Ask for consent in chat (WhatsApp)
With the Ask for consent in chat (WhatsApp) switch on the WhatsApp tab turned on, your agents can ask the customer for marketing consent in a WhatsApp conversation: Ask for consent in Conversations sends the customer a question with Yes / No buttons; only an answer given with the buttons goes into the person's consent ledger, and the customer gets a confirmation. It is off by default. Only owners and admins see and change the card (their role needs edit on the Conversations (inbox) row); an admin who can't open Messaging finds the same switch in Customers. Until 30 October 2026 the switch was only in Customers.
Get legal advice before turning it on: Turkish rules say consent cannot be asked for by sending a commercial message. The consent ledger and its rules: Customers › Marketing consent.
Transcribing voice messages
With Transcribe voice messages (above the tabs) on, voice messages your customers send on WhatsApp, Instagram or Telegram are turned into text: the AI answers what they said instead of saying it can't read voice messages, and your team reads the transcript under the voice message in Conversations (Transcribed). It is off by default; the setting applies to all channels of the account.
- The file setting must be on too: Accept files, voice notes and video on WhatsApp and Files, voice and video on Instagram. With it off, the recording isn't downloaded, so it can't be transcribed.
- Cost: each transcribed voice message costs 1 credit; the audio file itself costs 1 credit like any stored file. The AI's reply uses credits like any reply.
- Privacy: the audio is sent to Soniox (USA) only to be transcribed and is deleted there once done. You may need to mention this in your privacy notice.
- Recordings that can't be transcribed: if a recording is too long (about 10 minutes or more), has no clear speech or transcription fails, the reason shows under the message and you reply after listening to it. If the AI is on, the customer gets the short reply as before.
Connection health
The Connection status at the top of the screen shows every connected WhatsApp number, Instagram account and Telegram bot on one row; a channel with nothing connected has no row (its tab shows the connect card). Open details on a row with a problem opens that channel's tab.
| Status | Meaning |
|---|---|
| Connected | The account is connected and messages are coming in. |
| Needs attention | Outbound sending is blocked on WhatsApp (see A send block below), or the WhatsApp Business app on your phone was reinstalled or the number moved to another phone: Meta usually reconnects on its own within a few minutes, and replies won't send until then. |
| Not working | SemAgent's access was removed on Meta's side, or there's another problem with the connection; customer messages may not be reaching Conversations. Reconnect it from its tab. |
- All three channels are checked daily. If something breaks, the card turns red, says why, and the event is written to the Audit log. On Telegram two things are asked separately: is the bot token still valid, and are messages still reaching SemAgent. If the second one broke, the connection is re-established once on its own; if that fails, the card turns red.
- A send block is a separate state. If your WhatsApp account has no valid payment method (or Meta applied another restriction), incoming messages keep working and your team can reply; only the messages you start are blocked — campaign sends and templates sent after the 24-hour window has closed. That is why the card does not turn red: the connection really is fine. A separate warning appears under the number carrying Meta's own stated reason, and admins get an email with its own subject. Reconnecting in the panel will not fix it; clear the reason in WhatsApp Manager › Billing.
- Disconnection email: When a number, account or bot disconnects, the people whose role has edit on the Widget settings row and the account owner get one email saying why: access was removed on Meta's side, the granted permission became invalid, the Instagram messaging subscription dropped, the bot token no longer works (it may have been revoked or regenerated in BotFather), or the bot's messages no longer reach SemAgent. The same disconnection doesn't send another email for 7 days. No email is sent when the connection works again; the card turns green.
- Temporarily failing to reach Telegram does not count as a disconnection: the card's status is unchanged and no email is sent.
- The card has Reconnect and Disconnect. After disconnecting, messages to the number or account no longer land in Conversations; past conversations stay.
Charges
- Meta bills WhatsApp message charges directly to your WhatsApp account. From 1 October 2026, replies within the 24 hours are also charged; the first 1,000 replies per number each month are free. Approved templates are charged by category.
- These charges don't use SemAgent credits. You can see an approximate amount on the WhatsApp message charges card under Reports › Channels; the exact amount is in WhatsApp Manager › Billing.
- Telegram has no platform charge. Telegram does not charge per message; only the AI's answer uses your SemAgent credits.
- SemAgent credits are used for each AI answer (as in the chat bubble) and for each stored incoming file (1 credit).
Post comments
Once your Instagram account is connected, Channels › Messaging › Instagram lists the comments on your recent posts. Your team can reply publicly or hide a comment from there.
This screen needs Meta's comment permission. Meta requires the instagram_manage_comments permission to read, reply to and hide comments, and has not yet approved it for SemAgent. On accounts without it the screen says Comment permission wasn't granted for this Instagram account and no comments can be shown. Direct messages (DMs) are not affected.
Comments do not land in Conversations — a comment sits under a public post, it is not a conversation. The list is read live from Meta and never stored in SemAgent, so a deleted or edited comment leaves no ghost in the panel.
- A public reply appears under the comment. No reply box opens on your own comments.
- Hiding is not deleting: a hidden comment still shows to its author and comes back with one click. Deleting a customer's comment is not something the panel does.
- The last 12 posts, 25 comments each, 60 rows in total — Meta has no single “all comments on this account” endpoint, each post is queried separately.
Your reply is public: anyone who can see the post can read it. Sending an automatic private message (DM) to whoever commented is off for now; the panel doesn't show this setting.
Automated messages are not answered
Not everything that arrives at a number is a customer question: verification codes, “do not reply” notices, unsubscribe footers and system notifications land in the same inbox. The AI does not auto-reply to those.
🔑 The message is not hidden, only the reply stops. It always shows up in Conversations with a badge saying why the AI stayed quiet, and your team can answer by hand. That distinction is deliberate: a message swallowed in silence costs far more than an unnecessary reply.
| Badge | What happened |
|---|---|
| verification code | The message matches a verification or login code pattern. |
| no-reply | A “do not reply” / “this is an automated message” pattern. |
| unsubscribe | An unsubscribe or opt-out line. |
| type | A non-conversational payload: system notice, reaction, placeholder. |
| rate | The hourly auto-reply ceiling for this conversation was reached (12 by default). |
| burst | Eight or more messages arrived from one person within 60 seconds. |
The thresholds bound abuse. If a number floods you automatically, the AI goes quiet in that conversation and your credits stop draining; the messages still appear and your team still sees what is happening. Hitting a threshold does not close the conversation — replies resume in the next hour.
The filter answers when in doubt. The patterns require a full match, so sentences like “I never got the code” or “I keep saying stop but the parcel has not arrived” count as real customers and get answered. Silencing a real customer costs more than replying to an automated message.