Skip to main content

Why is my session stuck in waiting?

The waiting state means Reactor has accepted your request and is assigning a GPU. This usually takes a few seconds. Once the status reaches ready, the WebRTC connection is established and media starts flowing. For more information, see Connection lifecycle. Longer waits typically mean capacity for the model is briefly saturated. Your session moves to ready as soon as a GPU frees up, and you don’t pay anything while you wait. If a session stays in waiting for an unusually long time, email your session ID to support@reactor.inc.

How do I switch models without re-authenticating?

List every model the client may use in the token’s scope. Session-scoped tokens carry a resources.models.match list in their authorization_details, and match accepts multiple models — the model is still chosen at connect time via modelName on the SDK, so one JWT covers switching between any of the models it lists for its full lifetime. Minting a token per model works too; scoping each token to exactly the model it’s for is the tightest option. For more information, see Authentication.

What happens if I lose network mid-session?

The session keeps running on the GPU and all model state is preserved. You have 30 seconds to reconnect before the GPU session is automatically terminated. When your network comes back within that window, call reconnect() to resume where you left off. For more information, see Sessions › Disconnecting. The SDK reports unexpected drops through the error handler. If error.recoverable is true, wait the recommended backoff and call reconnect()error.retryAfter seconds in JavaScript/React, error.retry_after_ms milliseconds in Python, defaulting to 3 seconds if the server sent none. See Using the SDK › Reconnection for the exact pattern in JavaScript, React, and Python. The GPU is held for you during the reconnection window, so billing continues until you reconnect or the 30-second timeout expires. For more information, see Recoverable disconnects and Rate Limits.

Can multiple clients connect to the same session?

Yes. A session can serve multiple WebRTC connections at once. Create a session on one client or your backend, then have other clients adopt it by passing its sessionId to connect(). A client that adopted a session (rather than creating it) tears down only its own connection when it disconnects; the session keeps running for its owner. This is a JavaScript SDK feature (2.12.0+). See Sessions › Multiple connections per session.

Does Reactor work in mobile browsers?

Yes. Reactor works in modern mobile browsers on iOS and Android.

Where do I find my session ID?

The SDK exposes it on the session object as soon as the session is created. For the exact field on each SDK, see Session ID. Include it any time you contact support or report a bug. It lets us trace your session through our logs.

How do I check Reactor’s status?

Visit status.reactor.inc for live uptime and incident history.

How do I report a bug?

Email support@reactor.inc. Include your SDK version, session ID, reproduction steps, and browser/OS.

Where can I read more about Reactor’s policies?

Please view our Terms of Service and Privacy Policy for details.

Next steps

Support

Contact the team and get help.

Pricing & Billing

Understand how sessions are billed and how to minimize cost.

Rate Limits

Session quotas, token TTL, and what happens when limits are hit.

Sessions

Connection lifecycle, reconnection, and session IDs.