Skip to main content

Auki::ConjureKit::ConjureKit

ConjureKit main module - provides basic networking and can be used in combination with other modules to provide more functionality.

Inherits from Auki.ConjureKit.IConjureKit

Public Functions​

Name
AukiCredentialsGetCredentials()
Gets the current credentials.
NetworkQualityGetNetworkQuality()
Returns the current NetworkQuality object.
ConjureKitConfigurationGetConfiguration()
Gets the current configuration.
TransformGetCameraTransform()
Gets the camera transform
State State.
ConjureKitBridgeGetConjureKitBridge()
Gets an object with common Unity callbacks.
SessionGetSession()
Gets currently joined Session object.
voidRegisterModule(IConjureKitModule module)
(Internal) Registers IAukiModule-conforming objects so they get updated and receive messages.
TimestampGetNowAsProtobufTimestamp()
Standard way of getting the current time.
longGetNowMilliseconds()
Gets current time in milliseconds.
ConjureKit(Transform mainCamera, string appKey, string appSecret, AukiDebug.LogLevel logLevel =AukiDebug.LogLevel.DEBUG)
voidInit(string configUri, Action onComplete =null, Action< string > onFailed =null)
voidInit(ConjureKitConfiguration configuration, Action onComplete =null, Action< string > onFailed =null)
voidConnect(Action< Session > onComplete =null, Action< string > onFailed =null)
voidConnect(string sessionId, Action< Session > onComplete =null, Action< string > onFailed =null)
voidConnect(string sessionId, string configUri, Action< Session > onComplete =null, Action< string > onFailed =null)
voidConnect(string sessionId, ConjureKitConfiguration configuration, Action< Session > onComplete =null, Action< string > onFailed =null)
boolConnectionErrorMessageIsInternetConnectivityIssue(string message)
voidNotifyARCameraCalibrated()
Notify Auki calibration has been achieved.
voidDisconnect()
Call when you want to disconnect from the Aukiverse.
voidSetHagallFeatureConfiguration(IEnumerable< string > modules =null, IEnumerable< string > featureFlags =null)
Sets lists of required Hagall modules and feature flags.
voidSetHagallMinVersion(string version)
Sets application-side request for minimum Hagall version.
voidAddComponentType(string componentTypeName, Action< uint > onComplete, Action< string > onError =null)
Low-level ECS method to add a component type to the Session. This method is obsolete and is scheduled for deletion. It is replaced by Session::AddComponentType().
voidGetComponentTypeId(string componentTypeName, Action< uint > onComplete, Action< string > onError =null)
Low-level ECS method to get the id of a component type by name from a Session. This method is obsolete and is scheduled for deletion. It is replaced by Session::GetComponentTypeId().
voidGetComponentTypeName(uint componentTypeId, Action< string > onComplete, Action< string > onError =null)
Low-level ECS method to get the name of a component type by id from a Hagall Session. This method is obsolete and is scheduled for deletion. It is replaced by Session::GetComponentTypeName().
voidAddComponent(uint componentTypeId, uint entityId, byte[] data, Action onComplete, Action< string > onError =null)
Low-level ECS method to add a component type to the Session. This method is obsolete and is scheduled for deletion. It is replaced by Session::AddComponent().
voidDeleteComponent(uint componentTypeId, uint entityId, Action onComplete, Action< string > onError =null)
Low-level ECS method to delete a component from an Entity in a Session. This method is obsolete and is scheduled for deletion. It is replaced by Session::DeleteComponent().
voidGetComponents(uint componentTypeId, Action< List< EntityComponent >> onComplete, Action< string > onError =null)
Low-level ECS method to get all components of a component type in a Session. This method is obsolete and is scheduled for deletion. It is replaced by Session::GetComponents().
boolUpdateComponent(uint componentTypeId, uint entityId, byte[] data)
Low-level ECS method to update a component on an Entity in a Session. This method is obsolete and is scheduled for deletion. It is replaced by Session::UpdateComponent().
voidSubscribeToComponentType(uint componentTypeId, Action onComplete, Action< string > onError =null)
Low-level ECS method to subscribe to updates of a component type This method is obsolete and is scheduled for deletion. It is replaced by Session::SubscribeToComponentType().
voidUnsubscribeToComponentType(uint componentTypeId, Action onComplete, Action< string > onError =null)
Low-level ECS method to unsubscribe to updates of a component type This method is obsolete and is scheduled for deletion. It is replaced by Session::UnsubscribeToComponentType().
uintGetNewRequestId()
(Internal) Returns a new request id.
voidRequest(uint requestId, byte[] request, Action< byte[]> onResponse, Action< string > onError)
(Internal) Sends a request to the server.
void_SendBytes(byte[] data)
(Internal) Sends a message directly to Hagall.
boolSendCustomMessage(uint[] participantIds, byte[] data)
Sends a custom message to other Participants.
voidMeasurePing(Action< double > onComplete =null, Action< string > onError =null)
Perform a millisecond ping measurement of the current session. The measurement is aggregated to ConjureKit's NetworkQuality object, accessible via ConjureKit.GetNetworkQuality().

Public Properties​

Name
Action< ConjureKitConfiguration >OnInit
Called after successful initialization or re-initialization of ConjureKit and its modules. The argument passed to OnInit is the configuration for which initialization took place.
Action< Participant >OnParticipantJoined
Called when a new Participant joins the Session.
Action< uint >OnParticipantLeft
Called when a Participant left the Session.
Action< Entity >OnEntityAdded
Called when an Entity is added to the Session.
Action< Entity >OnEntityAddedResponse
Called when an Entity add request was successful.
Action< uint >OnEntityDeleted
Called when an Entity was deleted from the Session.
Action< ComponentUpdateBroadcast >OnComponentUpdate
Low-level ECS callback method that is called when a component update is broadcast from a Session. Might later be replaced by Systems.
Action< ComponentAddBroadcast >OnComponentAdd
Low-level ECS callback method that is called when a component is added to an Entity in a Session. Might later be replaced by Systems.
Action< ComponentDeleteBroadcast >OnComponentDelete
Low-level ECS callback method that is called when a component is deleted from an Entity in a Session. Might later be replaced by Systems.
Action< uint >OnEntityDeletedResponse
Called when an Entity delete request was successful.
Action< Session >OnJoined
Called when a Session was joined.
Action< Entity >OnParticipantEntityCreated
Called after calibration or immediately after joining a Session if this Participant is its host.
Action< Session >OnLeft
Called when a Session was left. The argument is an inert copy of the old Session object as it stood before leaving.
Action< State state has changed.
Action< Entity >OnEntityUpdatePose
Called when an Entity's Pose has been updated.
Action< CustomMessageBroadcast >OnCustomMessageBroadcast
Called when a custom message broadcast has been received.
ActionOnApplicationBackground
Called when the application was sent to the background.
ActionOnApplicationForeground
Called when the application was sent to the foreground.

Public Functions Documentation​

function GetCredentials​

AukiCredentials GetCredentials()

Gets the current credentials.

Return: AukiCredentials struct

function GetNetworkQuality​

NetworkQuality GetNetworkQuality()

Returns the current NetworkQuality object.

Return: NetworkQuality object

function GetConfiguration​

ConjureKitConfiguration GetConfiguration()

Gets the current configuration.

Return: AukiConfiguration struct

function GetCameraTransform​

Transform GetCameraTransform()

Gets the camera transform

Return: Transform

function GetState​

State GetState()

Gets current ConjureKit State.

Return: ConjureKit State

function GetConjureKitBridge​

ConjureKitBridge GetConjureKitBridge()

Gets an object with common Unity callbacks.

Return: ConjureKitBridge object

function GetSession​

Session GetSession()

Gets currently joined Session object.

Return: Session object or null when not in a Session

function RegisterModule​

void RegisterModule(
IConjureKitModule module
)

(Internal) Registers IAukiModule-conforming objects so they get updated and receive messages.

Parameters:

  • conjureKitModule Module to be registered

function GetNowAsProtobufTimestamp​

Timestamp GetNowAsProtobufTimestamp()

Standard way of getting the current time.

Return: Current time

function GetNowMilliseconds​

long GetNowMilliseconds()

Gets current time in milliseconds.

Return: Current time in milliseconds

function ConjureKit​

ConjureKit(
Transform mainCamera,
string appKey,
string appSecret,
AukiDebug.LogLevel logLevel =AukiDebug.LogLevel.DEBUG
)

function Init​

void Init(
string configUri,
Action onComplete =null,
Action< string > onFailed =null
)

function Init​

void Init(
ConjureKitConfiguration configuration,
Action onComplete =null,
Action< string > onFailed =null
)

function Connect​

void Connect(
Action< Session > onComplete =null,
Action< string > onFailed =null
)

function Connect​

void Connect(
string sessionId,
Action< Session > onComplete =null,
Action< string > onFailed =null
)

function Connect​

void Connect(
string sessionId,
string configUri,
Action< Session > onComplete =null,
Action< string > onFailed =null
)

function Connect​

void Connect(
string sessionId,
ConjureKitConfiguration configuration,
Action< Session > onComplete =null,
Action< string > onFailed =null
)

function ConnectionErrorMessageIsInternetConnectivityIssue​

bool ConnectionErrorMessageIsInternetConnectivityIssue(
string message
)

function NotifyARCameraCalibrated​

void NotifyARCameraCalibrated()

Notify Auki calibration has been achieved.

function Disconnect​

void Disconnect()

Call when you want to disconnect from the Aukiverse.

function SetHagallFeatureConfiguration​

void SetHagallFeatureConfiguration(
IEnumerable< string > modules =null,
IEnumerable< string > featureFlags =null
)

Sets lists of required Hagall modules and feature flags.

Parameters:

  • modules List of required Hagall modules, default is null for none
  • featureFlags List of required Hagall feature flags, default is null for none

function SetHagallMinVersion​

void SetHagallMinVersion(
string version
)

Sets application-side request for minimum Hagall version.

Parameters:

  • version Hagall version number in format vMajor[.Minor][.Patch](e.g.,)

function AddComponentType​

void AddComponentType(
string componentTypeName,
Action< uint > onComplete,
Action< string > onError =null
)

Low-level ECS method to add a component type to the Session. This method is obsolete and is scheduled for deletion. It is replaced by Session::AddComponentType().

function GetComponentTypeId​

void GetComponentTypeId(
string componentTypeName,
Action< uint > onComplete,
Action< string > onError =null
)

Low-level ECS method to get the id of a component type by name from a Session. This method is obsolete and is scheduled for deletion. It is replaced by Session::GetComponentTypeId().

function GetComponentTypeName​

void GetComponentTypeName(
uint componentTypeId,
Action< string > onComplete,
Action< string > onError =null
)

Low-level ECS method to get the name of a component type by id from a Hagall Session. This method is obsolete and is scheduled for deletion. It is replaced by Session::GetComponentTypeName().

function AddComponent​

void AddComponent(
uint componentTypeId,
uint entityId,
byte[] data,
Action onComplete,
Action< string > onError =null
)

Low-level ECS method to add a component type to the Session. This method is obsolete and is scheduled for deletion. It is replaced by Session::AddComponent().

function DeleteComponent​

void DeleteComponent(
uint componentTypeId,
uint entityId,
Action onComplete,
Action< string > onError =null
)

Low-level ECS method to delete a component from an Entity in a Session. This method is obsolete and is scheduled for deletion. It is replaced by Session::DeleteComponent().

function GetComponents​

void GetComponents(
uint componentTypeId,
Action< List< EntityComponent >> onComplete,
Action< string > onError =null
)

Low-level ECS method to get all components of a component type in a Session. This method is obsolete and is scheduled for deletion. It is replaced by Session::GetComponents().

function UpdateComponent​

bool UpdateComponent(
uint componentTypeId,
uint entityId,
byte[] data
)

Low-level ECS method to update a component on an Entity in a Session. This method is obsolete and is scheduled for deletion. It is replaced by Session::UpdateComponent().

Return: bool indicating success or failure of putting update message on send queue

function SubscribeToComponentType​

void SubscribeToComponentType(
uint componentTypeId,
Action onComplete,
Action< string > onError =null
)

Low-level ECS method to subscribe to updates of a component type This method is obsolete and is scheduled for deletion. It is replaced by Session::SubscribeToComponentType().

function UnsubscribeToComponentType​

void UnsubscribeToComponentType(
uint componentTypeId,
Action onComplete,
Action< string > onError =null
)

Low-level ECS method to unsubscribe to updates of a component type This method is obsolete and is scheduled for deletion. It is replaced by Session::UnsubscribeToComponentType().

function GetNewRequestId​

uint GetNewRequestId()

(Internal) Returns a new request id.

Return: New request id

function Request​

void Request(
uint requestId,
byte[] request,
Action< byte[]> onResponse,
Action< string > onError
)

(Internal) Sends a request to the server.

Parameters:

  • requestId Request id
  • request Byte array-encoded request
  • onResponse Callback on success
  • onError Callback on failure

function _SendBytes​

void _SendBytes(
byte[] data
)

(Internal) Sends a message directly to Hagall.

Parameters:

  • data

function SendCustomMessage​

bool SendCustomMessage(
uint[] participantIds,
byte[] data
)

Sends a custom message to other Participants.

Parameters:

  • participantIds An array of Participant Ids. Set to null to message all participants
  • data An array of custom data. Maximum supported size is <= 1024 bytes for Hagall version < 0.4.101, <= 10240 bytes for Hagall version >= 0.4.101

Return: Success or failure

function MeasurePing​

void MeasurePing(
Action< double > onComplete =null,
Action< string > onError =null
)

Perform a millisecond ping measurement of the current session. The measurement is aggregated to ConjureKit's NetworkQuality object, accessible via ConjureKit.GetNetworkQuality().

Parameters:

  • onComplete Callback on success, invoked with millisecond amount
  • onError Callback on failure

Public Property Documentation​

property OnInit​

Action< ConjureKitConfiguration > OnInit;

Called after successful initialization or re-initialization of ConjureKit and its modules. The argument passed to OnInit is the configuration for which initialization took place.

Return: Joining Participant object

property OnParticipantJoined​

Action< Participant > OnParticipantJoined;

Called when a new Participant joins the Session.

Return: Joining Participant object

property OnParticipantLeft​

Action< uint > OnParticipantLeft;

Called when a Participant left the Session.

Return: Id of Participant that left

property OnEntityAdded​

Action< Entity > OnEntityAdded;

Called when an Entity is added to the Session.

Return: Added Entity object

Note: This event is triggered only for entities created by other participants in the session.

property OnEntityAddedResponse​

Action< Entity > OnEntityAddedResponse;

Called when an Entity add request was successful.

Return: Added Entity object

property OnEntityDeleted​

Action< uint > OnEntityDeleted;

Called when an Entity was deleted from the Session.

Return: Id of deleted Entity

Note: This event is triggered only for entities deleted by other participants in the session.

property OnComponentUpdate​

Action< ComponentUpdateBroadcast > OnComponentUpdate;

Low-level ECS callback method that is called when a component update is broadcast from a Session. Might later be replaced by Systems.

Return: ComponentUpdateBroadcast

property OnComponentAdd​

Action< ComponentAddBroadcast > OnComponentAdd;

Low-level ECS callback method that is called when a component is added to an Entity in a Session. Might later be replaced by Systems.

Return: ComponentAddBroadcast

property OnComponentDelete​

Action< ComponentDeleteBroadcast > OnComponentDelete;

Low-level ECS callback method that is called when a component is deleted from an Entity in a Session. Might later be replaced by Systems.

Return: ComponentDeleteBroadcast

property OnEntityDeletedResponse​

Action< uint > OnEntityDeletedResponse;

Called when an Entity delete request was successful.

Return: Id of deleted Entity

property OnJoined​

Action< Session > OnJoined;

Called when a Session was joined.

property OnParticipantEntityCreated​

Action< Entity > OnParticipantEntityCreated;

Called after calibration or immediately after joining a Session if this Participant is its host.

Return: ParticipantEntity object

property OnLeft​

Action< Session > OnLeft;

Called when a Session was left. The argument is an inert copy of the old Session object as it stood before leaving.

property OnStateChanged​

Action< State > OnStateChanged;

Called when the ConjureKit state has changed.

Return: New ConjureKit state

property OnEntityUpdatePose​

Action< Entity > OnEntityUpdatePose;

Called when an Entity's Pose has been updated.

property OnCustomMessageBroadcast​

Action< CustomMessageBroadcast > OnCustomMessageBroadcast;

Called when a custom message broadcast has been received.

Return: CustomMessageBroadcast object

property OnApplicationBackground​

Action OnApplicationBackground;

Called when the application was sent to the background.

property OnApplicationForeground​

Action OnApplicationForeground;

Called when the application was sent to the foreground.