Commit Graph

42 Commits

Author SHA1 Message Date
Matthew Wild ad694d6436 prosody: Enable mod_measure_active_users
This allows an operator (via Prometheus, or eventually the web portal) to keep
tabs on how many people are using the server, e.g. to assist with capacity
planning. This will become more important once we allow user-to-user account
invitations.
2021-11-17 13:51:05 +00:00
Matthew Wild 569fce239c prosody: Switch to and enable mod_lastlog2
This records a timestamp of various account events - account registration
time, last connection and last disconnection.

In the future I would like to keep a time-limited record of account activity
so we can also present it to the user for security purposes (e.g. detecting
account compromise and access by third-parties). That will need additional
design work to figure out how to do it in a privacy-preserving way.
2021-11-17 13:47:42 +00:00
Matthew Wild 17444cc3bd prosody: Enable push notifications for offline group members by default
This avoids the app needing to gain logic to opt-in to push notifications.
Such logic may be fragile, and introduce additional traffic and round-trips
that would hurt performance.

Note that this will trigger pushes even to users who only use Android or
non-mobile devices. That should cause no issues, and the impact would be
minor. Also considering that non-iOS devices usually remain online most of the
time anyway.

Not accounted for in this commit is the MUC notification filtering side of
things. By default the MUC will push all messages, and
mod_cloud_notify(_filters) will allow all of them through to the device unless
the user explicitly configures otherwise within the app.

If the server can detect whether a MUC is public or private, it can make the
default behaviour more sensible (maybe when adding bookmarks or something?).
In any case, public channels are not a primary use-case for Snikket and can
easily be configured manually in the app for now.
2021-11-16 16:08:16 +00:00
Matthew Wild a24eddab8b prosody: Add symlink for mod_muc_offline_delivery 2021-11-15 14:15:56 +00:00
Matthew Wild 5dddfeb876 prosody: Prevent federation for users with prosody:restricted role (#37) 2021-11-08 12:51:14 +00:00
Matthew Wild 00ad72bcf1 prosody: add symlink for mod_cloud_notify_extensions 2021-11-02 12:52:51 +00:00
Matthew Wild dae151c7c9 prosody: Add new module to load push registration for new sessions 2021-10-18 14:17:20 +01:00
Matthew Wild ff38924c47
Merge pull request #71 from Zash/repo-filename
Specify a filename for repository
2021-10-18 13:52:15 +01:00
Matthew Wild 83c757c786 prosody: Add module to expose stable client id across sessions 2021-10-18 13:50:36 +01:00
Kim Alvefur 30e05e8754 Specify a filename for repository
So that it stays the same even if the URL is changed.
2021-10-18 14:15:32 +02:00
Matthew Wild bd10b2a861 Update luaunbound source URL while code.zash.se is offline 2021-08-27 07:49:37 +01:00
Matthew Wild 2c3ca07ee0 Add and enable mod_spam_reporting/mod_watch_spam_reports 2021-08-26 19:42:26 +01:00
Kim Alvefur 37f2af4acd Switch to mod_http_file_share
More future-proof, allowing for larger uploads.
2021-07-31 21:05:09 +02:00
Jonas Schäfer ff977f55b5 Allow to load the prometheus exposition module based on env vars
Useful for monitoring.
2021-05-27 18:08:26 +02:00
Jonas Schäfer 690f58bb27 Expose prosody metrics to the web portal
This requires mod_measure_process loaded and a recent version
of mod_http_admin_api to expose the metrics to the web portal in
a reduced and specialized form.
2021-05-27 18:08:26 +02:00
Matthew Wild a948cc141f Install latest prosody from deb, factor out variables 2021-05-17 21:22:01 +01:00
Matthew Wild 2bee41057b prosody: bump prosody-modules rev to latest (no particular reason) 2021-03-16 07:18:03 +00:00
Matthew Wild 173ca8b0c9 Add lua-unbound for more robust DNS resolution 2021-03-15 19:55:33 +00:00
Matthew Wild 7f26c50ba8 prosody: Add mod_http_host_status_check 2021-03-10 14:37:19 +00:00
Matthew Wild 36ffd5d4a0 mod_invites_bootstrap: Module/API to create initial admin invite at startup 2021-03-09 16:33:12 +00:00
Matthew Wild 3c3a74f1cc prosody: Bump prosody-modules to 6d595857164a 2021-02-23 21:00:18 +00:00
Matthew Wild c6aa7a9732 prosody: Bump prosody-modules to 38bd4d557413 2021-02-23 16:45:36 +00:00
Matthew Wild a9ee76b2f1 Bump prosody-modules to ea820de69265 2021-02-23 15:26:00 +00:00
Matthew Wild e881c983a6 prosody: Bump to latest prosody-modules 2021-02-22 13:18:42 +00:00
Jonas Schäfer 5e74fba75d Import fixes from prosody-modules
- Fix room destruction of circle rooms when circle is deleted or
  fails to be created (fixes #17)
- Add circle rooms to bookmarks of (newly added) members
  (fixes #16)
2021-02-04 16:18:47 +01:00
Matthew Wild a624aaebf4 prosody: Specify prosody-modules revision 2021-01-31 20:30:59 +00:00
Matthew Wild a301eb4bb7 prosody: Re-add some modules that we're still using (for now) 2021-01-29 17:31:33 +00:00
Matthew Wild dfb6cab374 prosody: Add new module mod_invites_default_group to add the default group to in-app invites 2021-01-28 21:28:40 +00:00
Matthew Wild eae03273ed prosody: Add lua-luaossl for mod_cloud_notify_encrypted 2021-01-27 18:07:27 +00:00
Matthew Wild 6cb87092bf mod_authz_internal: Remove in favour of upstream (prosody) module 2021-01-27 16:23:12 +00:00
Matthew Wild cd8638e154 prosody: Add mod_groups_internal from prosody-modules 2021-01-27 13:56:07 +00:00
Matthew Wild 1bff00eba7 prosody: Broad update to upstream (prosody-modules) where appropriate 2021-01-27 13:11:36 +00:00
Matthew Wild 2207199a60 prosody: Remove some unused modules 2021-01-22 23:04:42 +00:00
Matthew Wild c8f5179564 prosody: Add new push notification extensions for iOS app 2021-01-22 12:47:24 +00:00
Matthew Wild 2d64f7be49 Add modules required for web portal 2021-01-22 12:39:07 +00:00
Matthew Wild e430586282 Update update checks so they hopefully work 2020-11-11 16:50:30 +00:00
Matthew Wild cd78ad3241 Switch to Lua 5.2 (fixes build with new trunk packages) 2020-11-11 12:20:37 +00:00
Matthew Wild cb853ed32f Restrict general chat to local users 2020-05-13 12:20:25 +01:00
Matthew Wild 0793106447 Flesh out coturn config, autodiscover external IP 2020-05-12 15:10:59 +01:00
Matthew Wild 166e000b12 docker-compose, prosody: Switch to host networking for the container
This simplifies things in preparation for adding coturn and its large
number of ports.

As Prosody now must listen on the "real" HTTP ports, we had to give
permission to the Lua binary to bind low network ports.
2020-05-12 15:05:42 +01:00
Matthew Wild ea4be8d0b9 prosody: Load mod_firewall 2020-01-31 19:58:08 +00:00
Matthew Wild d6157c6a15 Initial commit 2020-01-31 13:46:46 +00:00