Package-level declarations

Types

Link copied to clipboard
data class HatangUser(val userId: String? = null, val email: String? = null, val name: String? = null, val phone: String? = null, val hash: String? = null, val data: Map<String, Any?>? = null)

The identity a host app attaches to the visitor with identify.

Link copied to clipboard
class InMemoryKeyValueStore(initial: Map<String, String> = emptyMap()) : KeyValueStore

In-memory store for tests and for hosts that opt out of persistence.

Link copied to clipboard
interface KeyValueStore

A tiny async key/value store. The Android module provides one backed by encrypted storage (the token) and one by DataStore preferences.

Link copied to clipboard

Push providers a device token can come from.

Link copied to clipboard
class SessionStore(val siteId: String, secure: KeyValueStore, prefs: KeyValueStore)

Persists a StoredSession under hatang_chat.<siteId>.*: the token in the secure store, everything else in the prefs store.

Link copied to clipboard
data class StoredSession(val token: String? = null, val conversationId: String? = null, val lastSeq: Int = 0, val locale: String? = null, val email: String? = null, val name: String? = null, val pushToken: String? = null, val pushProvider: String? = null, val pushAppVersion: String? = null)

What the SDK remembers between launches for one site.

Properties

Link copied to clipboard

Key under which the install id lives (not site-scoped: one per install).