# Copyright 2016 OpenMarket Ltd # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. properties: event_fields: description: List of event fields to include. If this list is absent then all fields are included. The entries may include '.' charaters to indicate sub-fields. So ['content.body'] will include the 'body' field of the 'content' object. A literal '.' character in a field name may be escaped using a '\\'. A server may include more fields than were requested. items: type: string type: array event_format: description: The format to use for events. 'client' will return the events in a format suitable for clients. 'federation' will return the raw event as receieved over federation. The default is 'client'. enum: - client - federation type: string presence: allOf: - $ref: event_filter.yaml description: The presence updates to include. account_data: allOf: - $ref: event_filter.yaml description: The user account data that isn't associated with rooms to include. room: title: RoomFilter description: Filters to be applied to room data. properties: not_rooms: description: A list of room IDs to exclude. If this list is absent then no rooms are excluded. A matching room will be excluded even if it is listed in the ``'rooms'`` filter. This filter is applied before the filters in ``ephemeral``, ``state``, ``timeline`` or ``account_data`` items: type: string type: array rooms: description: A list of room IDs to include. If this list is absent then all rooms are included. This filter is applied before the filters in ``ephemeral``, ``state``, ``timeline`` or ``account_data`` items: type: string type: array ephemeral: allOf: - $ref: room_event_filter.yaml description: The events that aren't recorded in the room history, e.g. typing and receipts, to include for rooms. include_leave: description: Include rooms that the user has left in the sync, default false type: boolean state: allOf: - $ref: room_event_filter.yaml description: The state events to include for rooms. timeline: allOf: - $ref: room_event_filter.yaml description: The message and state update events to include for rooms. account_data: allOf: - $ref: room_event_filter.yaml description: The per user account data to include for rooms. type: object type: object