Software /
code /
prosody-modules
File
mod_list_inactive/mod_list_inactive.lua @ 6201:274fb65904a7
mod_cloud_notify(all the extentions): remove rockspec dependemcy so the prosody community module does not get installed, since trunk already has it.
diff --git a/mod_cloud_notify_encrypted/README.md b/mod_cloud_notify_encrypted/README.md
--- a/mod_cloud_notify_encrypted/README.md
+++ b/mod_cloud_notify_encrypted/README.md
@@ -2,9 +2,6 @@
labels:
- 'Stage-Alpha'
summary: 'Support for encrypted payloads in push notifications'
-rockspec:
- dependencies:
- - mod_cloud_notify
...
Introduction
diff --git a/mod_cloud_notify_filters/README.md b/mod_cloud_notify_filters/README.md
--- a/mod_cloud_notify_filters/README.md
+++ b/mod_cloud_notify_filters/README.md
@@ -2,9 +2,6 @@
labels:
- 'Stage-Alpha'
summary: 'Support for push notification filtering rules'
-rockspec:
- dependencies:
- - mod_cloud_notify
...
Introduction
diff --git a/mod_cloud_notify_priority_tag/README.md b/mod_cloud_notify_priority_tag/README.md
--- a/mod_cloud_notify_priority_tag/README.md
+++ b/mod_cloud_notify_priority_tag/README.md
@@ -2,9 +2,6 @@
labels:
- 'Stage-Alpha'
summary: 'Support for indicating importance to push notification servers'
-rockspec:
- dependencies:
- - mod_cloud_notify
...
Introduction
author | Menel <menel@snikket.de> |
---|---|
date | Thu, 13 Feb 2025 12:20:46 +0100 |
parent | 3891:38504ec4c89b |
line wrap: on
line source
-- Copyright (C) 2012-2013 Kim Alvefur local um = require "core.usermanager"; local sm = require "core.storagemanager"; local dm_load = require "util.datamanager".load; local jid_join = require"util.jid".join; local multipliers = { d = 86400, -- day w = 604800, -- week m = 2629746, -- month y = 31556952, -- year } local output_formats = { default = "%s", event = "%s %s %s", delete = "user:delete%q -- %s -- %s" } function module.command(arg) if #arg < 2 then print("usage: prosodyctl mod_list_inactive example.net time [format]"); print("time is a number followed by 'day', 'week', 'month' or 'year'"); print("formats are:"); for name, fmt in pairs(output_formats) do print(name, fmt:format("user@example.com", "<last action>", "<last action timestamp>")) end return; end local items = {}; local host = arg[1]; assert(hosts[host], "Host "..tostring(host).." does not exist"); sm.initialize_host(host); um.initialize_host(host); local max_age, unit = assert(arg[2], "No time range given"):match("^(%d*)%s*([dwmy]?)"); max_age = os.time() - ( tonumber(max_age) or 1 ) * ( multipliers[unit] or 1 ); local output = assert(output_formats[arg[3] or "default"], "No such output format: "..tostring(arg[3] or "default")); for user in um.users(host) do local last_active = dm_load(user, host, "lastlog"); local last_action = last_active and last_active.event or "?" last_active = last_active and last_active.timestamp or 0; if last_active < max_age then print(output:format(jid_join(user, host), last_action, os.date('%Y-%m-%d %H:%M:%S', last_active))); end end end