3.2 KiB
3.2 KiB
events
let events = zulip.events()
Functions
events.register
Registers an event queue.
Parameters
applyMarkdown
: Whether event content should be rendered as Markdown to HTML.clientGravatar
: Whether Gravatars should not be sent if a user does not have an avatar. (true
means thatavatar_url
will benil
if the user does not have an avatar;false
means that anavatar_url
will be a Gravatar).eventTypes
: The types of events to receive, or an empty array for all events.- example:
["messages"]
for new messages - example:
["subscriptions"]
for changes in the current user's subscriptions - example:
["realm_user"]
for changes in the users in the current realm - example:
["pointer"]
for changes in the current user's pointer - example:
["subscriptions", "pointer"]
for a combination of multiple events - example:
[]
for all events
- example:
allPublicStreams
: Whether events should be received from all public streams.includeSubscribers
: Whether events should be received for the subscribers of each stream.fetchEventTypes
: The same aseventTypes
, but used to fetch initial data. IffetchEventTypes
is not set,eventTypes
is used, and if neither are set, then no events are used.narrow
: A Zulip narrow to search for messages in.narrow
should be an array of arrays consisting of filters.- example:
[["stream", "test here"]]
- example:
[["stream", "zulip-swift"], ["sender", "theskunkmb@gmail.com"]]
- example:
callback
: A callback, which will be passed a dictionary containingqueue_id
, the ID of the new queue andlast_event_id
, the initial event ID to receive an event with, or an error if there is one.
events.get
Gets events from a queue.
Parameters
queueID
: The ID of the queue to get events from.lastEventID
: The last event ID to acknowledge. Events after the event with thelastEventID
ID will be sent.-1
can be used to receive all events.dontBlock
: Whether the response should be nonblocking. Iffalse
, the response will be sent after a new event is available or after a few minutes as a heartbeat.callback
: A callback, which will be passed a list of events, or an error, if there is one.
events.deleteQueue
Deletes a queue.
Parameters
queueID
: The ID of the queue to delete.callback
: A callback, which will be passed an error if there is one.
Examples
events.register
events.register(
applyMarkdown: false,
clientGravatar: false,
eventTypes: ["messages"],
allPublicStreams: false,
includeSubscribers: false,
narrow: [["stream", "test here"]],
callback: { (queue, error) in
// Prints the queue dictionary, containing `queue_id` and
// `last_event_id`.
print(queue)
}
)
events.get
events.get(
queueID: "1300:400",
lastEventID: 8,
dontBlock: true,
callback: { (events, error) in
// Prints the events array.
print(events)
}
)
events.deleteQueue
events.deleteQueue(
queueID: "1301:200",
callback: { (error) in
// The queue has now been deleted.
}
)