Skip to main content
Floating mounts a launcher in a corner of the page. The panel handles agent sign-in, caller ID selection, number entry and in-call controls — nothing else to build.

CDN

No build step required.
Ringee.mount(options) is an alias for Ringee.createFloating(options). Pin a version in production:

npm

The UI calls initialize() for you. agentEmail only prefills the email field — Ringee always requires the agent to prove access to that address via one-time code.

Options

Floating accepts every common option plus:

Control it from your app

startCall() is safe to call before session restoration finishes. The controller keeps the requested call and places it once the dialer reaches ready. If the agent is not authenticated, the OTP flow appears first.

Wiring it to a contact record

Start calls from a real click or tap. Browsers block audio playback that was not triggered by a user gesture — auto-dialing on page load produces AUDIO_PLAYBACK_BLOCKED.

React to call state

The controller forwards the headless events:
Full list: Events.

Clean up

destroy() on the controller only unmounts the visual surface. Destroy the underlying dialer too, or WebRTC stays connected.

Next steps

Theming

Match your product’s look

React and Next.js

Mount and unmount safely in a component