|
@@ -16,38 +16,37 @@ import com.nextcloud.talk.models.json.participants.Participant
|
|
class ConversationModel(
|
|
class ConversationModel(
|
|
var internalId: String,
|
|
var internalId: String,
|
|
var accountId: Long,
|
|
var accountId: Long,
|
|
- var roomId: String? = null,
|
|
|
|
- var token: String? = null,
|
|
|
|
- var name: String? = null,
|
|
|
|
- var displayName: String? = null,
|
|
|
|
- var description: String? = null,
|
|
|
|
- var type: ConversationEnums.ConversationType? = null,
|
|
|
|
|
|
+ // var roomId: String? = null,
|
|
|
|
+ var token: String,
|
|
|
|
+ var name: String,
|
|
|
|
+ var displayName: String,
|
|
|
|
+ var description: String,
|
|
|
|
+ var type: ConversationEnums.ConversationType,
|
|
var lastPing: Long = 0,
|
|
var lastPing: Long = 0,
|
|
- var participantType: Participant.ParticipantType? = null,
|
|
|
|
|
|
+ var participantType: Participant.ParticipantType,
|
|
var hasPassword: Boolean = false,
|
|
var hasPassword: Boolean = false,
|
|
- var sessionId: String? = null,
|
|
|
|
- var actorId: String? = null,
|
|
|
|
- var actorType: String? = null,
|
|
|
|
- var password: String? = null,
|
|
|
|
|
|
+ var sessionId: String,
|
|
|
|
+ var actorId: String,
|
|
|
|
+ var actorType: String,
|
|
var favorite: Boolean = false,
|
|
var favorite: Boolean = false,
|
|
var lastActivity: Long = 0,
|
|
var lastActivity: Long = 0,
|
|
var unreadMessages: Int = 0,
|
|
var unreadMessages: Int = 0,
|
|
var unreadMention: Boolean = false,
|
|
var unreadMention: Boolean = false,
|
|
- var lastMessageViaConversationList: ChatMessageJson? = null,
|
|
|
|
- var objectType: ConversationEnums.ObjectType? = null,
|
|
|
|
- var notificationLevel: ConversationEnums.NotificationLevel? = null,
|
|
|
|
- var conversationReadOnlyState: ConversationEnums.ConversationReadOnlyState? = null,
|
|
|
|
- var lobbyState: ConversationEnums.LobbyState? = null,
|
|
|
|
- var lobbyTimer: Long? = null,
|
|
|
|
|
|
+ var lastMessage: ChatMessageJson? = null,
|
|
|
|
+ var objectType: ConversationEnums.ObjectType,
|
|
|
|
+ var notificationLevel: ConversationEnums.NotificationLevel,
|
|
|
|
+ var conversationReadOnlyState: ConversationEnums.ConversationReadOnlyState,
|
|
|
|
+ var lobbyState: ConversationEnums.LobbyState,
|
|
|
|
+ var lobbyTimer: Long,
|
|
var lastReadMessage: Int = 0,
|
|
var lastReadMessage: Int = 0,
|
|
var lastCommonReadMessage: Int = 0,
|
|
var lastCommonReadMessage: Int = 0,
|
|
var hasCall: Boolean = false,
|
|
var hasCall: Boolean = false,
|
|
var callFlag: Int = 0,
|
|
var callFlag: Int = 0,
|
|
var canStartCall: Boolean = false,
|
|
var canStartCall: Boolean = false,
|
|
- var canLeaveConversation: Boolean? = null,
|
|
|
|
- var canDeleteConversation: Boolean? = null,
|
|
|
|
- var unreadMentionDirect: Boolean? = null,
|
|
|
|
- var notificationCalls: Int? = null,
|
|
|
|
|
|
+ var canLeaveConversation: Boolean,
|
|
|
|
+ var canDeleteConversation: Boolean,
|
|
|
|
+ var unreadMentionDirect: Boolean,
|
|
|
|
+ var notificationCalls: Int,
|
|
var permissions: Int = 0,
|
|
var permissions: Int = 0,
|
|
var messageExpiration: Int = 0,
|
|
var messageExpiration: Int = 0,
|
|
var status: String? = null,
|
|
var status: String? = null,
|
|
@@ -55,12 +54,15 @@ class ConversationModel(
|
|
var statusMessage: String? = null,
|
|
var statusMessage: String? = null,
|
|
var statusClearAt: Long? = 0,
|
|
var statusClearAt: Long? = 0,
|
|
var callRecording: Int = 0,
|
|
var callRecording: Int = 0,
|
|
- var avatarVersion: String? = null,
|
|
|
|
- var hasCustomAvatar: Boolean? = null,
|
|
|
|
- var callStartTime: Long? = null,
|
|
|
|
|
|
+ var avatarVersion: String,
|
|
|
|
+ var hasCustomAvatar: Boolean,
|
|
|
|
+ var callStartTime: Long,
|
|
var recordingConsentRequired: Int = 0,
|
|
var recordingConsentRequired: Int = 0,
|
|
var remoteServer: String? = null,
|
|
var remoteServer: String? = null,
|
|
var remoteToken: String? = null,
|
|
var remoteToken: String? = null,
|
|
|
|
+
|
|
|
|
+ // attributes that don't come from API. This should be changed?!
|
|
|
|
+ var password: String? = null,
|
|
) {
|
|
) {
|
|
|
|
|
|
companion object {
|
|
companion object {
|
|
@@ -68,46 +70,46 @@ class ConversationModel(
|
|
return ConversationModel(
|
|
return ConversationModel(
|
|
internalId = user.id!!.toString() + "@" + conversation.token,
|
|
internalId = user.id!!.toString() + "@" + conversation.token,
|
|
accountId = user.id!!,
|
|
accountId = user.id!!,
|
|
- roomId = conversation.roomId,
|
|
|
|
- token = conversation.token,
|
|
|
|
- name = conversation.name,
|
|
|
|
- displayName = conversation.displayName,
|
|
|
|
- description = conversation.description,
|
|
|
|
- type = conversation.type?.let { ConversationEnums.ConversationType.valueOf(it.name) },
|
|
|
|
|
|
+ // roomId = conversation.roomId,
|
|
|
|
+ token = conversation.token!!,
|
|
|
|
+ name = conversation.name!!,
|
|
|
|
+ displayName = conversation.displayName!!,
|
|
|
|
+ description = conversation.description!!,
|
|
|
|
+ type = conversation.type.let { ConversationEnums.ConversationType.valueOf(it!!.name) },
|
|
lastPing = conversation.lastPing,
|
|
lastPing = conversation.lastPing,
|
|
- participantType = conversation.participantType?.let { Participant.ParticipantType.valueOf(it.name) },
|
|
|
|
|
|
+ participantType = conversation.participantType.let { Participant.ParticipantType.valueOf(it!!.name) },
|
|
hasPassword = conversation.hasPassword,
|
|
hasPassword = conversation.hasPassword,
|
|
- sessionId = conversation.sessionId,
|
|
|
|
- actorId = conversation.actorId,
|
|
|
|
- actorType = conversation.actorType,
|
|
|
|
|
|
+ sessionId = conversation.sessionId!!,
|
|
|
|
+ actorId = conversation.actorId!!,
|
|
|
|
+ actorType = conversation.actorType!!,
|
|
password = conversation.password,
|
|
password = conversation.password,
|
|
favorite = conversation.favorite,
|
|
favorite = conversation.favorite,
|
|
lastActivity = conversation.lastActivity,
|
|
lastActivity = conversation.lastActivity,
|
|
unreadMessages = conversation.unreadMessages,
|
|
unreadMessages = conversation.unreadMessages,
|
|
unreadMention = conversation.unreadMention,
|
|
unreadMention = conversation.unreadMention,
|
|
- // lastMessage = conversation.lastMessage, to do...
|
|
|
|
- objectType = conversation.objectType?.let { ConversationEnums.ObjectType.valueOf(it.name) },
|
|
|
|
- notificationLevel = conversation.notificationLevel?.let {
|
|
|
|
|
|
+ lastMessage = conversation.lastMessage,
|
|
|
|
+ objectType = conversation.objectType.let { ConversationEnums.ObjectType.valueOf(it!!.name) },
|
|
|
|
+ notificationLevel = conversation.notificationLevel.let {
|
|
ConversationEnums.NotificationLevel.valueOf(
|
|
ConversationEnums.NotificationLevel.valueOf(
|
|
- it.name
|
|
|
|
|
|
+ it!!.name
|
|
)
|
|
)
|
|
},
|
|
},
|
|
- conversationReadOnlyState = conversation.conversationReadOnlyState?.let {
|
|
|
|
|
|
+ conversationReadOnlyState = conversation.conversationReadOnlyState.let {
|
|
ConversationEnums.ConversationReadOnlyState.valueOf(
|
|
ConversationEnums.ConversationReadOnlyState.valueOf(
|
|
- it.name
|
|
|
|
|
|
+ it!!.name
|
|
)
|
|
)
|
|
},
|
|
},
|
|
- lobbyState = conversation.lobbyState?.let { ConversationEnums.LobbyState.valueOf(it.name) },
|
|
|
|
- lobbyTimer = conversation.lobbyTimer,
|
|
|
|
|
|
+ lobbyState = conversation.lobbyState.let { ConversationEnums.LobbyState.valueOf(it!!.name) },
|
|
|
|
+ lobbyTimer = conversation.lobbyTimer!!,
|
|
lastReadMessage = conversation.lastReadMessage,
|
|
lastReadMessage = conversation.lastReadMessage,
|
|
lastCommonReadMessage = conversation.lastCommonReadMessage,
|
|
lastCommonReadMessage = conversation.lastCommonReadMessage,
|
|
hasCall = conversation.hasCall,
|
|
hasCall = conversation.hasCall,
|
|
callFlag = conversation.callFlag,
|
|
callFlag = conversation.callFlag,
|
|
canStartCall = conversation.canStartCall,
|
|
canStartCall = conversation.canStartCall,
|
|
- canLeaveConversation = conversation.canLeaveConversation,
|
|
|
|
- canDeleteConversation = conversation.canDeleteConversation,
|
|
|
|
- unreadMentionDirect = conversation.unreadMentionDirect,
|
|
|
|
- notificationCalls = conversation.notificationCalls,
|
|
|
|
|
|
+ canLeaveConversation = conversation.canLeaveConversation!!,
|
|
|
|
+ canDeleteConversation = conversation.canDeleteConversation!!,
|
|
|
|
+ unreadMentionDirect = conversation.unreadMentionDirect!!,
|
|
|
|
+ notificationCalls = conversation.notificationCalls!!,
|
|
permissions = conversation.permissions,
|
|
permissions = conversation.permissions,
|
|
messageExpiration = conversation.messageExpiration,
|
|
messageExpiration = conversation.messageExpiration,
|
|
status = conversation.status,
|
|
status = conversation.status,
|
|
@@ -115,9 +117,9 @@ class ConversationModel(
|
|
statusMessage = conversation.statusMessage,
|
|
statusMessage = conversation.statusMessage,
|
|
statusClearAt = conversation.statusClearAt,
|
|
statusClearAt = conversation.statusClearAt,
|
|
callRecording = conversation.callRecording,
|
|
callRecording = conversation.callRecording,
|
|
- avatarVersion = conversation.avatarVersion,
|
|
|
|
- hasCustomAvatar = conversation.hasCustomAvatar,
|
|
|
|
- callStartTime = conversation.callStartTime,
|
|
|
|
|
|
+ avatarVersion = conversation.avatarVersion!!,
|
|
|
|
+ hasCustomAvatar = conversation.hasCustomAvatar!!,
|
|
|
|
+ callStartTime = conversation.callStartTime!!,
|
|
recordingConsentRequired = conversation.recordingConsentRequired,
|
|
recordingConsentRequired = conversation.recordingConsentRequired,
|
|
remoteServer = conversation.remoteServer,
|
|
remoteServer = conversation.remoteServer,
|
|
remoteToken = conversation.remoteToken
|
|
remoteToken = conversation.remoteToken
|