# Message types | field | description | | ---- | ----------- | | type| Message must have field 'type' from Message types enum | | subType | Message by default have subType from client. Also it can have value from [MessageSubTypeEnum](/5ZfGhqnOSFeM5oJ_6531fQ) | | messageId | If message what you try to send have messageId field, then we do\`nt save it in DB | | senderLabel | This field you for displaying from who this message. This platform is used differently on different platforms. If this field not exist in package, then base handler add it([Message sender label](/TliqKkj6Sfepk_QUkxJPBA)) | Example: ``` { type: MessageTypeEnum, ?subType: MessageSubTypeEnum, ?senderLabel: String, ?messageId: Number, } ``` ## Message type enum | value | description | example | |:-------------- | ----------- | ------- | | message | | { type: 'message', text: String } | | typing | | { type: 'typing', isTyping: Boolean } | | typingPreview | | { type: 'typingPreview', previewText: String } | | error | | null | | systemEvent | [System events](/KeujzWaVT6-BmxY1bHcjDw)| { type: 'systemEvent', systemEventId: Number } |