This API reference is still in early developmental stages. As such, some information may be missing or out of date. Feel free to refer to this documentation as a low level index of Engine classes and functions. However please reference the latest code for a complete understanding of functionality and performance.
Real-time applications built in Unity can be connected to the Cavrnus platform by adding the Cavrnus Plugin to their Package Manager via the git link: https://github.com/Cavrnus-Inc/cavrnus-sdk.git
There are multiple layers of convenience tools to make it easier for you to set up and get going with Cavrnus with little-to-no coding required. However, all of those tools are built using the functions and types below. For improved control and performance, any advanced user of Cavrnus can call them.
InitializeCavrnus | Sets up all static helpers and systems required for Cavrnus to run |
Checks if you are logged in | |
Gets user credentials, allowing you to join valid spaces and make other requests | |
Creates a guest user account with a given name and joins as that user | |
Throws an even when user authentication is complete |
FetchJoinableSpaces | Gets a list of all current spaces which can be joined |
Triggers when spaces become available to you that you can join, or when their metadata changes | |
Checks if there is any active connection to a space | |
JoinSpace | Connects to a Space; joining voice & video and recieving/processing the journal |
AwaitAnySpaceConnection | Triggers immediately if you are already in a space, otherwise triggers as soon as you connect |
AwaitAnySpaceBeginLoading | Triggers when you begin attempting to join a space, returning the ID of the space being joined |
ExitSpace | Disconnects you from a given space. You will stop recieving property updates, and lose user & voice connections |
DefineColorPropertyDefaultValue | Defines what the application will show if a new prop value has not been assigned |
GetColorPropertyValue | Gets the current property value, whether the default or the one currently set |
BindColorPropertyValue | Triggers an Event when the property changes, plus an inital event when first bound |
BeginTransientColorPropertyUpdate | Begins a temporary property update. This can be updated with UpdateWithNewData() This will show for everyone in the space, but will not be saved unless you call Finish(). |
PostColorPropertyUpdate | Updates the property value at the given path and synchronizes the data to the server |
DefineBoolPropertyDefaultValue | Defines what the application will show if a new prop value has not been assigned |
GetBoolPropertyValue | Gets the current property value, whether the default or the one currently set |
BindBooleanPropertyValue | Triggers an Event when the property changes, plus an inital event when first bound |
BeginTransientBoolPropertyUpdate | Begins a temporary property update. This can be updated with UpdateWithNewData() This will show for everyone in the space, but will not be saved unless you call Finish(). |
PostBoolPropertyUpdate | Updates the property value at the given path and synchronizes the data to the server |
DefineFloatPropertyDefaultValue | Defines what the application will show if a new prop value has not been assigned |
GetFloatPropertyValue | Gets the current property value, whether the default or the one currently set |
BindFloatPropertyValue | Triggers an Event when the property changes, plus an inital event when first bound |
BeginTransientFloatPropertyUpdate | Begins a temporary property update. This can be updated with UpdateWithNewData() This will show for everyone in the space, but will not be saved unless you call Finish(). |
PostFloatPropertyUpdate | Updates the property value at the given path and synchronizes the data to the server |
DefineStringPropertyDefaultValue | Defines what the application will show if a new prop value has not been assigned |
GetStringPropertyValue | Gets the current property value, whether the default or the one currently set |
BindStringPropertyValue | Triggers an Event when the property changes, plus an inital event when first bound |
BeginTransientStringPropertyUpdate | Begins a temporary property update. This can be updated with UpdateWithNewData() This will show for everyone in the space, but will not be saved unless you call Finish(). |
PostStringPropertyUpdate | Updates the property value at the given path and synchronizes the data to the server |
DefineVectorPropertyDefaultValue | Defines what the application will show if a new prop value has not been assigned |
GetVectorPropertyValue | Gets the current property value, whether the default or the one currently set |
BindVectorPropertyValue | Triggers an Event when the property changes, plus an inital event when first bound |
BeginTransientVectorPropertyUpdate | Begins a temporary property update. This can be updated with UpdateWithNewData() This will show for everyone in the space, but will not be saved unless you call Finish(). |
PostVectorPropertyUpdate | Updates the property value at the given path and synchronizes the data to the server |
DefineTransformPropertyDefaultValue | Defines what the application will show if a new prop value has not been assigned |
GetTransformPropertyValue | Gets the current property value, whether the default or the one currently set |
BindTransformPropertyValue | Triggers an Event when the property changes, plus an inital event when first bound |
BeginTransientTransformPropertyUpdate | Begins a temporary property update. This can be updated with UpdateWithNewData() This will show for everyone in the space, but will not be saved unless you call Finish(). |
PostTransformPropertyUpdate | Updates the property value at the given path and synchronizes the data to the server |
CavrnusLivePropertyUpdate | <<Pending>> |
BindGlobalPolicy | Binds an event to throw when a policy is/isn't allowed for the user (returns false until policies are fetched & resolved) |
BindSpacePolicy | Binds an event to throw when a policy is/isn't allowed for the user in a given space (returns false until policies are fetched & resolved) |
Instantiates the given object with no set properties (note you will need to pull the Container ID out of the Spawned Object and assign property values to it). | |
Destroys the given object. |
AwaitLocalUser | Throws an event when the local CavrnusUser arrives in the space |
GetCurrentSpaceUsers | Gives the list of current users in a space |
BindSpaceUsers | Triggers whenever users join or leave a given space |
BindUserVideoFrames | Throws an event with the user's current stream image |
SetLocalUserMutedState | Set my muted state |
SetLocalUserStreamingState | Set my streaming state |
GetCurrentAudioInputDevice | Gets the current microphone |
FetchAudioInputs | Gets available microphones |
UpdateAudioInput | Sets which microphone to use |
FetchVideoInputs | Gets available camera/stream sources |
UpdateVideoInput | Sets which camera/stream source to use |