# Commands

Commands start with the `/` character and can take a list of any number of arguments, separated by spaces. If an argument should contain a space, you can use the `"` character to surround this argument.

The commands described in this page are shown like this:

`/command <mandatory argument> [optional argument]`

You can get the same help as below from inside poezio with the /help command.

Note

Use command parameters like this:

- Do not use quotes if they are unnecessary (words without special chars or spaces)

- If the command takes several arguments, you need to put quotes around arguments containing special chars such as backslashes or quotes

- If the command always takes only one argument, then do not use quotes even for words containing special chars

## Global commands

These commands work in any tab.

/ad-hoc

  Usage: `/ad-hoc <jid>`

  List available ad-hoc commands on the given jid.

/bind

  Usage: `/bind <key> <eq>`

  Bind a key to another key or to a "command". For example, `/bind ^H KEY_UP` makes Control + h behave the same way as the Up key. See the key bindings documentation page for more details.

/bookmark

  Usage: `/bookmark [roomname][/nick] [autojoin] [password]`

  Bookmark the specified room. This command uses almost the same syntax as /join. Type `/help join` for syntax examples. Note that when typing /bookmark on its own, the room will be bookmarked with the nickname you're currently using in this room (instead of default_nick). You can specify an optional autojoin and password if you call it with the full line (/bookmark alone will put the room in autojoin without password). The bookmarks stored with this command are stored on your xmpp server.

/bookmark_local

  Usage: `/bookmark_local [roomname][/nick]`

  Bookmark the specified room (you will then auto-join it on each poezio start). This commands uses almost the same syntax as /join. Type /help join for syntax examples. Note that when typing /bookmark on its own, the room will be bookmarked with the nickname you're currently using in this room (instead of default_nick). The bookmarks stored with this command will be stored locally. They have priority over the ones stored online.

/bookmarks

  Usage: `/bookmarks`

  Open a Bookmarks tab in order to edit the current boookmarks.

/close

  Close the tab.

  Note

  The /close command will work everywhere, except in the Contact list tab, which can’t be closed.

/debug

  Usage: ``/debug [filename]

  Reset logging and enable debugging to `[filename]`. If the filename is empty, debug logging will be disabled.

/destroy_room

  Usage: `/destroy_room [room JID [reason [alternative venue]]]`

  Try to destroy the room given as a parameter, or the current room is not parameter is given and the current tab is a chatroom.

  You need to be the owner of a room or a server admin to destroy it.

/exit
/quit

  Just disconnect from the server and exit poezio.

/help

  Usage: `/help [command]`

  If called without an argument, this command will list the available commands. If it has a valid command as an argument, this command will show the usage and the help for the given command.

/impromptu

  Usage: `/impromptu <jid> [jid ..]`

  Invite specified JIDs into a newly created room.

  New in version 0.13.

/invitations

  Show the pending invitations.

/invite

  Usage: `/invite <jid> <room> [reason]`

  Invite jid to room with reason (if provided).

/join

  Usage: `/join [room_name][@server][/nick] [password]`

  Join the specified room. You can specify a nickname after a slash (/). If no nickname is specified, you will use the default_nick in the configuration file. You can omit the room name: you will then join the room you're looking at (useful if you were kicked). You can also provide a room_name without specifying a server, the server of the room you're currently in will be used. You can also provide a password to join the room.

  Examples:

  - `/join room@server.tld`

  - `/join room@server.tld/John`

  - `/join room2`

  - `/join /me_again`

  - `/join`

  - `/join room@server.tld/my_nick password`

  - `/join / password`

/last_activity

  Usage: `/activity <jid>`

  Show the last activity of a contact or a server (its uptime, in that case).

/list

  Usage: `/list [server.tld]`

  Get the list of public chatrooms in the specified server (open a List tab)

/load

  Usage: `/load <plugin name> [<other plugin> …]`

  Load or reload one or several plugins.

/message

  Usage: `/message <jid> [optional message]`

  Open a conversation with the specified JID (event if it is not in our contact list), and send a message to them, if specified.

/move_tab

  Usage: `/move_tab <source> <destination>`

  Move tab <source> to <destination>. If the create_gaps option is true, then it will leave a gap at the <source> position, leading to usual behaviour. If create_gaps is not enabled, then the tabs will number from 0 to your actual tab number, without gaps (which means their number will change if you close a tab on the left of the list).

  A value of `.` for a parameter means the current tab.

/next

  Go to the next room.

/plugins

  List the loaded plugins.

/presence

  Usage: `/presence <jid> [type] [status]`

  Send a directed presence to jid using type and status if provided.

/prev

  Go to the previous room.

/rawxml

  Usage: `/rawxml <stanza>`

  Send a custom XML stanza.

/reload

  Reload the config. You can achieve the same by sending SIGUSR1 to poezio.

/remove_bookmark

  Usage: `/remove_bookmark [room_jid]`

  Remove the bookmark on room_jid or the one on the current tab, if any.

/runkey

  Usage: `/runkey <key>`

  Execute the action defined for key. For example, `/runkey KEY_PPAGE` will scroll up, or `/runkey ^N` will go to the next tab.

/self

  Reminds you of who you are and what your status is.

/server_cycle

  Usage: `/server_cycle [server.tld] [message]`

  Disconnect and reconnect in all the rooms of server.tld.

/set

  Usage: `/set [plugin|][section] <option> <value>`

  Set the value to the option in your configuration file. You can, for example, change your default nickname by doing "/set default_nick toto" or your password with "/set password blabla". Doing so will write in the main config file, and in the main section ([Poezio]). But you can also write to another section, with `/set bindings M-i ^i`, to a plugin configuration with `/set mpd_client| host main` (notice the |, it is mandatory to write in a plugin), or even to another section in a plugin configuration `/set plugin|other_section option value`. toggle can be used as a special value for a boolean option. It just set the option to true if it’s currently false, and to false if it’s currently true.

/set_default

  Usage: `/set_default [section] <option>`

  Set the value of an option back to the default. For example, `/set_default password` will reset the `password` option.

/status

  Usage: `/status <availability> [status message]`

  Set your availability and (optionally) your status message. The <availability> argument is one of "available, chat, away, afk, dnd, busy, xa" and the optional [status] argument will be your status message.'

/theme

  Usage: `/theme [theme_name]`

  Reload the theme defined in the config file. If theme_name is given, this command will act like `/set theme theme_name` then /theme.

/toggle

  Usage: `/toggle <option>`

  Toggle an option, shortcut for /set <option> toggle.

/unload

  Usage: `/unload <plugin name> [<other plugin> …]`

  Unload one or several plugins.

/version

  Usage: `/version <jid>`

  Get the software version of the given JID (usually its XMPP client and Operating System).

/win
/w

  Usage: `/win <number or string>`

  Go to the matching tab. If the argument is a number, it goes to the tab with that number. Otherwise, it goes to the next tab whose name contains the given string.

/wup

  Usage: `/wup <prefix>`

  Go to the tab whose name starts with prefix. If multiple tabs start with that prefix, no action is taken.

  (Mnemonic: Window by Unique Prefix)

/xml_tab

  Open an XML tab.

## Chat tab commands

These commands will work in any conversation tab (MultiUserChat, Private, or

  Conversation tabs).

/clear

  Clear the current buffer.

/correct

  Usage: `/correct <corrected message>`

  Replace the content of the last sent message with corrected message.

/say

  Usage: `/say <message>`

  Just send the message (only useful it you want your message to begin with a /). Note that you can also send message starting with a / by starting it with //.

/scrollback
/sb

  Usage: `/scrollback end home clear status goto <+|-linecount>|<linenum>|<timestamp>`

  > Allows to go to the given line or message in the window.

/xhtml

  Usage: `/xhtml <custom xhtml>`

  Send a custom xhtml message to the current tab.

## MultiUserChat tab commands

/affiliation

  Usage: `/affiliation [<nick or jid> <affiliation>]`

  Sets the affiliation of the participant designated by nick or jid to the given affiliation (can be one of owner, admin, member, outcast and none). If not argument is provided, lists room affiliations.

/clear [Chatroom version]

  Usage: `/clear`

  Clear the messages buffer.

/color

  Usage: `/color <nick> <color>`

  Assign a color to the given nick. The nick and all its alias (nicks are considered identical if they only differ by the presence of one ore more _ character at the beginning or the end. For example _Foo and Foo___ are considered aliases of the nick Foo) will then always have the specified color, in all MultiUserChat tabs.

  Use the completion to get a list of all the available color values. Use the special color unset to remove the attributed color on this nick. You can also use random to attribute a random color.

/configure

  Configure the current room through a form (Open a Dataforms tab).

/cycle

  Usage: `/cycle [message]`

  Leave the current room an rejoint it immediately. You can specify an optional quit message.

/ignore

  Usage: `/ignore <nickname>`

  Ignore a specified nickname.

/info

  Usage: `/info <nickname>`

  Display some information about the user in the room: their role, affiliation, status, and status message.

/invite [Chatroom version]

  Usage: `/invite <jid> [reason]`

  Invite jid to this room with reason (if provided).

/kick

  Usage: `/kick <nick> [reason]`

  Kick the user with the specified nickname. You can also give an optional reason.

/leave

  Usage: `/leave [message]`

  Disconnect you from a room, on all of your clients. You can specify an optional message.

  This is similar to /part, but closes the tab and removes its bookmark, to make sure we don’t come back to this room the next time we open poezio or another client.

  This is similar to /close, but also removes the bookmark to make sure we don’t come back to this room the next time we open poezio or another client.

/names

  Get the list of the users in the room, their number, and the list of the people assuming different roles.

/nick

  Usage: `/nick <nickname>`

  Change your nickname in the current room.

/part

  Usage: `/part [message]`

  Disconnect you from a room. You can specify an optional message.

  This is similar to /leave, but keeps the tab open and doesn’t remove the bookmark, so restarting poezio or another client will reopen this room.

/query

  Usage: `/query <nick> [message]`

  Open a Private tab with <nick>. This nick has to be present in the room you’re currently in. If you specified a message after the nickname, it will be sent to this user.

/recolor

  Usage: `/recolor`

  Re-assign a color to all the participants in the current room, if the theme has changed.

/role

  Usage: `/affiliation <nick> <role>`

  Sets the role of the participant designated by nick to the given role (can be one of moderator, participant, visitor and none).

/topic

  Usage: `/topic [subject]`

  Change the subject of the room.

  Using the auto-completion of this command writes the current topic in the input, to help the user make a small change to the topic without having to rewrite it all by hand.

  If no subject is specified as an argument, the current topic is displayed, unchanged.

/unignore

  Usage: `/unignore <nickname>`

  Remove the specified nickname from the ignore list.

/version

  Usage: `/version <nickname or jid>`

  Get the software version of the given nick in room or the given jid (usually its XMPP client and Operating System).

## Private tab commands

/info

  Display some info about this user in the MultiUserChat.

/unquery

  Close the tab.

/version

  Get the software version of the current interlocutor (usually its XMPP client and Operating System).

## Normal Conversation tab commands

/invite

  Usage: `/invite <jid> [jid ..]`

  Invite specified JIDs, with this contact, into a newly created room.

  . versionadded:: 0.13

## Contact list tab commands

/accept

  Usage: `/accept [jid]`

  Authorize the provided JID (or the selected contact in the contact list) to see your presence.

/add

  Usage: `/add <jid>`

  Add the specified JID to your contact list and authorize them to see your presence. If they accepts you, the subscription will be mutual (and if they don’t, you can still /remove them).

/deny

  Usage: `/deny [jid]`

  Prevent the provided JID (or the selected contact in the contact list) from seeing your presence.

/groupadd

  Usage: `/groupadd (<jid> <group>|<group>)`

  Add the given JID to the given group (if the group does not exist, it will be created). If no jid is provided, the currently selected item on the contact list (resource or JID) will be used.

/groupmove

  Usage: `/groupmove <jid> <old_group> <new_group>`

  Move the given JID from one group to another (the JID has to be in the first group, and the new group may not exist).

/groupremove

  Usage: `/groupremove <jid> <group>`

  Remove the given JID from the given group (if the group is empty after that, it will get deleted).

/name

  Usage: `/name <jid> <name>`

  Set the given JID’s name in your contact list.

/password

  Usage: `/password <password>`

  Change your password.

/reconnect

  Disconnect from the remote server (if connected) and then connect to it again.

/remove

  Usage: `/remove [jid]`

  Remove the specified JID from your contact list. This will unsubscribe you from its presence, cancel its subscription to yours, and remove the item from your contact list.

Note

The following commands only exist if your server announces it supports them.

/block

  Usage: `/block [jid]`

  Block the following JID using simple blocking. You will not receive any of his messages and won’t be able to send some to him either.

/cert_add

  Usage: `/cert_add <name> <certificate file> [management]`

  Add a client X.509 certificate to the list of the certificates which grand access to your account. It must have an unique name the file must be in PEM format. `[management]` is true by default and specifies if the clients connecting with this particular certificate will be able to manage the list of authorized certificates.

/cert_disable

  Usage: `/cert_disable <name>`

  Remove a certificate from the authorized list. Clients currently connected with the certificate identified by `<name>` will however not be disconnected.

/cert_fetch

  Usage: `/cert_fetch <name> <path>`

  Download the public key of the authorized certificate identified by `name` from the XMPP server, and store it in `<path>`.

/cert_revoke

  Usage: `/cert_revoke <name>`

  Remove a certificate from the authorized list. Clients currently connected with the certificate identified by `<name>` will be disconnected.

/certs

  List the remotely stored X.509 certificated allowed to connect to your accounts.

/list_blocks

  List the blocked JIDs.

/unblock

  Usage: `/unblock [jid]`

  Unblock a previously blocked JID using simple blocking. You will be able to send and receive messages from him again.

Note

The following commands do not comply with any XEP or whatever, but they can still prove useful when you are migrating to an other JID.

/export

  Usage: `/export [/path/to/file]`

  Export your contacts into `/path/to/file` if specified, or `$HOME/poezio_contacts` if not.

/import

  Usage: `/import [/path/to/file]`

  Import your contacts from `/path/to/file` if specified, or `$HOME/poezio_contacts` if not.

## XML tab commands

/clear [XML tab version]

  Clear the current buffer.

/dump

  Usage: `/dump <filename>`

  Write the content of the XML buffer into a file.

/filter_from

  Usage: `/filter_from <jid>`

  Filter by JID for `from` attribute.

/filter_id

  Usage: `/filter_id <id>`

  Filter by stanza id attribute.

/filter_jid

  Usage: `/filter_jid <jid>`

  Filter by JID, both `to` and `from`.

/filter_reset

  Reset the stanza filters.

/filter_to

  Usage: `/filter_to <jid>`

  Filter by JID for the `to` attribute.

/filter_xmlmask

  Usage: `/filter_xmlmask <xml mask>`

  Filter using an XML mask

/filter_xpath

  Usage: `/filter_xpath <xpath>`

  Filter with an XPath selector.