customer-android-kotlin

//core/com.kustomer.core.models

Package com.kustomer.core.models

[androidJvm]
This package contains all Common model classes for Kustomer

Types

Name Summary
KusAssistantAction [androidJvm]
@JsonClass(generateAdapter = true)
data class KusAssistantAction(val input: KusAssistantActionInput?)
KusAssistantActionInput [androidJvm]
@JsonClass(generateAdapter = true)
data class KusAssistantActionInput(val pendingAssistant: KusPendingAssistant?)
KusAssistantRule [androidJvm]
@JsonClass(generateAdapter = true)
data class KusAssistantRule(val name: String?, val id: String?, val criteria: KusCriteria?, val actions: List<KusAssistantAction>?, val hasAiAutomationId: Boolean? = false)
KusChatAvailability [androidJvm]
@JsonClass(generateAdapter = false)
enum KusChatAvailability : Enum<KusChatAvailability>
KusChatSetting [androidJvm]
@JsonClass(generateAdapter = true)
data class KusChatSetting(var id: String?, val widgetType: KusPreferredView, val teamName: String? = "", val teamIconUrl: String?, val greeting: String?, @Json(name = "activeForm")val activeFormId: String?, val activeAssistant: String?, val enabled: Boolean, var kbId: String?, var brandId: String?, var showAllBrandsConversationHistory: Boolean = false, @Json(name = "offhoursDisplay")val availability: KusChatAvailability = KusChatAvailability.KUS_OFFLINE, @Json(name = "offhoursImageUrl")val offHoursImageUrl: String?, @Json(name = "offhoursMessage")val offHoursMessage: String?, val volumeControl: KusVolumeControlSetting?, @Json(name = "waitMessage")val defaultWaitMessage: String?, val closableChat: Boolean, val singleSessionChat: Boolean, val noHistory: Boolean, val showBrandingIdentifier: Boolean? = true, val showTypingIndicatorCustomerWeb: Boolean? = false, val showTypingIndicatorWeb: Boolean? = false, val sharedPubNubKeySet: KusChatSetting.PubNubKeySet, val orgPubNubKeysets: List<KusChatSetting.PubNubKeySet>?, val assistantRules: List<KusAssistantRule>?, val disableAttachments: Boolean? = false, val outboundChatEnabled: Boolean? = false, val sentry: KusSentryConfig? = null, var rawJson: Any?)
This object contains organization specific settings configured in Kustomer
KusCriteria [androidJvm]
@JsonClass(generateAdapter = true)
data class KusCriteria(@Json(name = "and")val andCriteriaRawMap: List<Map<String, Any>>?, @Json(name = "or")var orCriteriaRawMap: List<Map<String, Any>>?, var andCriteria: MutableList<KusCriterion>? = mutableListOf(), var orCriteria: MutableList<KusCriterion>? = mutableListOf())
KusCriterion [androidJvm]
@JsonClass(generateAdapter = true)
data class KusCriterion(var customerProperty: KusCustomerProperty? = null, var sessionProperty: KusSessionProperty? = null, var operator: KusOperator? = null, var value: Any? = null)
KusCustomerProperty [androidJvm]
data class KusCustomerProperty(val propertyType: KusCustomerPropertyType, val name: String? = null)
KusCustomerPropertyType [androidJvm]
enum KusCustomerPropertyType : Enum<KusCustomerPropertyType>
KusIdentifiedCustomer [androidJvm]
@JsonClass(generateAdapter = true)
data class KusIdentifiedCustomer(var id: String? = null, var rawJson: Any? = null, var customerId: String?, val trackingId: String? = null, val email: String? = null, val externalId: String? = null, val verified: Boolean = false, val verifiedAt: Long?, val createdAt: Long, val updatedAt: Long, val token: String?)
KusInitialMessage [androidJvm]
class KusInitialMessage(val body: String, val direction: KusChatMessageDirection) : Parcelable
KusOperator [androidJvm]
enum KusOperator : Enum<KusOperator>
KusPendingAssistant [androidJvm]
@JsonClass(generateAdapter = true)
data class KusPendingAssistant(val assistant: String?, val startDialog: String?, val isProactive: Boolean?)
KusPreferredView [androidJvm]
@JsonClass(generateAdapter = false)
enum KusPreferredView : Enum<KusPreferredView>
KusResult [androidJvm]
sealed class KusResult<out R>
A generic wrapper class which contains the status of a response Object type returned by a successful response
KusSchedule [androidJvm]
@JsonClass(generateAdapter = true)
data class KusSchedule(var id: String?, var rawJson: Any?, val name: String, val hours: Map<Int, List<List<Int>>>, val timezone: String, @Json(name = "default")val enabled: Boolean, var holidays: List<KusSchedule.KusHoliday>?)
KusSentryConfig [androidJvm]
@JsonClass(generateAdapter = true)
data class KusSentryConfig(val android: String?)
KusSessionProperty [androidJvm]
data class KusSessionProperty(val propertyType: KusSessionPropertyType)
KusSessionPropertyType [androidJvm]
enum KusSessionPropertyType : Enum<KusSessionPropertyType>
KusSettingsVersion [androidJvm]
@JsonClass(generateAdapter = true)
data class KusSettingsVersion(var settingsVersion: String?)
KusTrackingToken [androidJvm]
@JsonClass(generateAdapter = true)
data class KusTrackingToken(var id: String? = null, var rawJson: Any? = null, var customerId: String? = null, val trackingId: String? = null, val token: String, val verified: Boolean = false, val isSharedPref: Boolean = false, val email: String? = null, val externalId: String? = null)
KusVolumeControlSetting [androidJvm]
@JsonClass(generateAdapter = true)
data class KusVolumeControlSetting(val customWaitMessage: String?)
KusWidgetType [androidJvm]
@JsonClass(generateAdapter = false)
enum KusWidgetType : Enum<KusWidgetType>