The embedded model
The SDK renders TORTUS inside a sandboxed iframe in a container you provide. Your application and TORTUS communicate over a secure message channel: you send instructions (start a consultation, navigate a screen) and TORTUS sends events back (started, completed, error). Your users never leave your application, and patient data is handled inside the protected TORTUS experience.Standby mode
The client always starts in standby mode afterloadTortus() resolves. The standby screen waits for instructions until you start a consultation or navigate elsewhere.
client.display('standby').
Event-driven architecture
All consultation and meeting handling is event-based. You subscribe withclient.on(...) and react to lifecycle events such as consultation:started, consultation:completed, and consultation:error. Each event carries a reference so you can correlate it with your own records.
Completion events hand you a finish() callback that you must call to acknowledge receipt of the results.
Screens and navigation
You can move the embedded experience between screens programmatically:Client lifecycle
The client owns the iframe and all its resources. When you’re done, for example when unmounting the component that hosts TORTUS, calldestroy() to clean everything up.
destroy() releases all resources but does not remove historical data saved in the browser.
Individual consultations and meetings also expose close() for finer-grained teardown.Putting it together
Authentication
How sessions are secured with launch tokens.
Consultations
Start consultations across every mode.
Events & results
Subscribe to the lifecycle and read artifacts.
API reference
The full method surface.