//core/com.kustomer.core.models.chat
[androidJvm]
This package contains all Chat model classes for Kustomer
| Name | Summary |
|---|---|
| AttachmentPreview | [androidJvm] data class AttachmentPreview(val direction: KusChatMessageDirection) : KusConversationPreview |
| KusActionValueType | [androidJvm] @JsonClass(generateAdapter = false) enum KusActionValueType : Enum<KusActionValueType> |
| KusActiveAssistant | [androidJvm] sealed class KusActiveAssistant Represents active assistant options available in the SDK. |
| KusAnswerBlockMessageTemplate | [androidJvm] @JsonClass(generateAdapter = true) data class KusAnswerBlockMessageTemplate(val body: String, val actions: List<KusMessageAction>, val followupText: String) : KusMessageTemplate, KusArticleMessage |
| KusArticleMessage | [androidJvm] interface KusArticleMessage |
| KusAssistant | [androidJvm] @JsonClass(generateAdapter = true) data class KusAssistant(var id: String = "", var rawJson: String? = null, val name: String?, val publicName: String?, val avatarUrl: String?, var dialog: String = "", var node: String = "", var messages: List<KusChatMessage> = emptyList()) |
| KusAssistantInitialMessage | [androidJvm] @JsonClass(generateAdapter = true) data class KusAssistantInitialMessage(val meta: KusAssistantInitTemplate, val direction: KusChatMessageDirection, val directionType: String?, val importedAt: Long?, val lang: String?, val trackingId: String?) |
| KusAssistantInitNetworkPostBody | [androidJvm] @JsonClass(generateAdapter = true) data class KusAssistantInitNetworkPostBody(val assistant: String, val dialog: String? = null) |
| KusAssistantInitTemplate | [androidJvm] @JsonClass(generateAdapter = true) data class KusAssistantInitTemplate(val template: KusAssistantInitTemplateType) |
| KusAssistantInitTemplateType | [androidJvm] @JsonClass(generateAdapter = true) data class KusAssistantInitTemplateType(val id: String?, val templateType: String?, val body: String?, val actions: Any?) |
| KusAssistantMessageNetworkPostBody | [androidJvm] @JsonClass(generateAdapter = true) data class KusAssistantMessageNetworkPostBody(val assistant: String? = null, val dialog: String? = null, val node: String? = null, val initialMessages: List<Any>? = null, val session: String, val body: String, val lastDeflection: KusKbLastDeflectionData? = null, val payload: String? = null, val attachments: List<String>? = null) |
| KusChannel | [androidJvm] @JsonClass(generateAdapter = true) data class KusChannel(val name: String, val type: String, val status: KusChannelStatus) |
| KusChannelDetails | [androidJvm] @JsonClass(generateAdapter = true) data class KusChannelDetails(val channelGroup: String, val channels: List<KusChannel>) |
| KusChannelInfo | [androidJvm] @JsonClass(generateAdapter = true) data class KusChannelInfo(val data: KusChannelDetails) |
| KusChannelStatus | [androidJvm] @JsonClass(generateAdapter = false) enum KusChannelStatus : Enum<KusChannelStatus> |
| KusChannelType | [androidJvm] @JsonClass(generateAdapter = false) enum KusChannelType : Enum<KusChannelType> |
| KusChatAttachment | [androidJvm] @JsonClass(generateAdapter = true) data class KusChatAttachment(var id: String = "", var rawJson: String? = null, var name: String, val createdAt: Long, val updatedAt: Long, val contentType: String, val contentLength: Long, var link: String? = "") |
| KusChatAttachmentMeta | [androidJvm] @JsonClass(generateAdapter = true) data class KusChatAttachmentMeta(val meta: KusChatAttachmentMetaFields) |
| KusChatAttachmentMetaFields | [androidJvm] @JsonClass(generateAdapter = true) data class KusChatAttachmentMetaFields(val provider: String, val upload: KusChatAttachmentMetaUploadFields) |
| KusChatAttachmentMetaUploadFields | [androidJvm] @JsonClass(generateAdapter = true) data class KusChatAttachmentMetaUploadFields(val url: String, val fields: Map<String, String>) |
| KusChatAttachmentNetworkPostBody | [androidJvm] @JsonClass(generateAdapter = true) data class KusChatAttachmentNetworkPostBody(val name: String, val contentLength: Int, val contentType: String) |
| KusChatMessage | [androidJvm] @JsonClass(generateAdapter = true) data class KusChatMessage(var id: String = "", val trackingId: String? = null, val body: String?, val direction: KusChatMessageDirection, val directionType: String?, val createdAt: Long = 0, val truncated: Boolean? = false, val importedAt: Long? = 0, var conversationId: String = "", var sentById: String? = null, var sentByUser: KusUser? = null, val campaignId: String? = "", var attachmentIds: List<String>? = null, var attachments: List<KusChatAttachment>? = null, var rawJson: Any? = null, var pubnubTimetoken: Long? = 0, val firstRead: Long? = null, var template: KusMessageTemplate?, var meta: KusMessageMetaData?, val lang: String?) |
| KusChatMessageDirection | [androidJvm] @JsonClass(generateAdapter = false) enum KusChatMessageDirection : Enum<KusChatMessageDirection> |
| KusChatMessageNetworkPostBody | [androidJvm] @JsonClass(generateAdapter = true) data class KusChatMessageNetworkPostBody(val session: String, val body: String?, val payload: String?, val lastDeflection: KusKbLastDeflectionData? = null, val attachments: List<String>? = null, val initialMessages: List<KusInitialAgentMessage>?, val initialMessagesUserId: String? = null, @Json(ignore = true)val isAiResponse: Boolean? = false) |
| KusConversation | [androidJvm] @JsonClass(generateAdapter = true) data class KusConversation(var id: String = "", var preview: KusConversationPreview? = null, val trackingId: String?, val responders: List<String>? = null, var lastMessageAt: Long? = 0, val createdAt: Long? = 0, var lockedAt: Long?, var lockedByCustomer: Boolean? = null, var lockReason: String? = null, val satisfaction: KusConversationCsat?, var unreadMessageCount: Int = 0, var users: Set<KusUser>? = null, @Json(name = "pubnub")val channelInfo: KusChannelInfo, var rawJson: String? = null, val isInAssistantMode: Boolean = false, @Json(name = "deleted")var isDeleted: Boolean? = false, @Json(name = "brand")var brandId: String?, @Json(name = "previewDetails")val previewDetails: PreviewDetails? = null, var mergedTo: String? = null) |
| KusConversationCount | [androidJvm] @JsonClass(generateAdapter = true) data class KusConversationCount(val all: Double?, val done: Double?, val open: Double?, val snoozed: Double?) |
| KusConversationCreateNetworkPostBody | [androidJvm] @JsonClass(generateAdapter = true) data class KusConversationCreateNetworkPostBody(val title: String, val assistant: String? = null, val brand: String? = null, val custom: Map<String, Any>? = null) |
| KusConversationCsat | [androidJvm] @JsonClass(generateAdapter = true) data class KusConversationCsat(val id: String?, val status: KusCsatStatus?, val submittedAt: Long? = 0) |
| KusConversationDescribeNetworkPostBody | [androidJvm] @JsonClass(generateAdapter = true) data class KusConversationDescribeNetworkPostBody(val custom: Map<String, Any>) |
| KusConversationEndNetworkPostBody | [androidJvm] @JsonClass(generateAdapter = true) data class KusConversationEndNetworkPostBody(val locked: Boolean = true, val lockReason: String) |
| KusConversationLockReason | [androidJvm] @JsonClass(generateAdapter = false) enum KusConversationLockReason : Enum<KusConversationLockReason> |
| KusConversationPreview | [androidJvm] sealed class KusConversationPreview |
| KusCreatedBy | [androidJvm] @JsonClass(generateAdapter = true) data class KusCreatedBy(val type: String? = "user", val data: String?) |
| KusCsatAnswer | [androidJvm] @JsonClass(generateAdapter = true) data class KusCsatAnswer(val id: String, val prompt: String, val answer: String? = null, val answerRaw: String? = null, val selections: List<String>? = null, val selectionsRaw: List<String>? = null) : Parcelable |
| KusCsatCheckboxTemplate | [androidJvm] @JsonClass(generateAdapter = true) data class KusCsatCheckboxTemplate(val id: String, val prompt: String, val isRequired: Boolean, val type: String?, val enumeration: List<String>, val enumerationRaw: List<String>?) : KusCsatQuestionTemplate, Parcelable |
| KusCsatForm | [androidJvm] @JsonClass(generateAdapter = true) data class KusCsatForm(var id: String? = null, var rawJson: Any? = null, val name: String, val enabled: Boolean, val scale: KusCsatScale, val introduction: String, val ratingPrompt: String, val questions: List<KusCsatQuestionTemplate>?) : Parcelable |
| KusCsatQuestion | [androidJvm] @JsonClass(generateAdapter = true) data class KusCsatQuestion(val id: String, val type: String, val prompt: String) : Parcelable |
| KusCsatQuestionTemplate | [androidJvm] sealed class KusCsatQuestionTemplate : Parcelable |
| KusCsatQuestionTemplateType | [androidJvm] @JsonClass(generateAdapter = false) enum KusCsatQuestionTemplateType : Enum<KusCsatQuestionTemplateType> |
| KusCsatRadioTemplate | [androidJvm] @JsonClass(generateAdapter = true) data class KusCsatRadioTemplate(val id: String, val prompt: String, val isRequired: Boolean, val type: String?, val enumeration: List<String>, val enumerationRaw: List<String>?) : KusCsatQuestionTemplate, Parcelable |
| KusCsatResponse | [androidJvm] @JsonClass(generateAdapter = true) data class KusCsatResponse(var status: KusCsatStatus? = null, val answers: List<KusCsatAnswer>? = null, var rating: Int? = null, val lockedAt: Long? = 0, val scheduledFor: Long? = 0) : Parcelable |
| KusCsatScale | [androidJvm] @JsonClass(generateAdapter = true) data class KusCsatScale(val labelHigh: String, val labelLow: String, val type: KusSatisfactionScaleType, val options: Int) : Parcelable |
| KusCsatStatus | [androidJvm] @JsonClass(generateAdapter = false) enum KusCsatStatus : Enum<KusCsatStatus> |
| KusCsatTextTemplate | [androidJvm] @JsonClass(generateAdapter = true) data class KusCsatTextTemplate(val id: String, val prompt: String, val isRequired: Boolean, val type: String?) : KusCsatQuestionTemplate, Parcelable |
| KusCurrentCustomer | [androidJvm] @JsonClass(generateAdapter = true) data class KusCurrentCustomer(var id: String? = null, var rawJson: Any? = null, val activityAt: Long? = null, val createdAt: Long? = null, var lastMessageAt: Long? = null, var lastMessageSeenAt: Long? = null, var lastMessageSentAt: Long? = null, var lastOutboundMsgSentAt: Long? = null, val lastSeenAt: Long? = null, val signedUpAt: Long? = null, val avgSatisfactionRating: Double? = null, val avgSatisfactionScore: Double? = null, val conversationCount: KusConversationCount? = null, val name: String? = null, val email: String? = null, val phone: String? = null, val sentiment: String? = null, var createdBy: String? = null, var lastMessageUnrespondedTo: String? = null, var customAttributes: MutableList<KusCustomAttribute>? = mutableListOf(), val company: String? = null) |
| KusCustomAttribute | [androidJvm] data class KusCustomAttribute(val name: String?, val type: KusCustomAttributeType, val value: Any?) |
| KusCustomAttributeType | [androidJvm] enum KusCustomAttributeType : Enum<KusCustomAttributeType> |
| KusCustomerDescribeAttributes | [androidJvm] @JsonClass(generateAdapter = true) data class KusCustomerDescribeAttributes(val emails: List<KusEmail>? = null, val sharedEmails: List<KusEmail>? = null, val phones: List<KusPhone>? = null, val sharedPhones: List<KusPhone>? = null, val socials: List<KusSocial>? = null, val sharedSocials: List<KusSocial>? = null, var custom: Map<String, Any>? = null) |
| KusEmail | [androidJvm] @JsonClass(generateAdapter = true) data class KusEmail(val email: String) |
| KusInitialAgentMessage | [androidJvm] @JsonClass(generateAdapter = true) data class KusInitialAgentMessage(val meta: KusInitialMessageMeta, val direction: String = "out") |
| KusInitialMessageMeta | [androidJvm] @JsonClass(generateAdapter = true) data class KusInitialMessageMeta(val template: KusInitialMessageTemplate) |
| KusInitialMessageTemplate | [androidJvm] @JsonClass(generateAdapter = true) data class KusInitialMessageTemplate(val body: String) |
| KusKbDeflectMessageTemplate | [androidJvm] @JsonClass(generateAdapter = true) data class KusKbDeflectMessageTemplate(val body: String, val actions: List<KusMessageAction>, val followupText: String) : KusMessageTemplate, KusArticleMessage |
| KusKbLastDeflectionArticleVisitedData | [androidJvm] @JsonClass(generateAdapter = true) data class KusKbLastDeflectionArticleVisitedData(val visited: Int, val id: String, val version: String, val lang: String, val title: String, val url: String) |
| KusKbLastDeflectionData | [androidJvm] @JsonClass(generateAdapter = true) data class KusKbLastDeflectionData(val articles: List<KusKbLastDeflectionArticleVisitedData>) |
| KusKObjectAction | [androidJvm] @JsonClass(generateAdapter = true) data class KusKObjectAction(val titleText: String, val detailsText: String?, val imageUrl: String?, val value: String, val valueType: String = "kobject") |
| KusLastMessage | [androidJvm] @JsonClass(generateAdapter = true) data class KusLastMessage(val type: String? = "message", val data: String?) |
| KusListMessageTemplate | [androidJvm] @JsonClass(generateAdapter = true) data class KusListMessageTemplate(val body: String, val actions: List<KusKObjectAction>) : KusMessageTemplate |
| KusMessageAction | [androidJvm] @JsonClass(generateAdapter = true) data class KusMessageAction(val displayText: String, val value: String, val valueType: KusActionValueType = KusActionValueType.TEXT) |
| KusMessageMetaData | [androidJvm] @JsonClass(generateAdapter = true) data class KusMessageMetaData(val isAiResponse: Boolean? = false) |
| KusMessagePage | [androidJvm] @JsonClass(generateAdapter = true) data class KusMessagePage(val data: List<Any>?) |
| KusMessageTemplate | [androidJvm] sealed class KusMessageTemplate |
| KusMessageTemplateMeta | [androidJvm] @JsonClass(generateAdapter = true) data class KusMessageTemplateMeta(val template: KusMessageTemplate) |
| KusMessageTemplateMetaData | [androidJvm] @JsonClass(generateAdapter = true) data class KusMessageTemplateMetaData(val isAiResponse: Boolean? = null, val lockInput: Boolean? = null) |
| KusMessageTemplateType | [androidJvm] @JsonClass(generateAdapter = false) enum KusMessageTemplateType : Enum<KusMessageTemplateType> |
| KusMLLChild | [androidJvm] @JsonClass(generateAdapter = true) data class KusMLLChild(val id: String = "", val displayName: String = "", val children: List<KusMLLChild>?) : Parcelable |
| KusMLLMessageTemplate | [androidJvm] @JsonClass(generateAdapter = true) data class KusMLLMessageTemplate(val body: String, val actions: KusMLLTree) : KusMessageTemplate |
| KusMllSelection | [androidJvm] @JsonClass(generateAdapter = true) data class KusMllSelection(val fullPath: String = "", val displayName: String = "") : Parcelable |
| KusMLLTree | [androidJvm] @JsonClass(generateAdapter = true) data class KusMLLTree(val tree: KusMLLChild) |
| KusPhone | [androidJvm] @JsonClass(generateAdapter = true) data class KusPhone(val phone: String) |
| KusQuickReplyMessageTemplate | [androidJvm] @JsonClass(generateAdapter = true) data class KusQuickReplyMessageTemplate(val body: String, val actions: List<KusMessageAction>) : KusMessageTemplate |
| KusReadReceipt | [androidJvm] @JsonClass(generateAdapter = true) data class KusReadReceipt(val eventType: String = READ) |
| KusSatisfaction | [androidJvm] @JsonClass(generateAdapter = true) data class KusSatisfaction(val id: String, var rawJson: Any? = null, var timetoken: Long = 0, val response: KusCsatResponse? = null, val form: KusCsatForm? = null, var conversationId: String? = null, var lockedAt: Long? = 0) : Parcelable |
| KusSatisfactionNetworkPostBody | [androidJvm] @JsonClass(generateAdapter = true) data class KusSatisfactionNetworkPostBody(val answers: List<KusCsatAnswer>? = null, var rating: Int? = null, val submittedAt: Long? = null, var read: Boolean? = null) : Parcelable |
| KusSatisfactionReadPostBody | [androidJvm] @JsonClass(generateAdapter = true) data class KusSatisfactionReadPostBody(var read: Boolean = true) : Parcelable |
| KusSatisfactionScaleType | [androidJvm] @JsonClass(generateAdapter = false) enum KusSatisfactionScaleType : Enum<KusSatisfactionScaleType> |
| KusSessionStats | [androidJvm] @JsonClass(generateAdapter = true) data class KusSessionStats(var id: String = "", var rawJson: String? = null, val totalUnreadCount: Int? = null, val sessionsWithUnreads: Map<String, Int>? = null) |
| KusSocial | [androidJvm] @JsonClass(generateAdapter = true) data class KusSocial(val username: String, val type: KusSocialType) |
| KusSocialType | [androidJvm] @JsonClass(generateAdapter = false) enum KusSocialType : Enum<KusSocialType> |
| KusTextMessageTemplate | [androidJvm] @JsonClass(generateAdapter = true) data class KusTextMessageTemplate(val body: String) : KusMessageTemplate |
| KusTypingIndicator | [androidJvm] @JsonClass(generateAdapter = true) data class KusTypingIndicator(val conversationId: String, val userId: String, val user: KusUser? = null, val status: KusTypingStatus = KusTypingStatus.TYPING_UNKNOWN) |
| KusTypingStatus | [androidJvm] @JsonClass(generateAdapter = false) enum KusTypingStatus : Enum<KusTypingStatus> |
| KusUploadAttachment | [androidJvm] @JsonClass(generateAdapter = true) data class KusUploadAttachment(val name: String, val contentType: String, val contentLength: Int, val fileBytes: ByteArray, val localFileUri: String?) |
| KusUser | [androidJvm] @JsonClass(generateAdapter = true) data class KusUser(var id: String? = null, var rawJson: Any? = null, val displayName: String? = null, val avatarUrl: String? = null) |
| LastResponder | [androidJvm] @JsonClass(generateAdapter = true) data class LastResponder(val displayName: String?, val avatarUrl: String?) Represents the last responder in a conversation. |
| PreviewDetails | [androidJvm] @JsonClass(generateAdapter = true) data class PreviewDetails(val lastResponder: LastResponder?) Provides details for previewing a conversation. |
| TextPreview | [androidJvm] data class TextPreview(val text: String) : KusConversationPreview |