evennia.commands.default.comms¶
Comsystem command module.
Comm commands are OOC commands and intended to be made available to the Account at all times (they go into the AccountCmdSet). So we make sure to homogenize self.caller to always be the account object for easy handling.
-
class
evennia.commands.default.comms.
CmdAddCom
(**kwargs)[source]¶ Bases:
evennia.commands.default.muxcommand.MuxCommand
add a channel alias and/or subscribe to a channel
- Usage:
addcom [alias=] <channel>
Joins a given channel. If alias is given, this will allow you to refer to the channel by this alias rather than the full channel name. Subsequent calls of this command can be used to add multiple aliases to an already joined channel.
-
key
= 'addcom'¶
-
aliases
= ['chanalias', 'aliaschan']¶
-
help_category
= 'comms'¶
-
locks
= 'cmd:not pperm(channel_banned)'¶
-
account_caller
= True¶
-
lock_storage
= 'cmd:not pperm(channel_banned)'¶
-
class
evennia.commands.default.comms.
CmdDelCom
(**kwargs)[source]¶ Bases:
evennia.commands.default.muxcommand.MuxCommand
remove a channel alias and/or unsubscribe from channel
- Usage:
delcom <alias or channel> delcom/all <channel>
If the full channel name is given, unsubscribe from the channel. If an alias is given, remove the alias but don’t unsubscribe. If the ‘all’ switch is used, remove all aliases for that channel.
-
key
= 'delcom'¶
-
aliases
= ['delaliaschan', 'delchanalias']¶
-
help_category
= 'comms'¶
-
locks
= 'cmd:not perm(channel_banned)'¶
-
account_caller
= True¶
-
lock_storage
= 'cmd:not perm(channel_banned)'¶
-
class
evennia.commands.default.comms.
CmdAllCom
(**kwargs)[source]¶ Bases:
evennia.commands.default.muxcommand.MuxCommand
perform admin operations on all channels
- Usage:
allcom [on | off | who | destroy]
Allows the user to universally turn off or on all channels they are on, as well as perform a ‘who’ for all channels they are on. Destroy deletes all channels that you control.
Without argument, works like comlist.
-
key
= 'allcom'¶
-
locks
= 'cmd: not pperm(channel_banned)'¶
-
help_category
= 'comms'¶
-
account_caller
= True¶
-
aliases
= []¶
-
lock_storage
= 'cmd: not pperm(channel_banned)'¶
-
class
evennia.commands.default.comms.
CmdChannels
(**kwargs)[source]¶ Bases:
evennia.commands.default.muxcommand.MuxCommand
list all channels available to you
- Usage:
channels clist comlist
Lists all channels available to you, whether you listen to them or not. Use ‘comlist’ to only view your current channel subscriptions. Use addcom/delcom to join and leave channels
-
key
= 'channels'¶
-
aliases
= ['chanlist', 'clist', 'comlist', 'all channels', 'channellist']¶
-
help_category
= 'comms'¶
-
locks
= 'cmd: not pperm(channel_banned)'¶
-
account_caller
= True¶
-
lock_storage
= 'cmd: not pperm(channel_banned)'¶
-
class
evennia.commands.default.comms.
CmdCdestroy
(**kwargs)[source]¶ Bases:
evennia.commands.default.muxcommand.MuxCommand
destroy a channel you created
- Usage:
cdestroy <channel>
Destroys a channel that you control.
-
key
= 'cdestroy'¶
-
help_category
= 'comms'¶
-
locks
= 'cmd: not pperm(channel_banned)'¶
-
account_caller
= True¶
-
aliases
= []¶
-
lock_storage
= 'cmd: not pperm(channel_banned)'¶
-
class
evennia.commands.default.comms.
CmdCBoot
(**kwargs)[source]¶ Bases:
evennia.commands.default.muxcommand.MuxCommand
kick an account from a channel you control
- Usage:
cboot[/quiet] <channel> = <account> [:reason]
- Switch:
quiet - don’t notify the channel
Kicks an account or object from a channel you control.
-
key
= 'cboot'¶
-
switch_options
= ('quiet',)¶
-
locks
= 'cmd: not pperm(channel_banned)'¶
-
help_category
= 'comms'¶
-
account_caller
= True¶
-
aliases
= []¶
-
lock_storage
= 'cmd: not pperm(channel_banned)'¶
-
class
evennia.commands.default.comms.
CmdCemit
(**kwargs)[source]¶ Bases:
evennia.commands.default.muxcommand.MuxCommand
send an admin message to a channel you control
- Usage:
cemit[/switches] <channel> = <message>
- Switches:
sendername - attach the sender’s name before the message quiet - don’t echo the message back to sender
Allows the user to broadcast a message over a channel as long as they control it. It does not show the user’s name unless they provide the /sendername switch.
-
key
= 'cemit'¶
-
aliases
= ['cmsg']¶
-
switch_options
= ('sendername', 'quiet')¶
-
locks
= 'cmd: not pperm(channel_banned) and pperm(Player)'¶
-
help_category
= 'comms'¶
-
account_caller
= True¶
-
lock_storage
= 'cmd: not pperm(channel_banned) and pperm(Player)'¶
-
class
evennia.commands.default.comms.
CmdCWho
(**kwargs)[source]¶ Bases:
evennia.commands.default.muxcommand.MuxCommand
show who is listening to a channel
- Usage:
cwho <channel>
List who is connected to a given channel you have access to.
-
key
= 'cwho'¶
-
locks
= 'cmd: not pperm(channel_banned)'¶
-
help_category
= 'comms'¶
-
account_caller
= True¶
-
aliases
= []¶
-
lock_storage
= 'cmd: not pperm(channel_banned)'¶
-
class
evennia.commands.default.comms.
CmdChannelCreate
(**kwargs)[source]¶ Bases:
evennia.commands.default.muxcommand.MuxCommand
create a new channel
- Usage:
ccreate <new channel>[;alias;alias…] = description
Creates a new channel owned by you.
-
key
= 'ccreate'¶
-
aliases
= ['channelcreate']¶
-
locks
= 'cmd:not pperm(channel_banned) and pperm(Player)'¶
-
help_category
= 'comms'¶
-
account_caller
= True¶
-
lock_storage
= 'cmd:not pperm(channel_banned) and pperm(Player)'¶
-
class
evennia.commands.default.comms.
CmdClock
(**kwargs)[source]¶ Bases:
evennia.commands.default.muxcommand.MuxCommand
change channel locks of a channel you control
- Usage:
clock <channel> [= <lockstring>]
Changes the lock access restrictions of a channel. If no lockstring was given, view the current lock definitions.
-
key
= 'clock'¶
-
locks
= 'cmd:not pperm(channel_banned)'¶
-
aliases
= []¶
-
help_category
= 'comms'¶
-
account_caller
= True¶
-
lock_storage
= 'cmd:not pperm(channel_banned)'¶
-
class
evennia.commands.default.comms.
CmdCdesc
(**kwargs)[source]¶ Bases:
evennia.commands.default.muxcommand.MuxCommand
describe a channel you control
- Usage:
cdesc <channel> = <description>
Changes the description of the channel as shown in channel lists.
-
key
= 'cdesc'¶
-
locks
= 'cmd:not pperm(channel_banned)'¶
-
help_category
= 'comms'¶
-
account_caller
= True¶
-
aliases
= []¶
-
lock_storage
= 'cmd:not pperm(channel_banned)'¶
-
class
evennia.commands.default.comms.
CmdPage
(**kwargs)[source]¶ Bases:
evennia.commands.default.muxcommand.MuxCommand
send a private message to another account
- Usage:
page[/switches] [<account>,<account>,… = <message>] tell ‘’ page <number>
- Switch:
last - shows who you last messaged list - show your last <number> of tells/pages (default)
Send a message to target user (if online). If no argument is given, you will get a list of your latest messages.
-
key
= 'page'¶
-
aliases
= ['tell']¶
-
switch_options
= ('last', 'list')¶
-
locks
= 'cmd:not pperm(page_banned)'¶
-
help_category
= 'comms'¶
-
account_caller
= True¶
-
lock_storage
= 'cmd:not pperm(page_banned)'¶
-
class
evennia.commands.default.comms.
CmdIRC2Chan
(**kwargs)[source]¶ Bases:
evennia.commands.default.muxcommand.MuxCommand
Link an evennia channel to an external IRC channel
- Usage:
irc2chan[/switches] <evennia_channel> = <ircnetwork> <port> <#irchannel> <botname>[:typeclass] irc2chan/delete botname|#dbid
- Switches:
- /delete
this will delete the bot and remove the irc connection
to the channel. Requires the botname or #dbid as input.
- /remove
alias to /delete
/disconnect - alias to /delete /list - show all irc<->evennia mappings /ssl - use an SSL-encrypted connection
Example
irc2chan myircchan = irc.dalnet.net 6667 #mychannel evennia-bot irc2chan public = irc.freenode.net 6667 #evgaming #evbot:accounts.mybot.MyBot
This creates an IRC bot that connects to a given IRC network and channel. If a custom typeclass path is given, this will be used instead of the default bot class. The bot will relay everything said in the evennia channel to the IRC channel and vice versa. The bot will automatically connect at server start, so this command need only be given once. The /disconnect switch will permanently delete the bot. To only temporarily deactivate it, use the |wservices|n command instead. Provide an optional bot class path to use a custom bot.
-
key
= 'irc2chan'¶
-
switch_options
= ('delete', 'remove', 'disconnect', 'list', 'ssl')¶
-
locks
= 'cmd:serversetting(IRC_ENABLED) and pperm(Developer)'¶
-
help_category
= 'comms'¶
-
aliases
= []¶
-
lock_storage
= 'cmd:serversetting(IRC_ENABLED) and pperm(Developer)'¶
-
class
evennia.commands.default.comms.
CmdIRCStatus
(**kwargs)[source]¶ Bases:
evennia.commands.default.muxcommand.MuxCommand
Check and reboot IRC bot.
- Usage:
ircstatus [#dbref ping||nicklist||reconnect]
If not given arguments, will return a list of all bots (like irc2chan/list). The ‘ping’ argument will ping the IRC network to see if the connection is still responsive. The ‘nicklist’ argument (aliases are ‘who’ and ‘users’) will return a list of users on the remote IRC channel. Finally, ‘reconnect’ will force the client to disconnect and reconnect again. This may be a last resort if the client has silently lost connection (this may happen if the remote network experience network issues). During the reconnection messages sent to either channel will be lost.
-
key
= 'ircstatus'¶
-
locks
= 'cmd:serversetting(IRC_ENABLED) and perm(ircstatus) or perm(Builder))'¶
-
help_category
= 'comms'¶
-
aliases
= []¶
-
lock_storage
= 'cmd:serversetting(IRC_ENABLED) and perm(ircstatus) or perm(Builder))'¶
-
class
evennia.commands.default.comms.
CmdRSS2Chan
(**kwargs)[source]¶ Bases:
evennia.commands.default.muxcommand.MuxCommand
link an evennia channel to an external RSS feed
- Usage:
rss2chan[/switches] <evennia_channel> = <rss_url>
- Switches:
- /disconnect - this will stop the feed and remove the connection to the
channel.
- /remove
“
- /list
show all rss->evennia mappings
Example
rss2chan rsschan = http://code.google.com/feeds/p/evennia/updates/basic
This creates an RSS reader that connects to a given RSS feed url. Updates will be echoed as a title and news link to the given channel. The rate of updating is set with the RSS_UPDATE_INTERVAL variable in settings (default is every 10 minutes).
When disconnecting you need to supply both the channel and url again so as to identify the connection uniquely.
-
key
= 'rss2chan'¶
-
switch_options
= ('disconnect', 'remove', 'list')¶
-
locks
= 'cmd:serversetting(RSS_ENABLED) and pperm(Developer)'¶
-
help_category
= 'comms'¶
-
aliases
= []¶
-
lock_storage
= 'cmd:serversetting(RSS_ENABLED) and pperm(Developer)'¶
-
class
evennia.commands.default.comms.
CmdGrapevine2Chan
(**kwargs)[source]¶ Bases:
evennia.commands.default.muxcommand.MuxCommand
Link an Evennia channel to an external Grapevine channel
- Usage:
grapevine2chan[/switches] <evennia_channel> = <grapevine_channel> grapevine2chan/disconnect <connection #id>
- Switches:
- /list
(or no switch): show existing grapevine <-> Evennia
mappings and available grapevine chans
- /remove
alias to disconnect
- /delete
alias to disconnect
Example
grapevine2chan mygrapevine = gossip
This creates a link between an in-game Evennia channel and an external Grapevine channel. The game must be registered with the Grapevine network (register at https://grapevine.haus) and the GRAPEVINE_* auth information must be added to game settings.
-
key
= 'grapevine2chan'¶
-
switch_options
= ('disconnect', 'remove', 'delete', 'list')¶
-
locks
= 'cmd:serversetting(GRAPEVINE_ENABLED) and pperm(Developer)'¶
-
help_category
= 'comms'¶
-
aliases
= []¶
-
lock_storage
= 'cmd:serversetting(GRAPEVINE_ENABLED) and pperm(Developer)'¶