enum XMPPAction: Codable { case clientConnectionChanged(jid: String, state: ConnectionStatus) case xmppMessageReceived(Message) case xmppMessageSent(Message) case xmppMessageSendFailed(msgId: String) case xmppMessageSendSuccess(msgId: String) case xmppSharingTryUpload(Message) case xmppSharingUploadFailed(msgId: String, reason: String) case xmppSharingUploadSuccess(msgId: String, attachmentRemotePath: String) }