feat(daemon): publish room member statistics over RPC and the CLI
The statistics parsed from the JoinRoom reply were reachable only from the library. They answer the question `room users` already exists to ask -- who is in here, and are they worth downloading from -- so they belong on its output rather than behind a second call. - proto: room.member_stats, with a RoomUserStatsDto carrying status, share counts, free slots and country - SessionApi::room_member_stats, so local and remote sessions stay interchangeable; the status word is decoded through one shared helper rather than a third copy of the match - `room users` now emits status, average_speed, shared_files, shared_folders, slots_free and country, each null when the server said nothing, documented in SKILL.md - docs/openrpc.json regenerated from the wire types
This commit is contained in:
@@ -140,7 +140,11 @@ cheapest way to prove the credentials and connection work.
|
||||
server did not answer — those are different facts, so do not treat null as 0.
|
||||
|
||||
**`room list`** — `room`, `users`.
|
||||
**`room users <room>`** — `room`, `user`.
|
||||
**`room users <room>`** — `room`, `user`, `status`, `average_speed`,
|
||||
`shared_files`, `shared_folders`, `slots_free`, `country`. Everything but
|
||||
`room` and `user` is `null` when the server sent no statistics for that
|
||||
member — `null` means unknown, not zero. `slots_free` of 0 means the peer has
|
||||
no free upload slot right now, so a download from them will queue.
|
||||
**`room listen <room>`** — streams `type`, `room`, `user`, `message`.
|
||||
**`room say <room> <message>`** — prints nothing; exit 0 is the confirmation.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user