Whereby Embedded integration for video calls on your website

Visitors leave your site to make a call, and some inquiries get lost along the way. We set up Whereby Embedded turnkey: calls start right on the page, with no app installs or redirects. This shortens the customer journey to a conversation and reduces the load on your team.

Development and maintenance of all types of websites:

Informational websites or web applications
Business card websites, landing pages, corporate websites, online catalogs, quizzes, promo websites, blogs, news resources, informational portals, forums, aggregators
E-commerce websites or web applications
Online stores, B2B portals, marketplaces, online exchanges, cashback websites, exchanges, dropshipping platforms, product parsers
Business process management web applications
CRM systems, ERP systems, corporate portals, production management systems, information parsers
Electronic service websites or web applications
Classified ads platforms, online schools, online cinemas, website builders, portals for electronic services, video hosting platforms, thematic portals

These are just some of the technical types of websites we work with, and each of them can have its own specific features and functionality, as well as be customized to meet the specific needs and goals of the client.

Frequently Asked Questions

Why built-in video calls break the scenario on a website

Built-in calls almost always break not in a demo, but on live traffic.

On a test bench, two engineers on the same network see each other perfectly, but in production half the users sit behind a corporate proxy, some are in Safari on mobile, and the connection drops at the point of entering the room.

A classic failure: the user clicked "Join," the camera was requested, but signaling didn't go through — and instead of a conversation, the person gets an endless spinner.

The cost of such a failure is not a support ticket, but a ruined consultation, demo, or application intake.

Latency and desync between audio and video usually come from a poorly chosen route: when the media stream goes through one region while participants are scattered across continents, latency grows to seconds, and the dialogue turns into radio-style negotiations.

A separate headache is compatibility: different browsers behave differently with camera and microphone access, and strict security policies on the client side silently block device requests. The user doesn't understand what happened and simply leaves.

Even more dangerous are silent failures. If a room is created at a predictable address or an access token lives too long, an outsider can connect to someone else's conversation, and the session recording ends up in open storage.

A data leak from a video call is not an abstract risk, but a reputational blow that is hard to recover from.

That is exactly why video integration is not "inserting a button," but working with a media server, access rights, and network conditions. Below we break down how this is handled in practice: from resilient signaling to access control for each room.

What whereby embedded delivers: measurable improvements

Connection speed instead of app installation

Whereby Embedded is built into the page as a regular block — the guest enters the room directly from the browser, without downloading a client or registering.

The connection comes up because the media stream goes through the service's infrastructure rather than your server: the page only serves the room interface.

In practice, this removes the main barrier — a person who needs to "drop in for a minute" actually does drop in, instead of closing the tab at the installation stage.

Connection stability on weak channels

The service itself selects the media delivery route and switches it when the channel degrades, so the call doesn't fall apart when switching from Wi-Fi to a mobile network.

Quality adaptation happens per participant individually: one user on a weak connection doesn't drag down the picture for everyone else.

For the client, this means a predictable class of failures — instead of "the call dropped," what remains is "quality dipped for a second."

Less load on support

When connecting takes one click and failures are localized on the service side, the flow of requests like "I can't hear," "I can't see," "I can't get in" shrinks.

Our engineers are left with integration: access rights, roles, recording, per-room analytics. Support stops being a dispatcher for every meeting and focuses on the product.

Access and data control

Rooms are created according to your rule — for a specific deal, consultation, or class, with limits on time and participant list.

Access is granted via a link or token, not a "permanent room for everyone." This closes the risk of an outsider getting into someone else's call and simplifies incident investigation: you can see who entered and when.

Readiness for load

A peak sign-up for consultations or a webinar doesn't require scaling your servers — the service handles the media, while your infrastructure only holds the page. That's why launching a new line of calls doesn't turn into a separate capacity project.

Ways to integrate video calls: comparing approaches

There are three fundamentally different ways to embed calls into a website: take a ready-made solution, build your own on a media server, or combine both.

The choice is determined not by the "beauty" of the picture, but by who is responsible for bandwidth, recording, moderation, and what happens when a user's network drops.

Option When it fits Limitations
Ready-made solution (embeddable widget) You need calls in the product quickly, without your own infrastructure Room logic and recording live on the service side, interface customization is limited
Your own build on a media server Strict requirements for data storage, non-standard scenarios, full control over the stream You need your own operations team; scaling and fault tolerance are on you
Hybrid The call core is ready-made, while entry, permissions, and recording are your own Requires careful synchronization of states between the service and your backend

A ready-made solution wins on speed: a room is created via a server call, an iframe is inserted into the page or a client library is connected, and entry permissions are issued by your backend via a token.

The main work goes into authorization, roles, and event handling — joining, leaving, ending the room.

Your own build gives you control over every byte, but shifts onto you the media server, load balancing, TURN for complex networks, and connection quality monitoring.

The hybrid approach covers the compromise: video communication and recording run on a ready-made service, while identification, access, and storage of recordings remain within your own perimeter.

Below we'll look at how this looks in code and what needs to be provided for at each step.

Stages of implementing whereby embedded on a website

Implementing Whereby Embedded begins not with code, but with an audit: we look at how the current authorization is structured, where user and meeting data is stored, and which browsers and devices clients actually use.

At this stage, it becomes clear whether separate rooms are needed for each meeting, how to restrict access, and where to store recordings. Mistakes overlooked here later surface expensively in support.

What the integration process looks like

  1. Website and infrastructure audit. We analyze the current stack, authorization scheme, load, and privacy requirements. We document which call scenarios are needed: one-on-one, group, webinars.
  2. Designing the room scheme. We determine how rooms are created and closed, who gets the moderator role, and how long a link lives. This is the core of the future logic.
  3. Setting up video calls and access. We connect room creation through the server side, issue tokens with a limited lifespan, and configure guest and moderator permissions.
  4. Embedding into the interface. We place the call window on the page, synchronize it with the design, and add loading, error, and meeting-end states.
  5. Testing the connection and scenarios. We test on real devices and networks: weak channel, switching between networks, joining from a phone, working in the background. We separately check fault tolerance — what the user sees if the connection drops.
  6. Handover and documentation. We deliver the configured solution, describe the room scheme, integration points, and the procedure for typical failures.

What matters at each step

The process proceeds in iterations: after the audit we agree on the scheme, after embedding we show a working prototype on your scenarios. This way, edits cost less, and launch doesn't turn into a surprise.

As a result, you get not just a "call" button, but a predictable system where it's clear how to add new meeting types and how to maintain it without us.

What the deliverable includes: configurations and documentation

After project handover, the client is left not with a "folder of code" but with a complete set that allows the video call integration to be developed and maintained without the original author. Below is exactly what we hand over: configurations, diagrams, policies, and documentation.

  • Room and permissions configuration: room creation parameters, participant roles (host, guest, observer), access rules by link and by schedule, limits on the number of connections.
  • Integration diagram: how the frontend obtains an access token, where permission granting lives, how a user's account on the site is linked to their role in the call, failure points and behavior during them.
  • Token issuance policy: lifetime, binding to session and user, procedure for revoking access when an account is blocked or a team member leaves.
  • Recording and storage policy: whether recording is enabled by default, who starts it, where files are stored, retention period, and deletion procedure upon request.
  • Fault tolerance settings: what the user sees when the service is unavailable, how the mode switches, how incidents are logged.
  • Administrator instructions: how to create a room, change permissions, view call history, and export data without a developer.
  • Support policy: request channels, response time for critical and non-critical failures, procedure for updating dependencies and compatibility checks.
  • Deployment documentation: environment variables, access keys, rollout procedure to the test and production environments, rollback steps to the previous version.

We agree on each artifact during the design phase, rather than "adding it on" at the end — this way configurations match real-world operation. Describe your task: we will clarify the composition of the set for your environment and come back with an estimate and a plan.

Case study: how we sped up video calls for a consultation service

An online consultation service handled calls through a built-in player: the client opened a specialist's card, clicked "Connect" and waited for the connection to establish.

On paper everything worked, but in reality up to a third of sessions began with a failure — the person got stuck on the waiting screen, refreshed the page and wrote to support.

The peak load fell on the evening hours, when dozens of pairs connected simultaneously, and that was exactly when connections dropped most often.

We broke down the connection funnel step by step and saw two causes. The first — the room was created at the moment of the click, so establishing the connection and checking access rights happened sequentially and added up to a noticeable pause.

The second — when the connection dropped, the session was not restored: the user returned to the beginning instead of the conversation.

We chose Whereby Embedded because video communication is embedded directly into the service's interface, without switching to a third-party domain, and room management is handled through a programmatic interface.

We started creating the room in advance — at the moment the specialist's card was opened, rather than on click. By the time "Connect" is pressed, only the entry remains, and the waiting pause was cut by roughly threefold.

We configured reconnection so that after a brief drop the person returned to the same conversation instead of starting over.

What changed in the metrics

Metric Before After
Share of successful sessions ~70% 96%
Time to first contact 8-12 seconds 3-4 seconds
Support requests about calls every third connection isolated cases

The load on support dropped so much that the team redirected the freed-up time to product development. Separately, we locked down access: recording and moderation of rooms are tied to roles, not to a link, so an outsider cannot join a conversation via someone else's address.

What the client got

Besides the embedding itself — a room lifecycle scheme, handling of drops and re-entries, role-based access separation and a clear panel showing how many sessions are running right now.

The same approach applies to any service where a video call is part of the core scenario rather than a separate page. Describe your task — we'll come back with an estimate and a work plan.

How does whereby embedded differ from a regular video API?

Whereby Embedded is a ready-made embeddable video component that connects to a page as an interface element rather than as a separate service requiring its own infrastructure.

A classic video API, by contrast, provides a set of low-level methods: signaling, media stream management, rooms, and participants are all assembled by you. Hence the main divergence — where the boundary of your responsibility lies.

In terms of launch speed, the embeddable solution wins predictably: the room is created on the provider's side, and all that remains on the site is to embed the container and pass the session parameters.

A classic API requires designing the server side for issuing tokens, planning the room lifecycle, and handling connection drops — a separate layer of work that directly affects the time to production.

Control and customization are distributed differently.

The embeddable solution confines you to the framework of a ready-made interface: the appearance, set of buttons, and behavior are defined through configuration parameters and events, but you cannot rewrite the room logic to suit yourself.

A classic API gives complete freedom — your own layout, recording, transcription, integration with internal systems — but each such extension falls on your team.

In practice, the choice comes down to the question: is a video call an auxiliary function of the site or its core.

If you need a working scenario for a "consultation," "lesson," or "appointment" within tight deadlines, the embeddable solution handles the task without maintaining media servers.

If video is the central product with non-standard logic, a classic API pays for itself through flexibility.

A mixed option also works: an embeddable solution for basic scenarios and targeted enhancements through events and webhooks where integration with your system is needed.

We analyze both paths for a specific task and say plainly where a ready-made solution is sufficient and where it will hit its limits.

Technical doubts and answers about video calls

Video calls on a website are not just a "call" button, but also questions that come up already at the design stage: how rooms are protected, what happens as the number of participants grows, whether the call will open in the client's browser. Below is a breakdown of typical technical doubts that customers come with.

How is the security of video calls ensured?

Rooms are created on the server side using a short-lived token: a meeting link does not grant access without a valid token, and the participant's role (host or guest) is fixed when it is issued.

The token lives for a limited time and is tied to a specific room — an intercepted link does not open someone else's meeting. The media stream goes over an encrypted channel, and access to recording and moderation remains only with the organizer.

Will the solution handle a growing number of participants?

The architecture is designed for scaling: rooms are distributed across nodes, and the load is balanced automatically, so adding parallel calls requires no manual intervention. For webinars and group sessions, a separate mode with restricted guest permissions is configured.

During peak loads, additional resources are connected — the number of simultaneous meetings grows without quality degradation.

What about browser and mobile device compatibility?

The call works in current versions of Chrome, Safari, Firefox, and Edge without installing plugins — camera and microphone permission is enough. On mobile, it opens in the browser or in the app's built-in window.

If the client has an outdated browser or corporate network restrictions, a fallback scenario is provided: connecting via a link through a backup channel.

Is it possible to restrict access and keep records?

Yes. Access is granted via a token with a set lifetime, and the list of participants and connection time are recorded in the log. This makes it possible to close the room to outsiders, revoke access early, and investigate an incident using the logs if one occurs.

If you still have questions about a specific scenario — describe the task, and we will come back with an estimate and an integration plan.

Let's discuss your video call integration task

So that video call integration doesn't turn into a frontend rewrite, we start the review with your scenario: who calls, from which role, what happens after the call ends — recording, transcription, passing data into your system.

The architecture depends on the answers: embedding the room directly into the page, a separate route or a modal window, as well as how participant permissions are granted and how access to the room is restricted.

Describe the task — we'll come back with a project estimate and a work plan.

During the review we pin down the integration points with your backend, the participant authorization scheme, browser and mobile client requirements, as well as behavior on connection loss and page reload.

  • Review of the calling scenario: one-on-one, group rooms, webinars, support with an operator.
  • Access granting scheme: guest links, authorization via your accounts, room lifetime.
  • Integration points: call events, webhooks, recording and storage, passing data into a CRM or user account.
  • Interface requirements: where the call window is placed, how it behaves on mobile, what the user sees when access to the camera and microphone is denied.
  • A staged work plan with intermediate results that can be verified on a test environment.
  • Estimate of timelines and team composition for your scope, with no hidden stages.

Discussing the task takes one conversation: you describe how calls should work in your product, we ask clarifying questions about load, roles and data.

Then we send an estimate and a work plan broken down by stages — you see what is done and in what order, and you make a decision on timelines and priorities.

If you already have a prototype on Whereby Embedded or a draft integration — show it, we'll review the current state and suggest what to refine and what to rebuild.

Architecture consulting at this stage helps avoid baking in decisions that will have to be redone as the number of calls grows.

Our competencies:

Latest works

  • Development of a web application for FEEDME
    Development of a web application for FEEDME
    1394
  • Development of an online store for the company FURNORO
    Development of an online store for the company FURNORO
    1369
  • Development of a web application for Enviok
    Development of a web application for Enviok
    1141
  • CRM development for Chasseurs
    CRM development for Chasseurs
    1153
  • Website development for SBH Partners
    Website development for SBH Partners
    1232
  • Website development for Red Pear
    Website development for Red Pear
    642