180 lines
4.5 KiB
Markdown
180 lines
4.5 KiB
Markdown
---
|
|
title: Chat Room Configuration and Administration
|
|
description: A console-based XMPP client for power users.
|
|
sidebar:
|
|
order: 10
|
|
---
|
|
|
|
## Creating a room
|
|
|
|
Chat rooms are created when you join a room that does not yet exist, using the [`/join`](/command-reference#join) command.
|
|
|
|
If the server only supports an older version of the groupchat protocol, no further action is required, and other users may join the room.
|
|
|
|
Servers supporting <a href="http://xmpp.org/extensions/xep-0045.html" target="_blank" rel="noopener noreferrer">xep-0045</a> will create the room, which will be locked until the room has been configured, or the default configuration has been accepted.
|
|
|
|
To accept the default configuration and unlock the room:
|
|
|
|
```bash
|
|
/room accept
|
|
```
|
|
|
|
To view and edit the room configuration (see the next section for details):
|
|
|
|
```bash
|
|
/room config
|
|
```
|
|
|
|
To cancel room creation and destroy the room:
|
|
|
|
```bash
|
|
/room destroy
|
|
```
|
|
|
|
## Configuring a room
|
|
|
|
At any stage, users with appropriate privileges may configure a room with the following command:
|
|
|
|
```bash
|
|
/room config
|
|
```
|
|
|
|
A new window will be opened, and the room configuration form displayed. Each field in the form is given a tag (e.g. "field2").
|
|
|
|

|
|
|
|
Form fields can be manipulated using the field tag and the value to set, add or remove depending on the field type. For example:
|
|
|
|
```bash
|
|
/field1 "New room name"
|
|
/field3 off
|
|
/field5 remove visitor
|
|
/field13 anyone
|
|
/field18 add anotheruser@openfire.local
|
|
```
|
|
|
|
For more information on how to manipulate a specific field, use the /form help command specifying the field tag, e.g.:
|
|
|
|
```bash
|
|
/form help field12
|
|
```
|
|
|
|
At any time whilst the form is being edited, the latest values can be shown with:
|
|
|
|
```bash
|
|
/form show
|
|
```
|
|
|
|
To save the changes:
|
|
|
|
```bash
|
|
/form submit
|
|
```
|
|
|
|
To discard the changes:
|
|
|
|
```bash
|
|
/form cancel
|
|
```
|
|
|
|
## Destroying a room
|
|
|
|
If a user has appropriate privileges a room can be destroyed at any time using the following command:
|
|
|
|
```bash
|
|
/room destroy
|
|
```
|
|
|
|
## Kicking occupants
|
|
|
|
Users with appropriate privileges may kick occupants from a room:
|
|
|
|
```bash
|
|
/kick nova
|
|
```
|
|
|
|
An optional reason may be supplied:
|
|
|
|
```bash
|
|
/kick nova Please do not use foul language.
|
|
```
|
|
|
|
## Banning users
|
|
|
|
Users with appropriate privileges may ban users permanently from a room, banning is carried out using the users Jabber ID rather than their nickname in the room:
|
|
|
|
```bash
|
|
/ban molly@chat.org
|
|
```
|
|
|
|
An optional reason may be supplied:
|
|
|
|
```bash
|
|
/ban molly@chat.org You may not enter this room anymore.
|
|
```
|
|
|
|
## Managing occupant roles
|
|
|
|
Roles specify an occupant's privileges within a room for the duration of one particular visit to that room. The possible roles, and the privileges associated with them are defined in <a href="http://xmpp.org/extensions/xep-0045.html#roles" target="_blank" rel="noopener noreferrer">xep-0045</a>.
|
|
|
|
Roles are set using an occupant's room nickname, the user must have the appropriate privileges to run the following commands.
|
|
|
|
To show occupants of all roles:
|
|
|
|
```bash
|
|
/role list
|
|
```
|
|
|
|
To show occupants with a specific role:
|
|
|
|
```bash
|
|
/role list moderator
|
|
/role list participant
|
|
/role list visitor
|
|
```
|
|
|
|
To change an occupant's role, for example to set the occupant with nick _bobmould_ to have role _participant_:
|
|
|
|
```bash
|
|
/role set participant bobmould
|
|
```
|
|
|
|
An optional reason may be specified:
|
|
|
|
```bash
|
|
/role set participant bobmould You may now speak!
|
|
```
|
|
|
|
## Managing user affiliations
|
|
|
|
Affiliations specify a user's privileges for a room across visits to that room. The possible affiliations, and the privileges associated with them are defined in <a href="http://xmpp.org/extensions/xep-0045.html#affil" target="_blank" rel="noopener noreferrer">xep-0045</a>.
|
|
|
|
Affiliations are set using a user's JID, the user must have the appropriate privileges to run the following commands.
|
|
|
|
To show users of all affiliations:
|
|
|
|
```bash
|
|
/affiliation list
|
|
```
|
|
|
|
To show users with a specific affiliation:
|
|
|
|
```bash
|
|
/affiliation list owner
|
|
/affiliation list admin
|
|
/affiliation list member
|
|
/affiliation list outcast
|
|
```
|
|
|
|
To change a user's affiliation, for example to set the user with JID *bob_mould@chat.org* to have affiliation member:
|
|
|
|
```bash
|
|
/affiliation set member bob_mould@chat.org
|
|
```
|
|
|
|
An optional reason may be specified:
|
|
|
|
```bash
|
|
/affiliation set member bob_mould@chat.org Because you come here so often.
|
|
```
|