summaryrefslogtreecommitdiff
path: root/src/mod_mam.erl
diff options
context:
space:
mode:
authorChristophe Romain <cromain@users.noreply.github.com>2017-08-04 12:58:06 +0200
committerGitHub <noreply@github.com>2017-08-04 12:58:06 +0200
commit766b7c65a6841889220dffca766b8524f12df68d (patch)
tree3db1ea9ab36bafcbe89aeb4e4751a090c24a1cc3 /src/mod_mam.erl
parentRemove unused 'managers' option, related to the deferred XEP-0321 (#1443) (diff)
parentAdd mod_push_keepalive (diff)
Merge pull request #1881 from weiss/push
Support XEP-0357: Push Notifications
Diffstat (limited to 'src/mod_mam.erl')
-rw-r--r--src/mod_mam.erl19
1 files changed, 5 insertions, 14 deletions
diff --git a/src/mod_mam.erl b/src/mod_mam.erl
index d4c18d41..674cefc0 100644
--- a/src/mod_mam.erl
+++ b/src/mod_mam.erl
@@ -434,8 +434,9 @@ message_is_archived(false, #{jid := JID}, Pkt) ->
delete_old_messages(TypeBin, Days) when TypeBin == <<"chat">>;
TypeBin == <<"groupchat">>;
TypeBin == <<"all">> ->
+ CurrentTime = p1_time_compat:system_time(micro_seconds),
Diff = Days * 24 * 60 * 60 * 1000000,
- TimeStamp = usec_to_now(p1_time_compat:system_time(micro_seconds) - Diff),
+ TimeStamp = misc:usec_to_now(CurrentTime - Diff),
Type = misc:binary_to_atom(TypeBin),
DBTypes = lists:usort(
lists:map(
@@ -830,7 +831,7 @@ select(_LServer, JidRequestor, JidArchive, Query, RSM,
Msgs =
lists:flatmap(
fun({Nick, Pkt, _HaveSubject, Now, _Size}) ->
- TS = now_to_usec(Now),
+ TS = misc:now_to_usec(Now),
case match_interval(Now, Start, End) and
match_rsm(Now, RSM) of
true ->
@@ -979,24 +980,14 @@ match_interval(Now, Start, End) ->
(Now >= Start) and (Now =< End).
match_rsm(Now, #rsm_set{'after' = ID}) when is_binary(ID), ID /= <<"">> ->
- Now1 = (catch usec_to_now(binary_to_integer(ID))),
+ Now1 = (catch misc:usec_to_now(binary_to_integer(ID))),
Now > Now1;
match_rsm(Now, #rsm_set{before = ID}) when is_binary(ID), ID /= <<"">> ->
- Now1 = (catch usec_to_now(binary_to_integer(ID))),
+ Now1 = (catch misc:usec_to_now(binary_to_integer(ID))),
Now < Now1;
match_rsm(_Now, _) ->
true.
-now_to_usec({MSec, Sec, USec}) ->
- (MSec*1000000 + Sec)*1000000 + USec.
-
-usec_to_now(Int) ->
- Secs = Int div 1000000,
- USec = Int rem 1000000,
- MSec = Secs div 1000000,
- Sec = Secs rem 1000000,
- {MSec, Sec, USec}.
-
get_jids(undefined) ->
[];
get_jids(Js) ->