presence-create.sql 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. INSERT INTO version (table_name, table_version) values ('presentity','3');
  2. CREATE TABLE presentity (
  3. id INT(10) UNSIGNED AUTO_INCREMENT PRIMARY KEY NOT NULL,
  4. username VARCHAR(64) NOT NULL,
  5. domain VARCHAR(64) NOT NULL,
  6. event VARCHAR(64) NOT NULL,
  7. etag VARCHAR(64) NOT NULL,
  8. expires INT(11) NOT NULL,
  9. received_time INT(11) NOT NULL,
  10. body BLOB NOT NULL,
  11. sender VARCHAR(128) NOT NULL,
  12. CONSTRAINT presentity_idx UNIQUE (username, domain, event, etag)
  13. ) ENGINE=MyISAM;
  14. CREATE INDEX presentity_expires ON presentity (expires);
  15. CREATE INDEX account_idx ON presentity (username, domain, event);
  16. INSERT INTO version (table_name, table_version) values ('active_watchers','11');
  17. CREATE TABLE active_watchers (
  18. id INT(10) UNSIGNED AUTO_INCREMENT PRIMARY KEY NOT NULL,
  19. presentity_uri VARCHAR(128) NOT NULL,
  20. watcher_username VARCHAR(64) NOT NULL,
  21. watcher_domain VARCHAR(64) NOT NULL,
  22. to_user VARCHAR(64) NOT NULL,
  23. to_domain VARCHAR(64) NOT NULL,
  24. event VARCHAR(64) DEFAULT 'presence' NOT NULL,
  25. event_id VARCHAR(64),
  26. to_tag VARCHAR(64) NOT NULL,
  27. from_tag VARCHAR(64) NOT NULL,
  28. callid VARCHAR(255) NOT NULL,
  29. local_cseq INT(11) NOT NULL,
  30. remote_cseq INT(11) NOT NULL,
  31. contact VARCHAR(128) NOT NULL,
  32. record_route TEXT,
  33. expires INT(11) NOT NULL,
  34. status INT(11) DEFAULT 2 NOT NULL,
  35. reason VARCHAR(64) NOT NULL,
  36. version INT(11) DEFAULT 0 NOT NULL,
  37. socket_info VARCHAR(64) NOT NULL,
  38. local_contact VARCHAR(128) NOT NULL,
  39. from_user VARCHAR(64) NOT NULL,
  40. from_domain VARCHAR(64) NOT NULL,
  41. updated INT(11) NOT NULL,
  42. updated_winfo INT(11) NOT NULL,
  43. CONSTRAINT active_watchers_idx UNIQUE (callid, to_tag, from_tag)
  44. ) ENGINE=MyISAM;
  45. CREATE INDEX active_watchers_expires ON active_watchers (expires);
  46. CREATE INDEX active_watchers_pres ON active_watchers (presentity_uri, event);
  47. CREATE INDEX updated_idx ON active_watchers (updated);
  48. CREATE INDEX updated_winfo_idx ON active_watchers (updated_winfo, presentity_uri);
  49. INSERT INTO version (table_name, table_version) values ('watchers','3');
  50. CREATE TABLE watchers (
  51. id INT(10) UNSIGNED AUTO_INCREMENT PRIMARY KEY NOT NULL,
  52. presentity_uri VARCHAR(128) NOT NULL,
  53. watcher_username VARCHAR(64) NOT NULL,
  54. watcher_domain VARCHAR(64) NOT NULL,
  55. event VARCHAR(64) DEFAULT 'presence' NOT NULL,
  56. status INT(11) NOT NULL,
  57. reason VARCHAR(64),
  58. inserted_time INT(11) NOT NULL,
  59. CONSTRAINT watcher_idx UNIQUE (presentity_uri, watcher_username, watcher_domain, event)
  60. ) ENGINE=MyISAM;
  61. INSERT INTO version (table_name, table_version) values ('xcap','4');
  62. CREATE TABLE xcap (
  63. id INT(10) UNSIGNED AUTO_INCREMENT PRIMARY KEY NOT NULL,
  64. username VARCHAR(64) NOT NULL,
  65. domain VARCHAR(64) NOT NULL,
  66. doc MEDIUMBLOB NOT NULL,
  67. doc_type INT(11) NOT NULL,
  68. etag VARCHAR(64) NOT NULL,
  69. source INT(11) NOT NULL,
  70. doc_uri VARCHAR(255) NOT NULL,
  71. port INT(11) NOT NULL,
  72. CONSTRAINT doc_uri_idx UNIQUE (doc_uri)
  73. ) ENGINE=MyISAM;
  74. CREATE INDEX account_doc_type_idx ON xcap (username, domain, doc_type);
  75. CREATE INDEX account_doc_type_uri_idx ON xcap (username, domain, doc_type, doc_uri);
  76. CREATE INDEX account_doc_uri_idx ON xcap (username, domain, doc_uri);
  77. INSERT INTO version (table_name, table_version) values ('pua','7');
  78. CREATE TABLE pua (
  79. id INT(10) UNSIGNED AUTO_INCREMENT PRIMARY KEY NOT NULL,
  80. pres_uri VARCHAR(128) NOT NULL,
  81. pres_id VARCHAR(255) NOT NULL,
  82. event INT(11) NOT NULL,
  83. expires INT(11) NOT NULL,
  84. desired_expires INT(11) NOT NULL,
  85. flag INT(11) NOT NULL,
  86. etag VARCHAR(64) NOT NULL,
  87. tuple_id VARCHAR(64),
  88. watcher_uri VARCHAR(128) NOT NULL,
  89. call_id VARCHAR(255) NOT NULL,
  90. to_tag VARCHAR(64) NOT NULL,
  91. from_tag VARCHAR(64) NOT NULL,
  92. cseq INT(11) NOT NULL,
  93. record_route TEXT,
  94. contact VARCHAR(128) NOT NULL,
  95. remote_contact VARCHAR(128) NOT NULL,
  96. version INT(11) NOT NULL,
  97. extra_headers TEXT NOT NULL,
  98. CONSTRAINT pua_idx UNIQUE (etag, tuple_id, call_id, from_tag)
  99. ) ENGINE=MyISAM;
  100. CREATE INDEX expires_idx ON pua (expires);
  101. CREATE INDEX dialog1_idx ON pua (pres_id, pres_uri);
  102. CREATE INDEX dialog2_idx ON pua (call_id, from_tag);
  103. CREATE INDEX record_idx ON pua (pres_id);