<chapter id="ucommands">
    <title>User Commands</title>
    <sect1>
      <title>User commands</title>
      <para>
	Standard IRC commands are not listed here.
	Several of the commands in the operator commands chapter
	can also be used by normal users.
      </para>
      <sect2>
	<title>ACCEPT</title>
	<cmdsynopsis><command>ACCEPT</command>
	  <arg choice=plain><replaceable>nick</replaceable>,</arg>
	  <arg choice=plain>-<replaceable>nick</replaceable>,</arg>
	  <arg choice=plain><replaceable>...</replaceable></arg>
	</cmdsynopsis>
	<para>
	  Adds or removes users from your accept list for umode +g and +R.
	  Users are automatically removed when they quit, split or change
	  nick.
	</para>
	<cmdsynopsis><command>ACCEPT</command>
	  <arg choice=plain>*</arg>
	</cmdsynopsis>
	<para>
	  Lists all users on your accept list.
	</para>
	<para>
	  Support of this command is indicated by the CALLERID token in
	  RPL_ISUPPORT (005); the optional parameter indicates the letter
	  of the <quote>only allow accept users to send private messages</quote>
	  umode, otherwise +g. In charybdis this is always +g.
	</para>
      </sect2>
      <sect2>
	<title>CNOTICE</title>
	<cmdsynopsis><command>CNOTICE</command>
	  <arg choice=plain><replaceable>nick</replaceable></arg>
	  <arg choice=plain><replaceable>channel</replaceable></arg>
	  <arg choice=plain>:<replaceable>text</replaceable></arg>
	</cmdsynopsis>
	<para>
	  Providing you are opped (+o) or voiced (+v) in
	  <replaceable>channel</replaceable>, and <replaceable>nick</replaceable>
	  is a member of <replaceable>channel</replaceable>, CNOTICE generates a NOTICE towards
	  <replaceable>nick</replaceable>.
	</para>
	<para>
	  CNOTICE bypasses any anti-spam measures in place.
	  If you get <quote>Targets changing too fast, message dropped</quote>,
	  you should probably use this command, for example sending a
	  notice to every user joining a certain channel.
	</para>
	<para>
	  As of charybdis 3.1, NOTICE automatically behaves as CNOTICE
	  if you are in a channel fulfilling the conditions.
	</para>
	<para>
	  Support of this command is indicated by the CNOTICE token in
	  RPL_ISUPPORT (005).
	</para>
      </sect2>
      <sect2>
	<title>CPRIVMSG</title>
	<cmdsynopsis><command>CPRIVMSG</command>
	  <arg choice=plain><replaceable>nick</replaceable></arg>
	  <arg choice=plain><replaceable>channel</replaceable></arg>
	  <arg choice=plain>:<replaceable>text</replaceable></arg>
	</cmdsynopsis>
	<para>
	  Providing you are opped (+o) or voiced (+v) in
	  <replaceable>channel</replaceable>, and <replaceable>nick</replaceable>
	  is a member of <replaceable>channel</replaceable>, CPRIVMSG generates a PRIVMSG towards
	  <replaceable>nick</replaceable>.
	</para>
	<para>
	  CPRIVMSG bypasses any anti-spam measures in place.
	  If you get <quote>Targets changing too fast, message dropped</quote>,
	  you should probably use this command.
	</para>
	<para>
	  As of charybdis 3.1, PRIVMSG automatically behaves as CPRIVMSG
	  if you are in a channel fulfilling the conditions.
	</para>
	<para>
	  Support of this command is indicated by the CPRIVMSG token in
	  RPL_ISUPPORT (005).
	</para>
      </sect2>
      <sect2>
	<title>FINDFORWARDS</title>
	<cmdsynopsis><command>FINDFORWARDS</command>
	  <arg choice=plain><replaceable>channel</replaceable></arg>
	</cmdsynopsis>
	<para>
	  <note>
	    <para>
	      This command is only available if the <filename>m_findforwards.so</filename> extension is loaded.
	    </para>
	  </note>
	  Displays which channels forward to the given channel (via cmode +f).
	  If there are very many channels the list will be truncated.
	</para>
	<para>
	  You must be a channel operator on the channel or an IRC operator
	  to use this command.
	</para>
      </sect2>
      <sect2>
	<title>HELP</title>
	<cmdsynopsis><command>HELP</command>
	  <arg><replaceable>topic</replaceable></arg>
	</cmdsynopsis>
	<para>
	  Displays help information. <replaceable>topic</replaceable> can
	  be INDEX, CREDITS, UMODE, CMODE, SNOMASK or a command name.
	</para>
	<para>
	  There are separate help files for users and opers. Opers can use
	  UHELP to query the user help files.
	</para>
      </sect2>
      <sect2>
	<title>IDENTIFY</title>
	<cmdsynopsis><command>IDENTIFY</command>
	  <arg choice=plain><replaceable>parameters...</replaceable></arg>
	</cmdsynopsis>
	<para>
	  <note>
	    <para>
	      This command is only available if the <filename>m_identify.so</filename> extension is loaded.
	    </para>
	  </note>
	  Sends an identify command to either NickServ or ChanServ.
	  If the first parameter starts with #, the command is sent to
	  ChanServ, otherwise to NickServ.
	  The word IDENTIFY, a space and all parameters are concatenated
	  and sent as a PRIVMSG to the service.
	  If the service is not online or does not have umode +S set, 
	  no message will be sent.
	</para>
	<para>
	  The exact syntax for this command depends on the services package
	  in use.
	</para>
      </sect2>
      <sect2>
	<title>KNOCK</title>
	<cmdsynopsis><command>KNOCK</command>
	  <arg choice=plain><replaceable>channel</replaceable></arg>
	</cmdsynopsis>
	<para>
	  Requests an invite to the given channel. The channel must be
	  locked somehow (+ikl), must not be +p and you may not be banned
	  or quieted. Also, this command is rate limited.
	</para>
	<para>
	  If successful, all channel operators will receive a 710 numeric.
	  The recipient field of this numeric is the channel.
	</para>
	<para>
	  Support of this command is indicated by the KNOCK token in
	  RPL_ISUPPORT (005).
	</para>
      </sect2>
      <sect2>
	<title>MONITOR</title>
	<para>
	  Server side notify list. This list contains nicks. When a user
	  connects, quits with a listed nick or changes to or from a listed
	  nick, you will receive a 730 numeric if the nick went online and
	  a 731 numeric if the nick went offline.
	</para>
	<para>
	  Support of this command is indicated by the MONITOR token in
	  RPL_ISUPPORT (005); the parameter indicates the maximum number
	  of nicknames you may have in your monitor list.
	</para>
	<para>
	  You may only use this command once per second.
	</para>
	<para>
	  More details can be found in <filename>doc/monitor.txt</filename>
	  in the source distribution.
	</para>
	<cmdsynopsis><command>MONITOR +</command>
	  <arg choice=plain><replaceable>nick</replaceable>,</arg>
	  <arg choice=plain><replaceable>...</replaceable></arg>
	</cmdsynopsis>
	<para>
	  Adds nicks to your monitor list. You will receive 730 and 731
	  numerics for the nicks.
	</para>
	<cmdsynopsis><command>MONITOR -</command>
	  <arg choice=plain><replaceable>nick</replaceable>,</arg>
	  <arg choice=plain><replaceable>...</replaceable></arg>
	</cmdsynopsis>
	<para>
	  Removes nicks from your monitor list. No output is generated for
	  this command.
	</para>
	<cmdsynopsis><command>MONITOR C</command>
	</cmdsynopsis>
	<para>
	  Clears your monitor list. No output is generated for
	  this command.
	</para>
	<cmdsynopsis><command>MONITOR L</command>
	</cmdsynopsis>
	<para>
	  Lists all nicks on your monitor list, using 732 numerics and
	  ending with a 733 numeric.
	</para>
	<cmdsynopsis><command>MONITOR S</command>
	</cmdsynopsis>
	<para>
	  Shows status for all nicks on your monitor list, using 730 and 731
	  numerics.
	</para>
      </sect2>
    </sect1>
  </chapter>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-namecase-general:t
sgml-general-insert-case:lower
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:2
sgml-indent-data:t
sgml-parent-document: ("charybdis-oper-guide.sgml" "book")
sgml-exposed-tags:nil
sgml-local-ecat-files:nil
fill-column:105
End:
-->