summaryrefslogtreecommitdiff
path: root/src/mod_offline.erl (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Update newest copyright year to 2021 (#3464)Badlop2021-01-271-1/+1
|
* Don't do double utf-8 conversion on translated strings in str:formatPaweł Chmielowski2020-11-091-1/+1
| | | | | | | This caused garbled text in some places in webadmin when using language that used characters > 128. Thanks to chengshq for noticing this and providing preliminary patch.
* Use include_lib() to include headers from dependencies (#3369)Stu Tomlinson2020-09-031-1/+1
|
* Mark dangerous buttons with CSS (#3363)Badlop2020-08-241-8/+11
|
* Fix some English typosBadlop2020-04-211-2/+2
|
* Update links to the ejabberd Docs page in WebAdminBadlop2020-04-141-1/+1
|
* Update copyright to 2020 (#3149)Badlop2020-01-281-1/+1
|
* Generate ejabberd.yml.5 man page from source code directlyEvgeny Khramtsov2020-01-081-1/+117
| | | | | | | Several documentation callbacks (doc/0 and mod_doc/0) are implemented and `ejabberdctl man` command is added to generate a man page. Note that the command requires a2x to be installed (which is a part of asciidoc package).
* Omit push notifications if offline storage failedHolger Weiss2020-01-051-20/+14
| | | | | | | | | This commit removes the 'store_offline_message' hook which didn't allow mod_push to suppress notifications when storing an offline message failed (due to the offline spool size limit being exceeded or due to database issues). Fixes #3120.
* Correctly handle unicode in log messagesEvgeny Khramtsov2019-09-231-4/+4
|
* Fix some links to Guide in WebAdmin and add new ones (#3003)Badlop2019-08-271-3/+2
|
* Avoid using ! in ejabberd_router and mod_offlineEvgeny Khramtsov2019-07-031-1/+1
|
* Invalidate proper cache when using mam for offline in pop_messagesPaweł Chmielowski2019-07-011-9/+1
|
* Make count_offline_messages cache work when offline uses mam for storagePaweł Chmielowski2019-07-011-58/+106
| | | | | This also replace existing cache for checking if spool is empty with this cache.
* Cache number of offline messagesEvgeny Khramtsov2019-06-301-37/+118
|
* Make logging messages more consistentEvgeny Khramtsov2019-06-241-2/+2
|
* Improve extraction of translated stringsEvgeny Khramtsov2019-06-221-16/+18
| | | | | | | | | | | | | Now every such string MUST be encapsulated into ?T() macro. The macro itself is defined in include/translate.hrl. Example: -module(foo). -export([bar/1]). -include("translate.hrl"). bar(Lang) -> translate:translate(Lang, ?T("baz")).
* Make option 'validate_stream' globalEvgeny Khramtsov2019-06-211-2/+2
|
* Get rid of "well-known" typeEvgeny Khramtsov2019-06-151-7/+4
|
* Use new configuration validatorEvgeny Khramtsov2019-06-141-52/+45
|
* Change implementation of mod_offline use_mam_for_storagePaweł Chmielowski2019-05-281-48/+45
| | | | | | | | | | | | | | Previous version was trying to determine range of messages that should be fetched from mam by storing time when last user resource disconnected. But that had couple edge cases that could cause problems, for example in case of node crash we could not store information about user disconnect and with that we didn't have data to initiate mam query. New version don't track user disconnects, but simply ensure that we have timestamp of first message that is gonna be put in storage, after some measurements cost of that check with caching on top is not that costly, and as much more robust i decided to introduce that change.
* When applying limit of max msgs in spool check only spool sizePaweł Chmielowski2019-05-071-3/+7
|
* Do not store mucsub wrapped messages with no-store hint in offline storagePaweł Chmielowski2019-05-061-24/+31
| | | | | | We already don't store those messages in mam and we don't store messages that aren't wrapped with that hint in offline, so it make sense to extend it also to mucsub messages.
* Set from/to in activity marker messagesPaweł Chmielowski2019-05-021-1/+1
|
* Always store ActivityMarker messagesPaweł Chmielowski2019-05-021-3/+11
|
* Don't issue count/message fetch queries for offline from mam when not neededPaweł Chmielowski2019-05-021-7/+36
|
* Fix offline from mam on mnesiaPaweł Chmielowski2019-04-291-1/+3
|
* Properly handle infinity as max number of message in mam offline storagePaweł Chmielowski2019-04-291-2/+3
|
* Sort messages by stanza_id when using mam storage in mod_offlinePaweł Chmielowski2019-04-291-6/+21
|
* Return correct value from count_offline_messages with mam storage optionPaweł Chmielowski2019-04-291-2/+10
|
* Make mod_offline put msg ignored by mam in spool when mam storage is onPaweł Chmielowski2019-04-291-2/+3
|
* Add mod_offline option for fetching data from mam instead of from spool tablePaweł Chmielowski2019-04-261-66/+232
| | | | | | | | | | | This commit introduces `use_mam_for_storage` option that take boolean argument. Enabling it will make mod_offline not use spool table for storing offline message, but instead will use mam archive to retrieve messages stored when offline. Enabling this option have couple drawback currently, only messages that were stored in mam will be available, most of flexible message retrieval queries don't work (those that allow retrieval/deletion of messages by id).
* Flip default bounce_groupchat flag value, muc will drop bounces anywayPaweł Chmielowski2019-03-141-1/+1
|
* Add option to mod_offline to make it not bounce mucsub/groupchat messagesPaweł Chmielowski2019-03-141-11/+37
|
* Replace code using p1_time_compat wrapper with native functionsPaweł Chmielowski2019-02-271-4/+4
| | | | | | | Since we now require R19, we shouldn't need that anymore. There are still couple places where p1_time_compat:unique_timestamp() is used as there is no direct equivalent.
* Update copyright to 2019 (#2756)Badlop2019-01-081-1/+1
|
* mod_offline: make some database callbacks optionalEvgeny Khramtsov2019-01-081-2/+10
|
* We are handling groupchat in other branch nowPaweł Chmielowski2018-12-201-1/+0
|
* Add option to mod_offline that would allow storing group chat messagesPaweł Chmielowski2018-12-201-8/+20
|
* Move some functions from xmpp back into ejabberdHolger Weiss2018-10-251-3/+3
|
* Guard against pres_last=undefined in mod_offlinePaweł Chmielowski2018-06-201-2/+2
|
* Get rid of ejabberd.hrl headerEvgeniy Khramtsov2018-06-141-1/+0
| | | | | | | | | The header consisted of too many unrelated stuff and macros misuse. Some stuff is moved into scram.hrl and type_compat.hrl. All macros have been replaced with the corresponding function calls. TODO: probably type_compat.hrl is not even needed anymore since we support only Erlang >= OTP 17.5
* Remove 'iqdisc' optionEvgeniy Khramtsov2018-02-111-12/+2
| | | | | | | | | | | | | | | | | Since we got rid of all bottle-neck processes and we have a connection pool for every database, the option is no longer needed and in fact is detrimental: in practice what you get is just a bunch of overloaded processes in the IQ handlers pool no matter how much you increase the `iqdisc` value. Given that there are close to zero operators understanding the meaning of the option and, hence, not using it all, it's not simply deprecated but completely removed. The commit also deprecates the following functions: - gen_iq_handler:add_iq_handler/6 - gen_iq_handler:handle/5 - gen_iq_handler:iqdisc/1
* Introduce option 'validate_stream'Evgeniy Khramtsov2018-02-091-2/+4
| | | | | | | | | | | | If set to `true`, all incoming XML packets are fully validated against known schemas. If an error occurs, the packet will be bounced with the corresponding error reason. The default value is `false`. The option might be useful to protect client software from sofisticated bugs related to XML validation as well as for client developers who want to catch validation errors at early stage of development. Note that the option might have slight performance impact, so use it with care on loaded machines.
* Introduce new gen_mod callback: mod_options/1Evgeniy Khramtsov2018-01-231-9/+12
| | | | | | | The callback is supposed to provide known options and their default values, as long as the documentation. Passing default values into get_mod functions is now deprecated: all defaults should be provided by the Mod:mod_options/1 callback.
* Update copyright datesEvgeniy Khramtsov2018-01-051-1/+1
|
* mod_offline: Always ignore groupchat messagesHolger Weiss2017-12-021-1/+2
|
* Fix deletion of multiple offline messages using WebAdmin (#1962)Badlop2017-08-251-12/+15
|
* Fix invalid argument in get_messages_susbsetPaweł Chmielowski2017-06-301-1/+1
| | | | This should fix #1818
* Don't store messages via a single processEvgeniy Khramtsov2017-05-211-130/+65
|