List of available filter keys, sorted by preference (more suitable keys listed first).
Types
Message_Filter_Key — s
Possible keys:
limit (u) — Maximum number of messages to be returned. Must be supported by all CMs and must be presented in all request. If 0, the number of messages is unlimited.
offset (u) — Number of messages to be skipped. Usually goes well with the 'message-token' key.
message-token (s - Protocol_Message_Token) — If specified, the connection manager MUST only return messages starting with the referenced one. This key is not compatible with the 'start-timestamp' key.
start-timestamp (x - Unix_Timestamp64) — A value to filter out messages before a certain date/time. If specified, the connection manager MUST only return messages whose timestamp is equal to or later than the given timestamp.
end-timestamp (x - Unix_Timestamp64) — A value to filter out messages after a certain date/time. If specified, the connection manager MUST only return messages whose timestamp is equal to or earlier than the given timestamp.
Objects implementing this interface must also implement:
Channel.Type.Text
andChannel.Interface.Messages
.Methods
GetMessages (a{sv} filter) -> void
Acceptable filter keys listed in FilterKeys property
Once the method is called, it emits
Channel.Interface.Messages MessageReceived (aa{sv}: Message)
signals for received scroll-back messagesExamples
A request for 20 messages after a certain one might be represented as:
A request for a single message by its token:
A request for all messages in a certain timespan:
Properties
AvailableFilterKeys — as
List of available filter keys, sorted by preference (more suitable keys listed first).
Types
Message_Filter_Key — s
Possible keys:
Implementation
Work in progress:
https://github.com/TelepathyIM/telepathy-qt/commits/MessageArchive https://github.com/TelepathyIM/telepathy-morse/commits/MessageArchive (Telegram CM) https://cgit.kde.org/scratch/akulichalexandr/ktp-common-internals.git/log/?h=MessageArchive (KDE client)