Mercurial > hg
annotate mcabber/doc/guide/guide.tex @ 2023:26edaf6ea10b
xmpp_setstatus: send presence to MUC rooms before the global presence
It only matters (AFAICS) when going offline. We want the presence
to be sent by mcabber and not by the server, especially if we're
using PGP.
author | Mikael Berthe <mikael@lilotux.net> |
---|---|
date | Mon, 30 Jul 2012 22:39:17 +0200 |
parents | 921429804e20 |
children | 64de2d6858b0 |
rev | line source |
---|---|
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 |
0674abda9a8f
Add Franky's mcabber user guide
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
33 \includegraphics[scale=0.8]{guide} |
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} |