author | Mikael Berthe <mikael@lilotux.net> |
Sun, 24 Oct 2021 18:22:01 +0200 | |
changeset 2362 | 64de2d6858b0 |
parent 1759 | 921429804e20 |
permissions | -rw-r--r-- |
1559
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
1 |
\documentclass[12pt,oneside,a4]{book} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
2 |
\usepackage{hyperref} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
3 |
\usepackage{float} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
4 |
\usepackage{listings} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
5 |
\usepackage{graphicx} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
6 |
\usepackage{multirow} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
7 |
\title{Mcabber User Guide} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
8 |
\author{franky} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
9 |
\begin{document} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
10 |
\maketitle |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
11 |
\tableofcontents |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
12 |
\chapter*{Introduction} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
13 |
This guide was written for users who are new to mcabber\cite{mcabber} which is a small |
1759 | 14 |
command line client for the Jabber (XMPP) protocol\cite{jabber} as an introduction. This introduction may |
1559
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
15 |
become a comprehensive guide to every aspect of mcabber later, but the first versions should only be |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
16 |
regarded as an overview of all features. Feel free to bug me with corrections of spelling errors or |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
17 |
with contributions to the content. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
18 |
\paragraph{Conventions used in this guide:\\} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
19 |
\begin{tabular}{ c p{10cm} } |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
20 |
\verb+/command+ & This is a command for mcabber which can only be executed during runtime.\\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
21 |
\verb+command+ & A command for mcabber which can be given in the configuration file, too.\\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
22 |
\verb+$command+ & The \$-sign precedes shell commands.\\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
23 |
\textit{variable} & This is a variable which can be set in the configuration file or during runtime. \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
24 |
\end{tabular} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
25 |
\chapter{Basic Usage} |
1759 | 26 |
After installing mcabber, you should create a configuration file first.\\ |
27 |
The easiest way of doing this is to copy the sample configuration file\cite{samplerc} to |
|
28 |
\~{}/.mcabber/mcabberrc. Then, you only have to change the variable |
|
29 |
\textit{jid} before you can, finally, start mcabber. When the Login is |
|
30 |
successful, mcabber might look similar to the following screenshot:\\ |
|
1559
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
31 |
\begin{figure}[h!] |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
32 |
\centering |
2362
64de2d6858b0
Documentation: Fix missing .png extension in \includegraphics
Mikael Berthe <mikael@lilotux.net>
parents:
1759
diff
changeset
|
33 |
\includegraphics[scale=0.8]{guide.png} |
1559
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
34 |
\caption{screenshot of mcabber} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
35 |
\label{fig:screenshot} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
36 |
\end{figure} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
37 |
The screen is divided into 4 regions: The roster(sometimes called buddy list) in the upper left, |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
38 |
the chat window/buffer in the upper right, the input line at the bottom and the log window above the |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
39 |
input line. Those two blue lines which are below and above the log window are status lines. The lower one |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
40 |
displays the general mcabber status and the upper line the status of the selected contact. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
41 |
The screenshot shows mcabber in "chat mode" which can be entered by pressing enter or sending a message |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
42 |
when a contact is selected. Leaving chatmode is done by pressing Esc. To move between your contacts, you |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
43 |
can use the buttons Pg Up/Pg Down. If you look at the roster of the screenshot, you will notice that the |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
44 |
contact "loic" is marked red. That's the default for the "unread" color, so "loic" sent a message to |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
45 |
you, but you have not read it, yet. Moving by pressing Pg Down would need 6 key presses, so it might be faster to use |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
46 |
\verb+/roster unread_next+ to quickly jump to the next unread buffer. Which brings us to the interface of mcabber. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
47 |
Since mcabber has only one input line, there has to be some way of distinguishing mcabber commands from normal text |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
48 |
messages. As you might have guessed already, all mcabber commands start with a slash, while any other line which you |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
49 |
have entered will be sent as a message to the selected buddy. You won't find a complete list of all commands here, |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
50 |
since mcabber has already got a great help system. It's at your fingertips when you enter \verb+/help+. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
51 |
Furthermore, you can choose the language of the help system by setting \textit{lang} to de, en, fr, it, nl, pl, ru or uk. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
52 |
\section{Multi-user Chat} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
53 |
Jabber offers more than other one-on-one chats. There is an extension\cite{xep45} which adds many-to-many chat, |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
54 |
very similar to systems like IRC. Mcabber can participate through the command \verb+/room+. If you happen to |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
55 |
find big rooms, you should play a bit with \verb+/color muc+ to make the conversation more readable. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
56 |
Last but not least, you might be interested in the channel mcabber@conf.lilotux.net as a new mcabber user. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
57 |
Feel free to drop by and tell us about your experiences with mcabber or this guide! |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
58 |
\section{Transports} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
59 |
Transports, also known as Gateways, are Jabber server components which are used for translating your Jabber messages |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
60 |
for proprietary networks like ICQ, AIM or MSN. At the time of writing, mcabber can't register transports, but, |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
61 |
if you've registered a transport with another client, you'll be able to use them within mcabber. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
62 |
Transports are, basically, just another contact on your roster. Thus, using transports is done by sending your status, |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
63 |
maybe explicitly with \verb+/status_to+. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
64 |
\section{Symbols} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
65 |
Most users may be puzzled when they see all those different characters in the roster, the status bar and |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
66 |
in the chat window for the first time. Some of those symbols might be obvious, but others aren't descriptive at all. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
67 |
So, here is a list of all characters and their meanings, structured per window where they were taken from. \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
68 |
\begin{tabular}{c c} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
69 |
\begin{tabular}{|c | l|} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
70 |
\hline |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
71 |
\multicolumn{2}{|c|}{Roster}\\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
72 |
\hline |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
73 |
Symbols & Rosteritem \\ \hline |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
74 |
\verb+---+ & unfolded Group \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
75 |
\verb-+++- & folded Group \\ \hline |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
76 |
\verb+[ ]+ & buddy or chat room(MUC) \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
77 |
\verb+{ }+ & buddy who can't see your status \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
78 |
\verb- + - & buddy is typing \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
79 |
\verb+ . + & buddy stopped typing \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
80 |
\verb+ _ + & buddy status: offline \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
81 |
\verb+ o + & buddy status: online \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
82 |
\verb+ a + & buddy status: away \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
83 |
\verb+ d + & buddy status: do not disturb \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
84 |
\verb+ n + & buddy status: not available\\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
85 |
\verb+ f + & buddy status: free for chat \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
86 |
\verb+ ? + & buddy status unknown \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
87 |
\verb+ x + & muc status: not connected \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
88 |
\verb+ C + & muc status: connected \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
89 |
\hline |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
90 |
\end{tabular} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
91 |
& |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
92 |
\begin{tabular}{|c | l|} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
93 |
\hline |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
94 |
\multicolumn{2}{|c|}{Chat Window} \\ \hline |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
95 |
Symbols & Meaning \\ \hline |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
96 |
\verb+-->+ & sent message \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
97 |
\verb+<==+ & received message \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
98 |
\verb+~+ & message was encrypted with GPG\\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
99 |
\verb+O+ & message was encrypted with OTR\\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
100 |
\verb+***+ & info message \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
101 |
\verb+#<#+ & error message \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
102 |
\hline |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
103 |
%\end{tabular} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
104 |
%\begin{tabular}{|c | l|} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
105 |
% \hline |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
106 |
\multicolumn{2}{|c|}{Upper Status Line} \\ \hline |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
107 |
Symbols & Meaning \\ \hline |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
108 |
\verb+~+ & chat mode enabled \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
109 |
\verb+*+ & buffer is scroll-locked \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
110 |
\verb+[C]+ & chatstate: composing \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
111 |
\verb+[A]+ & chatstate: active \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
112 |
\verb+[I]+ & chatstate: inactive \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
113 |
\verb+[P]+ & chatstate: paused \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
114 |
\verb+[G]+ & chatstate: gone \\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
115 |
\hline |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
116 |
\end{tabular} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
117 |
\end{tabular} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
118 |
\chapter{Logging} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
119 |
Some people write their diaries to remember special moments. Others merely save their chat logs, |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
120 |
which are often full of personal details, too. Of course, mcabber can keep your chat history |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
121 |
and fortunately, the format of these logs is easy enough to read with your |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
122 |
favourite text editor. Moreover, searching is possible with standard unix tools like \verb+$grep+. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
123 |
\section{Enable Logging} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
124 |
To enable logging, you'll have to add some lines to your configuration file: |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
125 |
\begin{lstlisting} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
126 |
set logging = 1 |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
127 |
set load_logs = 1 |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
128 |
\end{lstlisting} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
129 |
Those variables tell mcabber to log the chat history and to load old logs when you restart it. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
130 |
Please note that there are a lot of other variables affecting logging. You can e.g. choose whether |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
131 |
you want to log Multi-user Chats(\textit{log\_muc\_conf}) or whether you want to log status changes(\textit{logging\_ignore\_status}). |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
132 |
You'll find them all in the sample configuration file\cite{samplerc} if you search for "History Logging". |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
133 |
\section{Grouping logs} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
134 |
If you know other instant messengers, you might be used to a concept called "metacontacts". |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
135 |
They can be used to group users, which have multiple representations in your |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
136 |
roster (e.g. because they have work and home accounts). Unfortunately, mcabber doesn't support |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
137 |
metacontacts yet, but at least you can group the history of different contacts together. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
138 |
This basically works by merging those histories and then creating a symlink frome one to the other. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
139 |
Here's an example with the histories of foo\_work@jabber.org ond foo\_home@jabber.org: |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
140 |
\begin{lstlisting} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
141 |
$ cd ~/.mcabber/histo/ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
142 |
$ merge_history.py foo_work@jabber.org foo_home@jabber.org > foo |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
143 |
$ mv foo foo_home@jabber.org |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
144 |
$ rm foo_work@jabber.org |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
145 |
$ ln -sf foo_home@jabber.org foo_work@jabber.org |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
146 |
\end{lstlisting} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
147 |
The script merge\_history.py is included in the mcabber tarball. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
148 |
\section{Converting centerim logs} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
149 |
You've got old centericq\cite{centericq} or centerim\cite{centerim} logs and want to keep |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
150 |
them in mcabber? There's a script called cicq2mcabber.pl in the contrib directory of the mcabber |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
151 |
tarball which can be used to do that. Now you only have to figure out where exactly |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
152 |
centerim saves the history of a particular contact(somewhere under \~{}/.centerim/), |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
153 |
convert this file to the mcabber history format and save it to \~{}/.mcabber/histo/ with the |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
154 |
Jabber ID as the filename. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
155 |
\chapter{Scripting} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
156 |
This chapter will introduce you to the scripting facilities of mcabber. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
157 |
\section{Aliases} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
158 |
Aliases are used to map complex commands to a word. \verb+/roster search+ is one of the commands worth remapping |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
159 |
because it will be used every day. If you want to remap it to \verb+/rs+, |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
160 |
issue the command \verb+alias rs = roster search+. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
161 |
\section{Internal Hooks} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
162 |
Internal Hooks can be used to let mcabber execute commands when a special event occurs. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
163 |
At the time of this writing, only 2 hooks were defined: |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
164 |
\begin{itemize} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
165 |
\item \textit{hook-post-connect} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
166 |
\item \textit{hook-pre-disconnect} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
167 |
\end{itemize} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
168 |
The time of the execution is self-explaining, just set those variables to the command you want |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
169 |
to execute. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
170 |
\section{External scripts} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
171 |
Mcabber will execute the external script specified in the variable \textit{events\_command} whenever a new |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
172 |
message is received. It will be called at least with 3 parameters: |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
173 |
\begin{enumerate} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
174 |
\item MSG or STATUS |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
175 |
\item IN, OUT or MUC if the first argument was MSG or one character of "\_OFDNAI" if the first argument was STATUS |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
176 |
\item The JID which triggered the event |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
177 |
\item (optional) filename of the file which contains the message body |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
178 |
\end{enumerate} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
179 |
If you need the message body for your event script, you'll have to set the option \textit{event\_log\_files} to 1. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
180 |
The script has to delete that file after it processed it. To execute mcabber commands, |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
181 |
you'll have to compile mcabber with FIFO support(\verb+$./configure --enable-fifo+). Then activate it by setting the |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
182 |
variable \textit{fifo\_name} to the filename of the fifo in your config file. There will be some verbose debug |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
183 |
output in the logging window if you don't set the variable \textit{fifo\_hide\_output} to 1.\\ |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
184 |
There is another variable which might be interesting for the developer of external scripts. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
185 |
If \textit{statefile} is set to a filename, mcabber saves the JIDs of all unread buffers to that file, one per line. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
186 |
\chapter{Encryption} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
187 |
Encryption is one of the greatest advantages of Jabber compared to similar |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
188 |
"legacy" networks like ICQ, MSN, AIM, etc. With encryption, you'll be able |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
189 |
to communicate in hostile network environments with a clear conscience, |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
190 |
because almost nobody will be able to spy on you. Practically, every connection |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
191 |
which is established when using the Jabber protocol could be encrypted. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
192 |
First of all, you can connect to your Jabber server via ssl, which will |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
193 |
prevent anyone between you and the server from sniffing your plaintext |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
194 |
messages or your password. In mcabber you could enable this feature by adding |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
195 |
\begin{lstlisting} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
196 |
set ssl = 1 |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
197 |
set ssl_verify = -1 |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
198 |
\end{lstlisting} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
199 |
to your configuration file. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
200 |
The next step is server to server encryption, which you can't control, |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
201 |
unless you're the admin of your server. So, theoretically it would be possible |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
202 |
to spy between Jabber servers, or maybe your buddy doesn't use an ssl |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
203 |
connection. Of course, if you are truly paranoid, you won't trust the |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
204 |
server admins but only your buddy. So, to encrypt messages between you and your |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
205 |
buddy, end-to-end encryption can be used. There are two protocols for |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
206 |
accomplishing this: The first one is OpenPGP/GnuPG, which is a semi standard\cite{xep27} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
207 |
in the Jabber world. The other protocol is Off-the-Record(OTR) Messaging, which was |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
208 |
designed by cryptographers Ian Goldberg and Nikita Borisov\cite{otr}. Although OTR |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
209 |
isn't a standard, a lot of developers have implemented it for their instant |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
210 |
messaging clients. The main reason might be the availability of libotr\cite{libotr}, |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
211 |
an open-source library from the authors of OTR which does all the hard work. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
212 |
GnuPG is considered to be more mature, but it also has a major drawback: |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
213 |
You can't encrypt messages between Jabber and legacy networks. Because |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
214 |
naturally, the clients of other networks won't support Jabber extensions. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
215 |
OTR can fill that gap, because it only uses the message body as an envelope |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
216 |
for the whole protocol. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
217 |
|
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
218 |
I will now describe in detail how to use both protocols with mcabber. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
219 |
\section{OpenPGP} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
220 |
First of all, I'm assuming that you've already generated a gnupg key |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
221 |
which you want to use to encrypt Jabber messages. If you haven't done |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
222 |
this before, go to \url{http://gnupg.org/documentation/} first. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
223 |
|
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
224 |
Using PGP encryption with mcabber should be straight-forward, but you have to |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
225 |
restart mcabber for configuring it. To enable PGP for mcabber, you must |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
226 |
add two lines to your configuration file: |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
227 |
\begin{lstlisting} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
228 |
set pgp = 1 |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
229 |
set pgp_private_key = 23DEADBEEFDEAD42 |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
230 |
\end{lstlisting} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
231 |
The first one enables OpenPGP and the second line tells mcabber which PGP key it |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
232 |
should use. If you didn't notice: This hexadecimal number is the last |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
233 |
characters of your PGP key fingerprint, get it with |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
234 |
\verb+gpg --fingerprint+\verb+ --list-secret-keys+. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
235 |
If you have no problems writing your passphrase to your hard disk, you could |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
236 |
also set the variable \textit{pgp\_passphrase} in your config file. Otherwise mcabber will |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
237 |
ask you for your passphrase at every start-up. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
238 |
From now on, mcabber will magically use PGP encryption whenever it can. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
239 |
Basically this works because presence messages of users using PGP are signed |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
240 |
with their key. If you happen to have a contact whose Jabber client doesn't |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
241 |
conform to that part of the standard, you can manually give mcabber their key |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
242 |
fingerprint: |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
243 |
\begin{lstlisting} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
244 |
pgp setkey foo@bar.net D9940C9BB1B92310 |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
245 |
\end{lstlisting} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
246 |
\section{OTR} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
247 |
Enabling OTR in mcabber works in almost the same manner as PGP. But instead of |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
248 |
generating your encryption key by hand, mcabber will create one for you when |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
249 |
it starts. This might take some time and you can speed it up by generating |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
250 |
randomness by typing, moving the mouse, writing to hard disk etc. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
251 |
But first of all, you must add the following lines to your configuration file |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
252 |
and restart mcabber: |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
253 |
\begin{lstlisting} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
254 |
set otr = 1 |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
255 |
otrpolicy default manual |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
256 |
\end{lstlisting} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
257 |
The first line is analogous to PGP. The second one gives the OTR subsystem |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
258 |
the hint that you want to be able to start encrypted OTR channels |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
259 |
manually(by issuing \verb+/otr start+). If you want that they are also "magically" started, you should |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
260 |
change \verb+manual+ to \verb+opportunistic+. The opportunistic mode adds some whitespace |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
261 |
characters to the first message sent to a buddy. So, his client can find those |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
262 |
characters and establish an OTR channel. Please note that "establishing" the |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
263 |
channel could take some time, depending on the delay of exchanging messages |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
264 |
between both ends. (For the technically inclined: Four messages have to be sent |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
265 |
before the channel is fully established. The whole protocol is described in |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
266 |
detail at \url{http://www.cypherpunks.ca/otr/Protocol-v2-3.1.0.html}) |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
267 |
|
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
268 |
Keep in mind that an established channel with a buddy isn't per se secure. It |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
269 |
could be possible that you become a victim of a Man-in-the-middle attack. To |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
270 |
make it secure, you'll have to exchange the fingerprints of the keys through |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
271 |
a trusted medium (telephone, in person, etc). You can see your own fingerprint |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
272 |
by using the command \verb+/otr key+ and the fingerprint of your chat buddy by |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
273 |
\verb+/otr fingerprint+. Check \verb+/help otr+ to find out how to trust the fingerprint now. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
274 |
There is even another way for exchanging fingerprints: The Socialist Millionaires' |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
275 |
Protocol\cite{smp}. It's basically a cryptographic secure way for two parties with the |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
276 |
secret information x and y to check whether x==y without revealing any |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
277 |
information about the secrets. Unfortunately there aren't many clients |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
278 |
supporting that feature yet. In mcabber it is mapped to the commands |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
279 |
\verb+/otr smpq bob@foo.net your_secret+ for the initiating party and |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
280 |
\verb+/otr smpr alice@foo.net your_secret+ for the answering party. If both parties supply |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
281 |
the same secret, the fingerprints can be marked trusted. |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
282 |
\bibliographystyle{plain} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
283 |
\bibliography{guide} |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
284 |
\end{document} |