All predicatesShow sourcechatstore.pl -- Store chat messages

When using redis, the messages for a document are stored in the key below as a sorted set where the score is the time in ms and the value is a Prolog dict holding the message.

Prefix:chat:docid:DocId
Source redis_docid_key(+DocID, -Server, -Key) is semidet[private]
Source chat_dir_file(+DocID, -Path, -File)[private]
True when Path/File is the place to store char messages about DocID.
Source existing_chat_file(+DocID, -File) is semidet[private]
True when File is the path of the file holding chat messages from DocID.
Source chat_store(+Message:dict) is det
Add a chat message to the chat store. If Message.create == false, the message is only stored if the chat is already active. This is used to only insert messages about changes to the file if there is an ongoing chat so we know to which version chat messages refer.
Source strip_chat(_Message0, -Message) is det[private]
Remove stuff from a chat message that is useless to store permanently, such as the wsid (WebSocket id).
Source chat_messages(+DocID, -Messages:list, +Options) is det
Get messages associated with DocID. Options include
max(+Max)
Maximum number of messages to retrieve. Default is 25.
after(+TimeStamp)
Only get messages after TimeStamp
Source chat_message_count(+DocID, -Count) is det[private]
Count the number of message stored for DocID. This is the same as the number of lines.
Source swish_config:chat_count_about(+DocID, -Count)[multifile]
True when Count is the number of messages about DocID
Source chat_messages(+Request)[private]
HTTP handler that returns chat messages for a document
Source chat_status(+Request)[private]
HTTP handler that returns chat status for document