]> granicus.if.org Git - ejabberd/commitdiff
*** empty log message ***
authorAlexey Shchepin <alexey@process-one.net>
Thu, 23 Jan 2003 20:57:55 +0000 (20:57 +0000)
committerAlexey Shchepin <alexey@process-one.net>
Thu, 23 Jan 2003 20:57:55 +0000 (20:57 +0000)
SVN Revision: 48

doc/guide.html [new file with mode: 0644]
doc/guide.tex [new file with mode: 0644]
doc/logo.png [new file with mode: 0644]
src/ejabberd.cfg

diff --git a/doc/guide.html b/doc/guide.html
new file mode 100644 (file)
index 0000000..a8ff887
--- /dev/null
@@ -0,0 +1,229 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
+            "http://www.w3.org/TR/REC-html40/loose.dtd">
+<HTML>
+<HEAD><TITLE>Ejabberd Installation and Operation Guide</TITLE>
+<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<META name="GENERATOR" content="hevea 1.05">
+</HEAD>
+<BODY >
+<!--HEVEA command line is: hevea guide.tex -->
+<!--HTMLHEAD-->
+<!--ENDHTML-->
+<!--CUT DEF section 1 -->
+
+
+<H1 ALIGN=center>Ejabberd Installation and Operation Guide</H1>
+
+<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 23, 2003</H3> <DIV ALIGN=center><IMG SRC="logo.png">
+ </DIV>
+
+<BR>
+<BR>
+<!--TOC section Introduction-->
+
+<H2>1&nbsp;&nbsp; Introduction</H2><!--SEC END -->
+
+<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-->
+
+<H2>2&nbsp;&nbsp; Installation</H2><!--SEC END -->
+
+<A NAME="sec:installation"></A><!--TOC subsection Installation Requirements-->
+
+<H3>2.1&nbsp;&nbsp; Installation Requirements</H3><!--SEC END -->
+
+<A NAME="sec:installreq"></A>To compile <TT>ejabberd</TT>, you need following packages:
+<UL>
+<LI>
+ GNU Make;
+
+<LI> GCC;
+
+<LI> libexpat 1.95 or later;
+
+<LI> Erlang/OTP R8B or later.
+</UL><!--TOC subsection Obtaining-->
+
+<H3>2.2&nbsp;&nbsp; Obtaining</H3><!--SEC END -->
+
+<A NAME="sec:obtaining"></A>Currently no stable version released.<BR>
+<BR>
+Latest alpha version can be retrieved via CVS. Do following steps:
+<UL>
+<LI>
+ <TT>export CVSROOT=:pserver:cvs@www.jabber.ru:/var/spool/cvs</TT>
+
+<LI> <TT>cvs login</TT>
+
+<LI> Enter empty password
+
+<LI> <TT>cvs -z3 co ejabberd</TT>
+</UL><!--TOC subsection Compilation-->
+
+<H3>2.3&nbsp;&nbsp; Compilation</H3><!--SEC END -->
+
+<A NAME="sec:compilation"></A><!--TOC section Configuration-->
+
+<H2>3&nbsp;&nbsp; Configuration</H2><!--SEC END -->
+
+<A NAME="sec:configuration"></A><!--TOC subsection Initial Configuration-->
+
+<H3>3.1&nbsp;&nbsp; Initial Configuration</H3><!--SEC END -->
+
+<A NAME="sec:initconfig"></A>Configuration file is loaded after first start of <TT>ejabberd</TT>. It consists of
+sequence of Erlang terms. Parts of lines after <TT>`%'</TT> sign are ignored.
+Each term is tuple, where first element is name of option, and other are option
+values.<BR>
+<BR>
+<!--TOC subsubsection Host Name-->
+
+<H4>3.1.1&nbsp;&nbsp; Host Name</H4><!--SEC END -->
+
+<A NAME="sec:confighostname"></A>Option <TT>hostname</TT> defines name of Jabber domain that <TT>ejabberd</TT>
+serves. E.&nbsp;g. to use <TT>jabber.org</TT> domain add following line in config:
+<PRE>
+{host, "jabber.org"}.
+</PRE>This option is mandatory.<BR>
+<BR>
+<!--TOC subsubsection Listened Sockets-->
+
+<H4>3.1.2&nbsp;&nbsp; Listened Sockets</H4><!--SEC END -->
+
+<A NAME="sec:configlistened"></A>Option <TT>listen</TT> defines list of listened sockets and what services
+runned on them. Each element of list is a tuple with following elements:
+<UL>
+<LI>
+ Port number;
+
+<LI> Module that serves this port;
+
+<LI> Function in this module that starts connection (likely will be removed);
+
+<LI> Options to this module.
+</UL>Currently three modules implemented:
+<UL>
+<LI>
+ <TT>ejabberd_c2s</TT>: serves C2S connections;
+
+<LI> <TT>ejabberd_s2s_in</TT>: serves incoming S2S connections;
+
+<LI> <TT>ejabberd_service</TT>: serves connections to Jabber services (i.e.
+ that used <TT>jabber:component:accept</TT> namespace).
+</UL>For example, following configuration defines that C2S connections listened on
+port 5222, S2S on port 5269 and that service <TT>conference.jabber.org</TT>
+must be connected to port 8888 with password ``<TT>secret</TT>''.<BR>
+<BR>
+<PRE>
+{listen, [{5222, ejabberd_c2s,     start, []},
+          {5269, ejabberd_s2s_in,  start, []},
+          {8888, ejabberd_service, start, ["conference.jabber.org", "secret"]}
+         ]}.
+</PRE><!--TOC subsubsection Access Rules-->
+
+<H4>3.1.3&nbsp;&nbsp; Access Rules</H4><!--SEC END -->
+
+<A NAME="sec:configaccess"></A>TBD<BR>
+<BR>
+<!--TOC subsubsection Modules-->
+
+<H4>3.1.4&nbsp;&nbsp; Modules</H4><!--SEC END -->
+
+<A NAME="sec:configmodules"></A>Option <TT>modules</TT> defines list of modules that will be loaded after
+<TT>ejabberd</TT> startup. Each list element is a tuple where first element is a
+name of module and second is list of options to this module. Refer to
+section&nbsp;<A HREF="#sec:modules">5</A> for detailed information on each module.<BR>
+<BR>
+Example:
+<PRE>
+{modules, [
+           {mod_register,  [one_queue]},
+           {mod_roster,    [one_queue]},
+           {mod_configure, [one_queue]},
+           {mod_disco,     [one_queue]},
+           {mod_stats,     [one_queue]},
+           {mod_vcard,     [one_queue]},
+           {mod_offline,   []},
+           {mod_echo,      []},
+           {mod_private,   [one_queue]},
+           {mod_time,      [one_queue]},
+           {mod_version,   [one_queue]}
+          ]}.
+</PRE><!--TOC subsection Online Configuration-->
+
+<H3>3.2&nbsp;&nbsp; Online Configuration</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 (section&nbsp;<A HREF="#sec:modconfigure">5.3</A>). Also highly
+recommended to load <TT>mod_disco</TT> (section&nbsp;<A HREF="#sec:moddisco">5.4</A>), because
+<TT>mod_configure</TT> highly integrates with it. Also recommended to use
+disco-capable client.<BR>
+<BR>
+<!--TOC section Distribution-->
+
+<H2>4&nbsp;&nbsp; Distribution</H2><!--SEC END -->
+
+<A NAME="sec:distribution"></A><!--TOC section Built-in Modules-->
+
+<H2>5&nbsp;&nbsp; Built-in Modules</H2><!--SEC END -->
+
+<A NAME="sec:modules"></A><!--TOC subsection <TT>mod_register</TT>-->
+
+<H3>5.1&nbsp;&nbsp; <TT>mod_register</TT></H3><!--SEC END -->
+
+<A NAME="sec:modregister"></A><!--TOC subsection <TT>mod_roster</TT>-->
+
+<H3>5.2&nbsp;&nbsp; <TT>mod_roster</TT></H3><!--SEC END -->
+
+<A NAME="sec:modroster"></A><!--TOC subsection <TT>mod_configure</TT>-->
+
+<H3>5.3&nbsp;&nbsp; <TT>mod_configure</TT></H3><!--SEC END -->
+
+<A NAME="sec:modconfigure"></A><!--TOC subsection <TT>mod_disco</TT>-->
+
+<H3>5.4&nbsp;&nbsp; <TT>mod_disco</TT></H3><!--SEC END -->
+
+<A NAME="sec:moddisco"></A><!--TOC subsection <TT>mod_stats</TT>-->
+
+<H3>5.5&nbsp;&nbsp; <TT>mod_stats</TT></H3><!--SEC END -->
+
+<A NAME="sec:modstats"></A><!--TOC subsection <TT>mod_vcard</TT>-->
+
+<H3>5.6&nbsp;&nbsp; <TT>mod_vcard</TT></H3><!--SEC END -->
+
+<A NAME="sec:modvcard"></A><!--TOC subsection <TT>mod_offline</TT>-->
+
+<H3>5.7&nbsp;&nbsp; <TT>mod_offline</TT></H3><!--SEC END -->
+
+<A NAME="sec:modoffline"></A><!--TOC subsection <TT>mod_echo</TT>-->
+
+<H3>5.8&nbsp;&nbsp; <TT>mod_echo</TT></H3><!--SEC END -->
+
+<A NAME="sec:modecho"></A><!--TOC subsection <TT>mod_private</TT>-->
+
+<H3>5.9&nbsp;&nbsp; <TT>mod_private</TT></H3><!--SEC END -->
+
+<A NAME="sec:modprivate"></A><!--TOC subsection <TT>mod_time</TT>-->
+
+<H3>5.10&nbsp;&nbsp; <TT>mod_time</TT></H3><!--SEC END -->
+
+<A NAME="sec:modtime"></A><!--TOC subsection <TT>mod_version</TT>-->
+
+<H3>5.11&nbsp;&nbsp; <TT>mod_version</TT></H3><!--SEC END -->
+
+<A NAME="sec:modversion"></A><!--HTMLFOOT-->
+<!--ENDHTML-->
+
+<!--FOOTER-->
+<HR SIZE=2>
+<BLOCKQUOTE><EM>This document was translated from L<sup>A</sup>T<sub>E</sub>X by
+</EM><A HREF="http://pauillac.inria.fr/~maranget/hevea/index.html"><EM>H</EM><EM><FONT SIZE=2><sup>E</sup></FONT></EM><EM>V</EM><EM><FONT SIZE=2><sup>E</sup></FONT></EM><EM>A</EM></A><EM>.
+</EM></BLOCKQUOTE></BODY>
+</HTML>
+
diff --git a/doc/guide.tex b/doc/guide.tex
new file mode 100644 (file)
index 0000000..0703acb
--- /dev/null
@@ -0,0 +1,272 @@
+\documentclass[12pt]{article}
+
+%\usepackage{graphics}
+\usepackage{hevea}
+\usepackage{verbatim}
+
+
+\newcommand{\ejabberd}{\texttt{ejabberd}}
+\newcommand{\Jabber}{Jabber}
+
+\newcommand{\modregister}{\texttt{mod\_register}}
+\newcommand{\modroster}{\texttt{mod\_roster}}
+\newcommand{\modconfigure}{\texttt{mod\_configure}}
+\newcommand{\moddisco}{\texttt{mod\_disco}}
+\newcommand{\modstats}{\texttt{mod\_stats}}
+\newcommand{\modvcard}{\texttt{mod\_vcard}}
+\newcommand{\modoffline}{\texttt{mod\_offline}}
+\newcommand{\modecho}{\texttt{mod\_echo}}
+\newcommand{\modprivate}{\texttt{mod\_private}}
+\newcommand{\modtime}{\texttt{mod\_time}}
+\newcommand{\modversion}{\texttt{mod\_version}}
+
+
+
+\title{Ejabberd Installation and Operation Guide}
+\author{Alexey Shchepin \\
+  \ahrefurl{mailto:alexey@sevcom.net} \\
+  \ahrefurl{xmpp:aleksey@jabber.ru}}
+\date{January 23, 2003}
+
+\begin{document}
+\begin{titlepage}
+  \maketitle{}
+  
+
+
+  %\includegraphics{logo.png}
+  {\centering
+    \imgsrc{logo.png}{}
+  }
+\end{titlepage}
+%\newpage
+\tableofcontents{}
+
+\newpage
+\section{Introduction}
+\label{sec:intro}
+
+\ejabberd{} is a Free and Open Source distributed fault-tolerant \Jabber{}
+server.  It writen mostly in Erlang.
+
+TBD
+
+
+
+\section{Installation}
+\label{sec:installation}
+
+
+\subsection{Installation Requirements}
+\label{sec:installreq}
+
+To compile \ejabberd{}, you need following packages:
+\begin{itemize}
+\item GNU Make;
+\item GCC;
+\item libexpat 1.95 or later;
+\item Erlang/OTP R8B or later.
+\end{itemize}
+
+\subsection{Obtaining}
+\label{sec:obtaining}
+
+Currently no stable version released.
+
+Latest alpha version can be retrieved via CVS.  Do following steps:
+\begin{itemize}
+\item \texttt{export CVSROOT=:pserver:cvs@www.jabber.ru:/var/spool/cvs}
+\item \texttt{cvs login}
+\item Enter empty password
+\item \texttt{cvs -z3 co ejabberd}
+\end{itemize}
+
+
+
+
+
+
+\subsection{Compilation}
+\label{sec:compilation}
+
+
+
+
+%\subsection{Initial Configuration}
+%\label{sec:initconfig}
+
+
+\section{Configuration}
+\label{sec:configuration}
+
+\subsection{Initial Configuration}
+\label{sec:initconfig}
+
+%\verbatiminput{../src/ejabberd.cfg}
+
+Configuration file is loaded after first start of \ejabberd{}.  It consists of
+sequence of Erlang terms.  Parts of lines after \texttt{`\%'} sign are ignored.
+Each term is tuple, where first element is name of option, and other are option
+values.
+
+
+\subsubsection{Host Name}
+\label{sec:confighostname}
+
+Option \texttt{hostname} defines name of \Jabber{} domain that \ejabberd{}
+serves.  E.\,g. to use \texttt{jabber.org} domain add following line in config:
+\begin{verbatim}
+{host, "jabber.org"}.
+\end{verbatim}
+
+This option is mandatory.
+
+
+
+\subsubsection{Listened Sockets}
+\label{sec:configlistened}
+
+Option \texttt{listen} defines list of listened sockets and what services
+runned on them.  Each element of list is a tuple with following elements:
+\begin{itemize}
+\item Port number;
+\item Module that serves this port;
+\item Function in this module that starts connection (likely will be removed);
+\item Options to this module.
+\end{itemize}
+
+Currently three modules implemented:
+\begin{itemize}
+\item \texttt{ejabberd\_c2s}: serves C2S connections;
+\item \texttt{ejabberd\_s2s\_in}: serves incoming S2S connections;
+\item \texttt{ejabberd\_service}: serves connections to \Jabber{} services (i.e.
+  that used \texttt{jabber:component:accept} namespace).
+\end{itemize}
+
+For example, following configuration defines that C2S connections listened on
+port 5222, S2S on port 5269 and that service \texttt{conference.jabber.org}
+must be connected to port 8888 with password ``\texttt{secret}''.
+
+\begin{verbatim}
+{listen, [{5222, ejabberd_c2s,     start, []},
+          {5269, ejabberd_s2s_in,  start, []},
+          {8888, ejabberd_service, start, ["conference.jabber.org", "secret"]}
+         ]}.
+\end{verbatim}
+
+
+\subsubsection{Access Rules}
+\label{sec:configaccess}
+
+TBD
+
+
+\subsubsection{Modules}
+\label{sec:configmodules}
+
+Option \texttt{modules} defines list of modules that will be loaded after
+\ejabberd{} startup.  Each list element is a tuple where first element is a
+name of module and second is list of options to this module.  Refer to
+section~\ref{sec:modules} for detailed information on each module.
+
+Example:
+\begin{verbatim}
+{modules, [
+           {mod_register,  [one_queue]},
+           {mod_roster,    [one_queue]},
+           {mod_configure, [one_queue]},
+           {mod_disco,     [one_queue]},
+           {mod_stats,     [one_queue]},
+           {mod_vcard,     [one_queue]},
+           {mod_offline,   []},
+           {mod_echo,      []},
+           {mod_private,   [one_queue]},
+           {mod_time,      [one_queue]},
+           {mod_version,   [one_queue]}
+          ]}.
+\end{verbatim}
+
+
+\subsection{Online Configuration}
+\label{sec:onlineconfig}
+
+To use facility of online reconfiguration of \ejabberd{} needed to have
+\modconfigure{} loaded (see section~\ref{sec:modconfigure}).  Also highly
+recommended to load \moddisco{} (see section~\ref{sec:moddisco}), because
+\modconfigure{} highly integrates with it.  Also recommended to use
+disco-capable client.
+
+TBD
+
+\section{Distribution}
+\label{sec:distribution}
+
+
+
+
+
+\section{Built-in Modules}
+\label{sec:modules}
+
+
+
+
+\subsection{\modregister{}}
+\label{sec:modregister}
+
+
+
+\subsection{\modroster{}}
+\label{sec:modroster}
+
+
+
+\subsection{\modconfigure{}}
+\label{sec:modconfigure}
+
+
+
+\subsection{\moddisco{}}
+\label{sec:moddisco}
+
+
+
+\subsection{\modstats{}}
+\label{sec:modstats}
+
+
+
+\subsection{\modvcard{}}
+\label{sec:modvcard}
+
+
+
+\subsection{\modoffline{}}
+\label{sec:modoffline}
+
+
+
+\subsection{\modecho{}}
+\label{sec:modecho}
+
+
+
+\subsection{\modprivate{}}
+\label{sec:modprivate}
+
+
+
+\subsection{\modtime{}}
+\label{sec:modtime}
+
+
+
+\subsection{\modversion{}}
+\label{sec:modversion}
+
+
+
+
+
+
+\end{document}
diff --git a/doc/logo.png b/doc/logo.png
new file mode 100644 (file)
index 0000000..bb58a0e
Binary files /dev/null and b/doc/logo.png differ
index cfc1a8b55df61c7d95ea6cdc98e8dddd4e8eb24a..c616cbfb49416bfe2232f79d23daaf07dddaa575 100644 (file)
 {acl, aleksey, {user, "aleksey", "jabber.ru"}}.
 
 {access, disco_admin, [{allow, admin},
-                      {deny, all}]}.
+                       {deny, all}]}.
 
 {access, configure, [{allow, admin}]}.
 
 {host, "e.localhost"}.
 
 {listen, [{5522, ejabberd_c2s,     start, []},
-         {5269, ejabberd_s2s_in,  start, []},
-         {8888, ejabberd_service, start, ["asd.e.localhost", "asdqwe"]}
-        ]}.
+          {5269, ejabberd_s2s_in,  start, []},
+          {8888, ejabberd_service, start, ["asd.e.localhost", "asdqwe"]}
+         ]}.
 
 {modules, [
-          {mod_register,  [one_queue]},
-          {mod_roster,    [one_queue]},
-          {mod_configure, [one_queue]},
-          {mod_disco,     [one_queue]},
-          {mod_stats,     [one_queue]},
-          {mod_vcard,     [one_queue]},
-          {mod_offline,   []},
-          {mod_echo,      []},
-          {mod_private,   [one_queue]},
-          {mod_time,      [one_queue]},
-          {mod_version,   [one_queue]}
-         ]}.
+           {mod_register,  [one_queue]},
+           {mod_roster,    [one_queue]},
+           {mod_configure, [one_queue]},
+           {mod_disco,     [one_queue]},
+           {mod_stats,     [one_queue]},
+           {mod_vcard,     [one_queue]},
+           {mod_offline,   []},
+           {mod_echo,      []},
+           {mod_private,   [one_queue]},
+           {mod_time,      [one_queue]},
+           {mod_version,   [one_queue]}
+          ]}.