Mercurial > prosody-modules
view mod_mam_sql/README.markdown @ 1829:23b3c8e294d2
mod_filter_chatstates: Hack to make sure session.send does not return nil which may break things sometimes
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Fri, 04 Sep 2015 00:41:29 +0200 |
parents | 79b9bd84b91c |
children |
line wrap: on
line source
--- labels: - 'Stage-Alpha' - Deprecated summary: 'XEP-0313: Message Archive Management using SQL' ... **Note:** This module is unsupported and not up to date with the MAM specification Introduction ============ This is an old fork of mod\_mam with the purpose of figuring out and testing an appropriate schema for future inclusion in prosodys mod\_storage\_sql. That work is currently available in mod\_storage\_sql2, pending merging with mod\_storage\_sql. It talks SQL directly, bypassing prosodys storage layer. It is no longer maintained and is unlikely to work with modern clients. Details ======= See [mod\_mam](mod_mam.html) for details. Usage ===== First copy the module to the prosody plugins directory. Then add "mam\_sql" to your modules\_enabled list: ``` lua modules_enabled = { -- ... "mam_sql", -- ... } ``` You should probably run the SQL to create the archive table/indexes: ``` sql CREATE TABLE `prosodyarchive` ( `host` TEXT, `user` TEXT, `store` TEXT, `id` INTEGER PRIMARY KEY AUTOINCREMENT, `when` INTEGER, `with` TEXT, `resource` TEXT, `stanza` TEXT ); CREATE INDEX `hus` ON `prosodyarchive` (`host`, `user`, `store`); CREATE INDEX `with` ON `prosodyarchive` (`with`); CREATE INDEX `thetime` ON `prosodyarchive` (`when`); ``` (**NOTE**: I ran the following SQL to initialize the table/indexes on MySQL): ``` sql CREATE TABLE prosodyarchive ( `host` VARCHAR(1023) NOT NULL, `user` VARCHAR(1023) NOT NULL, `store` VARCHAR(1023) NOT NULL, `id` INTEGER PRIMARY KEY AUTO_INCREMENT, `when` INTEGER NOT NULL, `with` VARCHAR(2047) NOT NULL, `resource` VARCHAR(1023), `stanza` TEXT NOT NULL ); CREATE INDEX hus ON prosodyarchive (host, user, store); CREATE INDEX `with` ON prosodyarchive (`with`); CREATE INDEX thetime ON prosodyarchive (`when`); ``` You may want to tweak the column sizes a bit; I did for my own purposes. Configuration ============= This module uses the same configuration settings that [mod\_mam](mod_mam.html) does, in addition to the [SQL storage settings](http://prosody.im/doc/modules/mod_storage_sql). You may also name the SQL connection settings 'mam\_sql' if you want. Compatibility ============= ------- ---------------------- 0.8 ? 0.9 Works 0.10 Use mod\_mam instead trunk Use mod\_mam instead ------- ----------------------