Skip to content

feat(module): let app users appear in :users and exchange private messages - #112

Merged
m1ngsama merged 2 commits into
mainfrom
feat/remote-users
Oct 14, 2026
Merged

m1ngsama merged 2 commits into
mainfrom
feat/remote-users

Conversation

@m1ngsama

Copy link
Copy Markdown
Owner

Needs your call:

  • :users and the status bar now count app users; exec users and stats still count SSH sessions only, since they are the machine API (src/commands.c).

App users joined through the gateway were invisible to terminal users, and private messages only worked between SSH sessions.

  • New grantable permission message:private, held by at most one module.
  • presence.remote gives the full set of app users. They show in :users marked · app, in nickname completion, and as :msg targets. The set clears when the module stops.
  • :msg and :reply to an app user emit private.created with a verified flag. An SSH session with the same name still wins.
  • private.post delivers an app user's message to an SSH user's inbox like any private message. Private messages stay out of the log and out of message.created.
  • Version 1.6.0. make test passes, with 11 new checks in test_module_private.sh.

… app users

A module granted message:private reports the users online through it with
presence.remote. SSH users see them in :users, marked app, in the status
bar's online count, and in nickname completion. :msg, :w and :reply to a
remote name reach the module as private.created, and private.post delivers
a remote user's private message to SSH sessions like one from another SSH
user. At most one module holds the permission, and its remote users are
cleared when it stops or is disabled.
@m1ngsama
m1ngsama merged commit da3108e into main Oct 14, 2026
4 checks passed
@m1ngsama
m1ngsama deleted the feat/remote-users branch October 14, 2026 12:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant