subscribe #
Subscribes to this collection with a set of filters.
The provided callback will be called everytime a notification is received from Kuzzle.
subscribe(filters, [options], callback) #
Arguments | Type | Description |
---|---|---|
filters | JSON Object | Koncorde Filters |
options | object | (Optional) Subscription configuration. Passed to the Room constructor. |
callback | function | Callback to call every time a notification is received on this subscription |
Options #
Option | Type | Description | Default |
---|---|---|---|
volatile | JSON Object | Additional information passed to notifications to other users | null |
scope | string | Filter document notifications depending on their scope status. You may receive entering documents (scope: in ), leaving documents (scope: out ), all documents changes (scope: all ) or filter these notifications completely (scope: none ). This filter does not affect pub/sub messages or user events. | all |
state | string | Filter document notifications depending on the state of the modifying request. You may receive real-time notifications when a document is about to be changed (state: pending ), or be notified when the change has been fully written in the database (state: done ), or both (state: all ). This filter does not affect pub/sub messages or user events. | done |
subscribeToSelf | boolean | (Don't) subscribe to notifications fired as a consequence of our own queries | true |
users | string | Filter notifications fired upon a user entering the room (user: in ), leaving the room (user: out ), or both (user: all ). Setting this variable to none prevents receiving these notifications | none |
The options
object is directly passed to the Room constructor. See the Room object documentation for more information about these options and notifications.
Return Value #
Returns an object exposing the following method: onDone(callback)
The callback
argument is called when the subscription ends, either successfully or with an error.
Usage #
kuzzle
.collection('collection', 'index')
.subscribe({equals: {title: 'foo'}}, function (error, result) {
// called each time a new notification on this filter is received
// check the Room/Notifications section of this documentation
// to get notification examples
})
.onDone(function (err, roomObject) {
// Handles the subscription result. Can be chained.
});
Edit this page on Github(opens new window)