diff options
author | Alexey Shchepin <alexey@process-one.net> | 2003-02-03 20:23:08 +0000 |
---|---|---|
committer | Alexey Shchepin <alexey@process-one.net> | 2003-02-03 20:23:08 +0000 |
commit | dc906c80c4545fcbbb82073c3ae8bfd381eaf98e (patch) | |
tree | 6d8f54c73631834130917ce7c41b680b96aef7d6 | |
parent | *** empty log message *** (diff) |
*** empty log message ***
SVN Revision: 57
-rw-r--r-- | doc/guide.html | 107 | ||||
-rw-r--r-- | doc/guide.tex | 111 |
2 files changed, 198 insertions, 20 deletions
diff --git a/doc/guide.html b/doc/guide.html index 6d95e6e73..078c7c723 100644 --- a/doc/guide.html +++ b/doc/guide.html @@ -17,8 +17,10 @@ <H3 ALIGN=center>Alexey Shchepin<BR><A HREF="mailto:alexey@sevcom.net"><TT>mailto:alexey@sevcom.net</TT></A><BR><A HREF="xmpp:aleksey@jabber.ru"><TT>xmpp:aleksey@jabber.ru</TT></A></H3> -<H3 ALIGN=center>January 29, 2003</H3> <DIV ALIGN=center><IMG SRC="logo.png"> +<H3 ALIGN=center>February 3, 2003</H3> <DIV ALIGN=center> + <IMG SRC="logo.png"> + </DIV><BR> <BR> @@ -32,9 +34,28 @@ <A NAME="sec:intro"></A><TT>ejabberd</TT> is a Free and Open Source distributed fault-tolerant Jabber server. It writen mostly in Erlang.<BR> <BR> -TBD<BR> -<BR> -<!--TOC section Installation--> +Main features of ejabberd is: +<UL> +<LI> + Distribution. You can run ejaberd on cluster of machines and all them + will serve one Jabber domain. + +<LI> Fault-tolerance. You can setup ejabberd cluster in such way, that all + information required for properly working will be stored permanently on more + then one machine, so if one of them crashed, then all other ones continue + working without any pauses. Also you can replace or add more machines ``on + the fly''. + +<LI> Support of <A HREF="http://www.jabber.org/jeps/jep-0030.html">JEP-0030</A> + (Service Discovery). + +<LI> Support of <A HREF="http://www.jabber.org/jeps/jep-0039.html">JEP-0039</A> + (Statistics Gathering). + +<LI> Support of <TT>xml:lang</TT> attribute in many XML elements. + +<LI> JUD based on users vCards. +</UL><!--TOC section Installation--> <H2>2 Installation</H2><!--SEC END --> @@ -121,8 +142,8 @@ serves. E. g. to use <TT>jabber.org</TT> domain add following line in confi <H4>3.1.2 Access Rules</H4><!--SEC END --> -<A NAME="sec:configaccess"></A>Access control in <TT>ejabberd</TT> is done via Access Control Lists (ACL). In -config file they looks like this: +<A NAME="sec:configaccess"></A>Access control in <TT>ejabberd</TT> is done via Access Control Lists (ACL). +Declaration of ACL in config file have following syntax: <PRE> {acl, <aclname>, {<acltype>, ...}}. </PRE><TT><acltype></TT> can be one of following: @@ -202,7 +223,7 @@ config file they looks like this: ]}. </PRE>When JID is checked to have access to <TT><accessname></TT>, server sequentially checks if this JID in one of the ACLs that are second elements in -eache tuple in list. If one of them matched, then returned first element of +each tuple in list. If one of them matched, then returned first element of matched tuple. Else returned ``<TT>deny</TT>''.<BR> <BR> Example: @@ -285,9 +306,9 @@ Example: {mod_time, [{iqdisc, no_queue}]}, {mod_version, []} ]}. -</PRE><!--TOC subsection Online Configuration--> +</PRE><!--TOC subsection Online Configuration and Monitoring--> -<H3>3.2 Online Configuration</H3><!--SEC END --> +<H3>3.2 Online Configuration and Monitoring</H3><!--SEC END --> <A NAME="sec:onlineconfig"></A>To use facility of online reconfiguration of <TT>ejabberd</TT> needed to have <TT>mod_configure</TT> loaded (see section <A HREF="#sec:modconfigure">5.4</A>). Also highly @@ -298,6 +319,74 @@ xdata-capable client developed synchronously with <TT>ejabberd</TT>, its CVS version use most of <TT>ejabberd</TT> features).<BR> <BR> +On disco query <TT>ejabberd</TT> returns following items: +<UL> +<LI> + Identity of server. + +<LI> List of features, including defined namespaces. + +<LI> List of JIDs from route table. + +<LI> List of disco-nodes described in following subsections. +</UL><!--TOC subsubsection Node <TT>config</TT>: Global Configuration--> + +<H4>3.2.1 Node <TT>config</TT>: Global Configuration</H4><!--SEC END --> +Under this node exists following nodes:<BR> +<BR> +<!--TOC paragraph Node <TT>config/hostname</TT>--> + +<H5> Node <TT>config/hostname</TT></H5><!--SEC END --> +Via <TT>jabber:x:data</TT> queries to this node possible to change host name of +this <TT>ejabberd</TT> server. (See figure <A HREF="#fig:hostname">1</A>) (Currently will work +correctly only after restart) +<BLOCKQUOTE><DIV ALIGN=center><DIV ALIGN=center><HR WIDTH="80%" SIZE=2></DIV> + [hostname editing window] + <BR> +<BR> +<DIV ALIGN=center>Figure 1: Editing of hostname</DIV><BR> + + <A NAME="fig:hostname"></A> +<DIV ALIGN=center><HR WIDTH="80%" SIZE=2></DIV></DIV></BLOCKQUOTE><!--TOC paragraph Node <TT>config/acls</TT>--> + +<H5> Node <TT>config/acls</TT></H5><!--SEC END --> +Via <TT>jabber:x:data</TT> queries to this node possible edit ACLs list. (See +figure <A HREF="#fig:acls">2</A>) +<BLOCKQUOTE><DIV ALIGN=center><DIV ALIGN=center><HR WIDTH="80%" SIZE=2></DIV> + [acls editing window] + <BR> +<BR> +<DIV ALIGN=center>Figure 2: Editing of ACLs</DIV><BR> + + <A NAME="fig:acls"></A> +<DIV ALIGN=center><HR WIDTH="80%" SIZE=2></DIV></DIV></BLOCKQUOTE><!--TOC paragraph Node <TT>config/access</TT>--> + +<H5> Node <TT>config/access</TT></H5><!--SEC END --> +Via <TT>jabber:x:data</TT> queries to this node possible edit access rules. +<B>Not work yet</B>.<BR> +<BR> +<!--TOC paragraph Node <TT>config/remusers</TT>--> + +<H5> Node <TT>config/remusers</TT></H5><!--SEC END --> +Via <TT>jabber:x:data</TT> queries to this node possible to remove users. If +removed user is online, then he will be disconnected. Also user-related data +(e.g. his roster) is removed (but appropriate module must be loaded).<BR> +<BR> +<!--TOC subsubsection Node <TT>online users</TT>: List of Online Users--> + +<H4>3.2.2 Node <TT>online users</TT>: List of Online Users</H4><!--SEC END --> +<!--TOC subsubsection Node <TT>all users</TT>: List of Connected User--> + +<H4>3.2.3 Node <TT>all users</TT>: List of Connected User</H4><!--SEC END --> +<!--TOC subsubsection Node <TT>outgoing s2s</TT>: List of Outgoing S2S connections--> + +<H4>3.2.4 Node <TT>outgoing s2s</TT>: List of Outgoing S2S connections</H4><!--SEC END --> +<!--TOC subsubsection Node <TT>running nodes</TT>: List of Running <TT>ejabberd</TT> Nodes--> + +<H4>3.2.5 Node <TT>running nodes</TT>: List of Running <TT>ejabberd</TT> Nodes</H4><!--SEC END --> +<!--TOC subsubsection Node <TT>stopped nodes</TT>: List of Stopped Nodes--> + +<H4>3.2.6 Node <TT>stopped nodes</TT>: List of Stopped Nodes</H4><!--SEC END --> TBD<BR> <BR> <!--TOC section Distribution--> diff --git a/doc/guide.tex b/doc/guide.tex index 7f516a8e2..da22aca77 100644 --- a/doc/guide.tex +++ b/doc/guide.tex @@ -6,7 +6,12 @@ \newcommand{\imgscale}{0.7} - +\newcommand{\insimg}[1]{ + \imgsrc{#1}{} + \begin{latexonly} + \scalebox{\imgscale}{\includegraphics{#1}} + \end{latexonly} +} \newcommand{\ns}[1]{\texttt{#1}} \newcommand{\ejabberd}{\texttt{ejabberd}} @@ -30,17 +35,14 @@ \author{Alexey Shchepin \\ \ahrefurl{mailto:alexey@sevcom.net} \\ \ahrefurl{xmpp:aleksey@jabber.ru}} -\date{January 29, 2003} +\date{February 3, 2003} \begin{document} \begin{titlepage} \maketitle{} {\centering - \imgsrc{logo.png}{} - \begin{latexonly} - \scalebox{\imgscale}{\includegraphics{logo.png}} - \end{latexonly} + \insimg{logo.png} \par } \end{titlepage} @@ -54,7 +56,23 @@ \ejabberd{} is a Free and Open Source distributed fault-tolerant \Jabber{} server. It writen mostly in Erlang. -TBD +Main features of ejabberd is: +\begin{itemize} +\item Distribution. You can run ejaberd on cluster of machines and all them + will serve one Jabber domain. +\item Fault-tolerance. You can setup ejabberd cluster in such way, that all + information required for properly working will be stored permanently on more + then one machine, so if one of them crashed, then all other ones continue + working without any pauses. Also you can replace or add more machines ``on + the fly''. +\item Support of \footahref{http://www.jabber.org/jeps/jep-0030.html}{JEP-0030} + (Service Discovery). +\item Support of \footahref{http://www.jabber.org/jeps/jep-0039.html}{JEP-0039} + (Statistics Gathering). +\item Support of \ns{xml:lang} attribute in many XML elements. +\item JUD based on users vCards. +\end{itemize} + @@ -158,8 +176,8 @@ serves. E.\,g.\ to use \texttt{jabber.org} domain add following line in config: \subsubsection{Access Rules} \label{sec:configaccess} -Access control in \ejabberd{} is done via Access Control Lists (ACL). In -config file they looks like this: +Access control in \ejabberd{} is done via Access Control Lists (ACL). +Declaration of ACL in config file have following syntax: \begin{verbatim} {acl, <aclname>, {<acltype>, ...}}. \end{verbatim} @@ -245,7 +263,7 @@ Allowing or denying of different services is like this: \end{verbatim} When JID is checked to have access to \texttt{<accessname>}, server sequentially checks if this JID in one of the ACLs that are second elements in -eache tuple in list. If one of them matched, then returned first element of +each tuple in list. If one of them matched, then returned first element of matched tuple. Else returned ``\texttt{deny}''. Example: @@ -334,7 +352,7 @@ Example: \end{verbatim} -\subsection{Online Configuration} +\subsection{Online Configuration and Monitoring} \label{sec:onlineconfig} To use facility of online reconfiguration of \ejabberd{} needed to have @@ -346,6 +364,77 @@ xdata-capable client developed synchronously with \ejabberd{}, its CVS version use most of \ejabberd{} features). +On disco query \ejabberd{} returns following items: +\begin{itemize} +\item Identity of server. +\item List of features, including defined namespaces. +\item List of JIDs from route table. +\item List of disco-nodes described in following subsections. +\end{itemize} + + +\subsubsection{Node \texttt{config}: Global Configuration} + +Under this node exists following nodes: + +\paragraph{Node \texttt{config/hostname}} + +Via \ns{jabber:x:data} queries to this node possible to change host name of +this \ejabberd{} server. (See figure~\ref{fig:hostname}) (Currently will work +correctly only after restart) +\begin{figure}[htbp] + \centering + [hostname editing window] + \caption{Editing of hostname} + \label{fig:hostname} +\end{figure} + + +\paragraph{Node \texttt{config/acls}} + +Via \ns{jabber:x:data} queries to this node possible edit ACLs list. (See +figure~\ref{fig:acls}) +\begin{figure}[htbp] + \centering + [acls editing window] + \caption{Editing of ACLs} + \label{fig:acls} +\end{figure} + + +\paragraph{Node \texttt{config/access}} + +Via \ns{jabber:x:data} queries to this node possible edit access rules. +\textbf{Not work yet}. + +\paragraph{Node \texttt{config/remusers}} + +Via \ns{jabber:x:data} queries to this node possible to remove users. If +removed user is online, then he will be disconnected. Also user-related data +(e.g. his roster) is removed (but appropriate module must be loaded). + + + + +\subsubsection{Node \texttt{online users}: List of Online Users} + + + + +\subsubsection{Node \texttt{all users}: List of Connected User} + +\subsubsection{Node \texttt{outgoing s2s}: List of Outgoing S2S connections} + +\subsubsection{Node \texttt{running nodes}: List of Running \ejabberd{} Nodes} + +\subsubsection{Node \texttt{stopped nodes}: List of Stopped Nodes} + + + + + + + TBD \section{Distribution} |