--- allOf: - $ref: core-event-schema/room_event.yaml description: This message represents a single audio clip. properties: content: properties: body: description: |- If `filename` is not set or the value of both properties are identical, this is the filename of the original upload. Otherwise, this is a caption for the audio. type: string x-changedInMatrixVersion: "1.10": This property can act as a caption for the audio. format: description: |- The format used in the `formatted_body`. Currently only `org.matrix.custom.html` is supported. type: string x-addedInMatrixVersion: "1.10" formatted_body: description: |- The formatted version of the `body`, when it acts as a caption. This is required if `format` is specified. type: string x-addedInMatrixVersion: "1.10" filename: description: The original filename of the uploaded file. type: string x-addedInMatrixVersion: "1.10" info: description: Metadata for the audio clip referred to in `url`. properties: duration: description: The duration of the audio in milliseconds. type: integer mimetype: description: The mimetype of the audio e.g. `audio/aac`. type: string size: description: The size of the audio clip in bytes. type: integer title: AudioInfo type: object msgtype: enum: - m.audio type: string url: description: |- Required if the file is unencrypted. The URL (typically [`mxc://` URI](/client-server-api/#matrix-content-mxc-uris)) to the audio clip. type: string file: description: |- Required if the file is encrypted. Information on the encrypted file, as specified in [End-to-end encryption](/client-server-api/#sending-encrypted-attachments). title: EncryptedFile type: object required: - msgtype - body type: object type: enum: - m.room.message type: string title: AudioMessage type: object