PrivMX DOCS
Swift

Handling Events

Registering callbacks for events.

How to subscribe to events, assuming you have already started listening.

Connection

try? endpointSession?.registerCallback(
    for: privmx.endpoint.core.LibConnectedEvent.self,
    from: .platform, identified: "SOME_UNIQUE_IDENTIFIER",
    { eventData in
        // some actions when lib connect
    })
    
try? endpointSession?.registerCallback(
    for: privmx.endpoint.core.LibDisconnectedEvent.self,
    from: .platform, identified: "SOME_UNIQUE_IDENTIFIER",
    { eventData in
        // some actions when lib disconnects
    })

Threads

try? endpointSession?.registerCallback(
    for: privmx.endpoint.thread.ThreadCreatedEvent.self,
    from: .thread, identified: "SOME_UNIQUE_IDENTIFIER",
    { eventData in
        // some actions when new thread created
    })
    
try? endpointSession?.registerCallback(
    for: privmx.endpoint.thread.ThreadUpdatedEvent.self,
    from: .thread, identified: "SOME_UNIQUE_IDENTIFIER",
    { eventData in
        // some actions when thread updated
    })

try? endpointSession?.registerCallback(
    for: privmx.endpoint.thread.ThreadStatsChangedEvent.self,
    from: .thread, identified: "SOME_UNIQUE_IDENTIFIER",
    { eventData in
        // some actions when  thread stats changes
    })
    
try? endpointSession?.registerCallback(
    for: privmx.endpoint.thread.ThreadDeletedEvent.self,
    from: .thread, identified: "SOME_UNIQUE_IDENTIFIER",
    { eventData in
        // some actions when thread deleted
    })

Read more about Thread events.

Stores

try? endpointSession?.registerCallback(
    for: privmx.endpoint.store.StoreCreatedEvent.self,
    from: .store, identified: "SOME_UNIQUE_IDENTIFIER",
    { eventData in
        // some actions when new store created
    })
    
try? endpointSession?.registerCallback(
    for: privmx.endpoint.store.StoreUpdatedEvent.self,
    from: .store, identified: "SOME_UNIQUE_IDENTIFIER",
    { eventData in
        // some actions when store updated
    })

try? endpointSession?.registerCallback(
    for: privmx.endpoint.store.StoreStatsChangedEvent.self,
    from: .store, identified: "SOME_UNIQUE_IDENTIFIER",
    { eventData in
        // some actions when store stats changes
    })
    
try? endpointSession?.registerCallback(
    for: privmx.endpoint.store.StoreDeletedEvent.self,
    from: .store, identified: "SOME_UNIQUE_IDENTIFIER",
    { eventData in
        // some actions when store deleted
    })

Read more about Store events.

Inboxes

try? endpointSession?.registerCallback(
    for: privmx.endpoint.inbox.InboxCreatedEvent.self,
    from: .inbox, identified: "SOME_UNIQUE_IDENTIFIER",
    { eventData in
        // some actions when new inbox created
    })
    
try? endpointSession?.registerCallback(
    for: privmx.endpoint.inbox.InboxUpdatedEvent.self,
    from: .inbox, identified: "SOME_UNIQUE_IDENTIFIER",
    { eventData in
        // some actions when inbox updated
    })

try? endpointSession?.registerCallback(
    for: privmx.endpoint.inbox.InboxDeletedEvent.self,
    from: .inbox, identified: "SOME_UNIQUE_IDENTIFIER",
    { eventData in
        // some actions when inbox deleted
    })

Read more about Inbox events.

KVDBs

try? endpointSession?.registerCallback(
    for: privmx.endpoint.kvdb.KvdbCreatedEvent.self,
    from: .kvdb, identified: "SOME_UNIQUE_IDENTIFIER",
    { eventData in
        // some actions when new kvdb created
    })
    
try? endpointSession?.registerCallback(
    for: privmx.endpoint.kvdb.KvdbUpdatedEvent.self,
    from: .kvdb, identified: "SOME_UNIQUE_IDENTIFIER",
    { eventData in
        // some actions when kvdb updated
    })

try? endpointSession?.registerCallback(
	for: privmx.endpoint.kvdb.KvdbStatsChangedEvent,
	from: .kvdb, identified: "SOME_UNIQUE_IDENTIFIER"),
	{ eventData in
		// some actions when kvdb stats changed
	})
    
try? endpointSession?.registerCallback(
    for: privmx.endpoint.kvdb.KvdbDeletedEvent.self,
    from: .kvdb, identified: "SOME_UNIQUE_IDENTIFIER",
    { eventData in
        // some actions when kvdb deleted
    })
		

Read more about KVDB events.

We use cookies on our website. We use them to ensure proper functioning of the site and, if you agree, for purposes such as analytics, marketing, and targeting ads.

This is documentation for PrivMX v2.5, which is no longer actively maintained.

For up-to-date documentation, go to latest here

On this page

Handling Events | PrivMX Docs