Kuzzle #
The Kuzzle class is the main class of the SDK. Once instantiated, it represents a connection to your Kuzzle server.
It gives access to the different features of the SDKs:
- access to the available controllers
- SDK events handling
- resilience to connection loss
- network request queue management
Namespace #
You must include the following namespace:
using KuzzleSdk;
Properties #
Property | Type (default) | Description | writable |
---|---|---|---|
AuthenticationToken | string ( null ) | Authentication token used for API requests | yes |
AutoRecover | bool ( false ) | Queue requests when network is down and automatically replay them when the SDK successfully reconnects | yes |
EventHandler | EventHandler | KuzzleEventHandler instance used for event management | no |
| InstanceId
|
string| SDK instance unique identifier (send in the
Volatile
data) | no | | MaxQueueSize
| int
(
-1
) | Maximum amount of elements that the queue can contains (If set to -1, the size is unlimited) | yes | | MaxRequestDelay
| int
(
1000
) | Maximum delay between two requests to be replayed | yes | | MinTokenDuration
| int
(
3600000
) | Minimum duration of a Token before being automaticaly refreshed (If set to -1 the SDK does not refresh the token automaticaly) | yes | | QueueFilter
| Func<JObject, bool>
(
null
) | Function to filter the request queue before replaying requests. | yes | | RefreshedTokenDuration
| int
(
3600000
) | Minimum duration of a Token after refresh (If set to -1 the SDK does not refresh the token automaticaly) | yes | | SdkName
| string| SDK name with version number | no |
Network protocol #
Each instance of the class communicates with the Kuzzle server through a class representing a network protocol implementation.
The following protocols are available in the SDK:
Volatile data #
You can tell the Kuzzle SDK to attach a set of "volatile" data to each request. You can set it as an object contained in the Volatile
property of the Kuzzle object. The response to a request containing volatile data will contain the same data in its Volatile
property. This can be useful, for example, in real-time notifications for user join/leave notifications to provide additional informations about the client who sent the request.
Note that you can also set volatile data on a per-request basis (on requests that accept a Volatile
field in their options
argument). In this case, per-request volatile data will be merged with the global Volatile
object set in the constructor. Per-request fields will override global ones.