From: Alexey Shchepin Date: Thu, 23 Jan 2003 20:57:55 +0000 (+0000) Subject: *** empty log message *** X-Git-Tag: v0.1.0~24 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=66792183d06ebec2192e5bff1aa2870103bd4892;p=ejabberd *** empty log message *** SVN Revision: 48 --- diff --git a/doc/guide.html b/doc/guide.html new file mode 100644 index 000000000..a8ff887a8 --- /dev/null +++ b/doc/guide.html @@ -0,0 +1,229 @@ + + +Ejabberd Installation and Operation Guide + + + + + + + + + + + +

Ejabberd Installation and Operation Guide

+ +

Alexey Shchepin
mailto:alexey@sevcom.net
xmpp:aleksey@jabber.ru

+ +

January 23, 2003

+
+ +
+
+ + +

1   Introduction

+ +ejabberd is a Free and Open Source distributed fault-tolerant Jabber +server. It writen mostly in Erlang.
+
+TBD
+
+ + +

2   Installation

+ + + +

2.1   Installation Requirements

+ +To compile ejabberd, you need following packages: + + +

2.2   Obtaining

+ +Currently no stable version released.
+
+Latest alpha version can be retrieved via CVS. Do following steps: + + +

2.3   Compilation

+ + + +

3   Configuration

+ + + +

3.1   Initial Configuration

+ +Configuration file is loaded after first start of ejabberd. It consists of +sequence of Erlang terms. Parts of lines after `%' sign are ignored. +Each term is tuple, where first element is name of option, and other are option +values.
+
+ + +

3.1.1   Host Name

+ +Option hostname defines name of Jabber domain that ejabberd +serves. E. g. to use jabber.org domain add following line in config: +
+{host, "jabber.org"}.
+
This option is mandatory.
+
+ + +

3.1.2   Listened Sockets

+ +Option listen defines list of listened sockets and what services +runned on them. Each element of list is a tuple with following elements: +Currently three modules implemented: +For example, following configuration defines that C2S connections listened on +port 5222, S2S on port 5269 and that service conference.jabber.org +must be connected to port 8888 with password ``secret''.
+
+
+{listen, [{5222, ejabberd_c2s,     start, []},
+          {5269, ejabberd_s2s_in,  start, []},
+          {8888, ejabberd_service, start, ["conference.jabber.org", "secret"]}
+         ]}.
+
+ +

3.1.3   Access Rules

+ +TBD
+
+ + +

3.1.4   Modules

+ +Option 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 5 for detailed information on each module.
+
+Example: +
+{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]}
+          ]}.
+
+ +

3.2   Online Configuration

+ +To use facility of online reconfiguration of ejabberd needed to have +mod_configure loaded (section 5.3). Also highly +recommended to load mod_disco (section 5.4), because +mod_configure highly integrates with it. Also recommended to use +disco-capable client.
+
+ + +

4   Distribution

+ + + +

5   Built-in Modules

+ + + +

5.1   mod_register

+ + + +

5.2   mod_roster

+ + + +

5.3   mod_configure

+ + + +

5.4   mod_disco

+ + + +

5.5   mod_stats

+ + + +

5.6   mod_vcard

+ + + +

5.7   mod_offline

+ + + +

5.8   mod_echo

+ + + +

5.9   mod_private

+ + + +

5.10   mod_time

+ + + +

5.11   mod_version

+ + + + + +
+
This document was translated from LATEX by +HEVEA. +
+ + diff --git a/doc/guide.tex b/doc/guide.tex new file mode 100644 index 000000000..0703acbd5 --- /dev/null +++ b/doc/guide.tex @@ -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 index 000000000..bb58a0e89 Binary files /dev/null and b/doc/logo.png differ diff --git a/src/ejabberd.cfg b/src/ejabberd.cfg index cfc1a8b55..c616cbfb4 100644 --- a/src/ejabberd.cfg +++ b/src/ejabberd.cfg @@ -10,30 +10,30 @@ {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]} + ]}.