2019-11-21 16:19:22 +00:00
|
|
|
CREATE TABLE IF NOT EXISTS user_messages (
|
|
|
|
id BLOB UNIQUE NOT NULL,
|
|
|
|
chat_id VARCHAR NOT NULL,
|
Move to protobuf for Message type (#1706)
* Use a single Message type `v1/message.go` and `message.go` are the same now, and they embed `protobuf.ChatMessage`
* Use `SendChatMessage` for sending chat messages, this is basically the old `Send` but a bit more flexible so we can send different message types (stickers,commands), and not just text.
* Remove dedup from services/shhext. Because now we process in status-protocol, dedup makes less sense, as those messages are going to be processed anyway, so removing for now, we can re-evaluate if bringing it to status-go or not.
* Change the various retrieveX method to a single one:
`RetrieveAll` will be processing those messages that it can process (Currently only `Message`), and return the rest in `RawMessages` (still transit). The format for the response is:
`Chats`: -> The chats updated by receiving the message
`Messages`: -> The messages retrieved (already matched to a chat)
`Contacts`: -> The contacts updated by the messages
`RawMessages` -> Anything else that can't be parsed, eventually as we move everything to status-protocol-go this will go away.
2019-12-05 16:25:34 +00:00
|
|
|
content_type INT,
|
|
|
|
message_type INT,
|
2019-11-21 16:19:22 +00:00
|
|
|
text TEXT,
|
|
|
|
clock BIGINT,
|
|
|
|
timestamp BIGINT,
|
|
|
|
content_chat_id TEXT,
|
|
|
|
content_text TEXT,
|
|
|
|
public_key BLOB,
|
|
|
|
flags INT NOT NULL DEFAULT 0
|
|
|
|
);
|
|
|
|
|
|
|
|
CREATE INDEX chat_ids ON user_messages(chat_id);
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS membership_updates (
|
|
|
|
id VARCHAR PRIMARY KEY NOT NULL,
|
|
|
|
data BLOB NOT NULL,
|
|
|
|
chat_id VARCHAR NOT NULL,
|
|
|
|
FOREIGN KEY (chat_id) REFERENCES chats(id)
|
|
|
|
) WITHOUT ROWID;
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS chat_members (
|
|
|
|
public_key BLOB NOT NULL,
|
|
|
|
chat_id VARCHAR NOT NULL,
|
|
|
|
admin BOOLEAN NOT NULL DEFAULT FALSE,
|
|
|
|
joined BOOLEAN NOT NULL DEFAULT FALSE,
|
|
|
|
FOREIGN KEY (chat_id) REFERENCES chats(id),
|
|
|
|
UNIQUE(chat_id, public_key)
|
|
|
|
);
|