/usr/share/opensips/postgres/presence-create.sql is in opensips-postgres-module 2.2.2-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 | INSERT INTO version (table_name, table_version) values ('presentity','5');
CREATE TABLE presentity (
id SERIAL PRIMARY KEY NOT NULL,
username VARCHAR(64) NOT NULL,
domain VARCHAR(64) NOT NULL,
event VARCHAR(64) NOT NULL,
etag VARCHAR(64) NOT NULL,
expires INTEGER NOT NULL,
received_time INTEGER NOT NULL,
body BYTEA NOT NULL,
extra_hdrs BYTEA DEFAULT '' NOT NULL,
sender VARCHAR(128) NOT NULL,
CONSTRAINT presentity_presentity_idx UNIQUE (username, domain, event, etag)
);
ALTER SEQUENCE presentity_id_seq MAXVALUE 2147483647 CYCLE;
INSERT INTO version (table_name, table_version) values ('active_watchers','11');
CREATE TABLE active_watchers (
id SERIAL PRIMARY KEY NOT NULL,
presentity_uri VARCHAR(128) NOT NULL,
watcher_username VARCHAR(64) NOT NULL,
watcher_domain VARCHAR(64) NOT NULL,
to_user VARCHAR(64) NOT NULL,
to_domain VARCHAR(64) NOT NULL,
event VARCHAR(64) DEFAULT 'presence' NOT NULL,
event_id VARCHAR(64),
to_tag VARCHAR(64) NOT NULL,
from_tag VARCHAR(64) NOT NULL,
callid VARCHAR(64) NOT NULL,
local_cseq INTEGER NOT NULL,
remote_cseq INTEGER NOT NULL,
contact VARCHAR(128) NOT NULL,
record_route TEXT,
expires INTEGER NOT NULL,
status INTEGER DEFAULT 2 NOT NULL,
reason VARCHAR(64),
version INTEGER DEFAULT 0 NOT NULL,
socket_info VARCHAR(64) NOT NULL,
local_contact VARCHAR(128) NOT NULL,
CONSTRAINT active_watchers_active_watchers_idx UNIQUE (presentity_uri, callid, to_tag, from_tag)
);
ALTER SEQUENCE active_watchers_id_seq MAXVALUE 2147483647 CYCLE;
INSERT INTO version (table_name, table_version) values ('watchers','4');
CREATE TABLE watchers (
id SERIAL PRIMARY KEY NOT NULL,
presentity_uri VARCHAR(128) NOT NULL,
watcher_username VARCHAR(64) NOT NULL,
watcher_domain VARCHAR(64) NOT NULL,
event VARCHAR(64) DEFAULT 'presence' NOT NULL,
status INTEGER NOT NULL,
reason VARCHAR(64),
inserted_time INTEGER NOT NULL,
CONSTRAINT watchers_watcher_idx UNIQUE (presentity_uri, watcher_username, watcher_domain, event)
);
ALTER SEQUENCE watchers_id_seq MAXVALUE 2147483647 CYCLE;
INSERT INTO version (table_name, table_version) values ('xcap','4');
CREATE TABLE xcap (
id SERIAL PRIMARY KEY NOT NULL,
username VARCHAR(64) NOT NULL,
domain VARCHAR(64) NOT NULL,
doc BYTEA NOT NULL,
doc_type INTEGER NOT NULL,
etag VARCHAR(64) NOT NULL,
source INTEGER NOT NULL,
doc_uri VARCHAR(128) NOT NULL,
port INTEGER NOT NULL,
CONSTRAINT xcap_account_doc_type_idx UNIQUE (username, domain, doc_type, doc_uri)
);
ALTER SEQUENCE xcap_id_seq MAXVALUE 2147483647 CYCLE;
CREATE INDEX xcap_source_idx ON xcap (source);
INSERT INTO version (table_name, table_version) values ('pua','8');
CREATE TABLE pua (
id SERIAL PRIMARY KEY NOT NULL,
pres_uri VARCHAR(128) NOT NULL,
pres_id VARCHAR(255) NOT NULL,
event INTEGER NOT NULL,
expires INTEGER NOT NULL,
desired_expires INTEGER NOT NULL,
flag INTEGER NOT NULL,
etag VARCHAR(64),
tuple_id VARCHAR(64),
watcher_uri VARCHAR(128),
to_uri VARCHAR(128),
call_id VARCHAR(64),
to_tag VARCHAR(64),
from_tag VARCHAR(64),
cseq INTEGER,
record_route TEXT,
contact VARCHAR(128),
remote_contact VARCHAR(128),
version INTEGER,
extra_headers TEXT
);
ALTER SEQUENCE pua_id_seq MAXVALUE 2147483647 CYCLE;
CREATE INDEX pua_del1_idx ON pua (pres_uri, event);
CREATE INDEX pua_del2_idx ON pua (expires);
CREATE INDEX pua_update_idx ON pua (pres_uri, pres_id, flag, event);
|