tuteurs.ens.fr/internet/irc.tml

443 lines
17 KiB
XML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//ENS/Tuteurs//DTD TML 1//EN"
"tuteurs://DTD/tml.dtd">
<html>
<head>
<title>IRC</title>
</head>
<body>
<h1>IRC (Internet Relay Chat)</h1>
<p>
IRC (de l'anglais <em>Internet Relay Chat</em>, qui se traduirait en
«&nbsp;Discussion Relayée sur Internet&nbsp;») est un système de messagerie en
temps réel sur Internet. Des dizaines de milliers d'utilisateurs partout dans
le monde y sont connectés à tout moment, occupés à discuter dans des groupes
qu'on appelle des <em>channels</em>.
</p>
<h2 id="local">IRC à l'ENS</h2>
<p>L'ENS dispose d'un réseau IRC local (séparé du reste du réseau
IRC).</p>
<h3>Depuis les machines de l'école</h3>
<!-- TODO -->
<p>
Vous pouvez vous connecter directement au <em>channel</em> par défaut
(#causeries) du serveur IRC avec la commande <code>empathy-irc</code>. Celle-ci
lance le client <a href="https://live.gnome.org/Empathy">Empathy</a> avec la
configuration qu'il faut.
</p>
<h3>Depuis l'extérieur de l'école, en passant par sas.eleves.ens.fr</h3>
<p>
Vous pouvez également vous connecter au <em>channel</em> par défaut depuis
l'extérieur de l'école en <a href="loin/ssh.html">ouvrant une session ssh vers
sas.eleves.ens.fr</a> et en lançant la commande <code>irc</code>. Celle-ci lance le
client <a href="http://irssi.org/">irssi</a> avec la configuration qu'il faut. Pour quitter, faites Control-a, puis appuyez sur la touche d.</p>
<p>
La commande <code>irc</code> utilise la commande <a
href="http://www.gnu.org/software/screen/">screen</a> pour que vous restiez
connecté sur le canal en permanence et puissiez consulter les discussions qui
ont eu lieu en votre absence (le <em>backlog</em>). Attention, si sas.eleves.ens.fr
redémarre, vous serez déconnecté (vous serez reconnecté à la prochaine
utilisation d'<code>irc</code>). La commande screen permet d'ouvrir plusieurs
terminaux dans une même console et de détacher ces terminaux pour les reprendre
ultérieurement. Ainsi, vous pouvez fermer votre session SSH en
laissant tourner irssi et le récupérer à la connexion suivante. La commande
Control-a puis d utilisée pour quitter est justement la commande pour détacher le
<code>screen</code>, et le laisser pour le reprendre plus tard.
</p>
<h3>Avec votre propre client</h3>
<p>
Pour vous connecter au réseau IRC de l'ENS, il y a plusieurs
possibilités&nbsp;:
</p>
<dl>
<dt>clipper, port 6667</dt>
<dd>Uniquement accessible depuis l'intérieur de l'école</dd>
<dt>ulminfo.fr, port 6667</dt>
<dd>Accessible depuis l'extérieur de l'école, bloqué depuis
l'intérieur de l'école.</dd>
<dt>ulminfo.fr, port 6666</dt>
<dd>Comme au-dessus, mais avec support SSL.</dd>
<dt>ulminfo.fr, port 3724</dt>
<dd>Accessible depuis l'extérieur de l'école, devrait fonctionner
depuis l'intérieur de l'école.</dd>
<dt>ulminfo.fr, port 3725</dt>
<dd>Comme au-dessus, mais avec support SSL.</dd>
</dl>
<h2><a name="quoi">Théorie&nbsp;: Qu'est-ce que IRC ?</a></h2>
<h3><a name="discussions">Type de discussions</a></h3>
<p>
IRC est un service de messages sur Internet. Sa principale différence avec
des services comme le
<a href="courrier/">courier électronique</a> ou <a href="news.html">les news
de Usenet</a> est que les conversations sur IRC se déroulent en temps
réel. Vous envoyez un message, quelqu'un vous répond, et ainsi de suite,
vous conversez avec d'autres utilisateurs. En ce sens, son fonctionnement
ressemble à une conférence téléphonique : les messages ne sont pas
sauvegardés après leur transmission (comme dans le
<a href="&url.tuteurs;internet/ytalk.html">talk</a>).
</p>
<p>
Sur un réseau IRC (et il y en a plusieurs) il y a le plus souvent quelques
dizaines de milliers d'utilisateurs simultanés. (Sur celui de l'ENS,
évidemment, il y a moins de monde.) Chacun s'identifie par un surnom ou
<em>nickname</em> ; vous choisissez votre <i>nickname</i> quand vous vous
connectez à IRC, celui-ci sera refusé (et le système vous en demandera un autre)
si quelqu'un d'autre est déjà en train d'utiliser le même.
</p>
<p>
Les conversations sur IRC se déroulent dans des groupes nommés
<em>channels</em>, le principe étant que, quand vous rentrez dans un channel,
vous voyez la discussion qui y a lieu, et vous pouvez y participer. Il est
également possible d'envoyer des messages privés à destination d'un autre
utilisateur, indépendamment de tout channel.
</p>
<p>
Tous les messages publiés dans un channel sont visibles par tous les
utilisateurs ayant rejoint ce channel. Par contre, les messages privés ne sont
visibles que par le destinataire, comme leur nom l'indique.
</p>
<h3><a name="serveurs">Les réseaux et les serveurs IRC</a></h3>
<p>
Il existe plusieurs réseaux IRC indépendants; chaque réseau se compose d'un
certain nombre de serveurs connectés entre eux. Les <em>nicknames</em> et les <em>channels</em>
sont globaux sur chaque réseau : vous n'avez pas besoin d'être connectés
au même serveur IRC pour discuter avec quelqu'un, il vous faut juste être sur
le même réseau.
</p>
<p>
Des réseaux IRC importants sont&nbsp;:
</p>
<dl>
<dt>IRCnet</dt><dd>le réseau principal Européen ;</dd>
<dt>EFnet</dt><dd>le réseau principal Américain ;</dd>
<dt>Undernet</dt><dd>un réseau alternatif ;</dd>
<dt>DALnet</dt><dd>un autre réseau alternatif.</dd>
<dt>Freenode</dt><dd>un réseau populaire pour les développeurs et utilisateurs de logiciels libres. La plupart des logiciels libres y ont un chan dédié.</dd>
<dt>OFTC</dt><dd>un autre réseau populaire pour les développeurs et utilisateurs de logiciels libres.</dd>
</dl>
<p>
Libre à vous de visiter les sites webs de chacun de ces réseaux pour avoir
toutes les informations pour vous y connecter.
</p>
<p>
À l'École, pour différentes considérations de sécurité, l'accès à la
plupart des réseaux IRC est bloqué. Il a existé à l'école un serveur IRC sur le
quatramaran, mais il n'est plus en ligne. La commande <code>qui -too irc</code>
permettait de savoir à peu près qui était connecté dessus. Il existe à présent un serveur IRC sur clipper, voir <a href="#local">la section correspondante</a>.
</p>
<h2><a name="utiliser">Utilisation d'IRC</a></h2>
<h3>Thunderbird</h3>
<!-- TODO -->
<h3>Irssi</h3>
<!-- TODO -->
<h3><a name="commandes">Quelques commandes utiles, communes à tous les clients IRC</a></h3>
<p>
Voici quelques commandes courantes d'IRC. Les majuscules ne sont pas
nécessaires.
</p>
<table class="tableau">
<tr>
<th><code>/HELP</code></th>
<td>demande de l'aide au programme IRC. Il vous présentera une liste
de sujets possibles.
</tr>
<tr>
<th><code>/NICK un-surnom</code></th>
<td>vous permet de changer de surnom ; le nouveau nom sera refusé si
quelqu'un d'autre est déjà en train de l'utiliser, ou s'il est trop long
(la limite est à 9 lettres). Il ne peut pas contenir de caractère spécial
ou accentué.</td>
</tr>
<tr>
<th><code>/JOIN #nom-de-channel</code></th>
<td>vous permet de rentrer dans un <i>channel</i>. Tous les noms de
<i>channel</i> commencent par le caractère <code>#</code>. Si vous
demandez à rentrer dans un channel qui n'existe pas, il sera créé
pour vous. De même, un channel disparaît au moment où son dernier
utilisateur le quitte.</td>
</tr>
<tr>
<th><code>/PART #nom-de-channel</code></th>
<td>sert à quitter un <em>channel</em>. Si vous ne précisez pas de nom de
<em>channel</em>, c'est celui qui est actuellement affiché que vous
quittez.</td>
</tr>
<tr>
<th><code>/MSG <i>Surnom</i> texte</code></th>
<td>envoie un message destiné uniquement à une personne ; mettez
son surnom à la place de <code>Surnom</code> sur la ligne
précédente. Si vous recevez vous-même un tel message, un nouvel onglet
s'ouvrira pour la conversation privée avec son auteur.</td>
</tr>
<tr>
<th><code>/QUERY <i>Surnom</i></code></th>
<td>Ouvre un nouvel onglet pour démarrer une conversation privée avec
l'utilisateur <code>Surnom</code> (même chose que <code>/msg</code>, sans
envoyer de message immédiatement).
</tr>
<tr>
<th><code>/INVITE <i>Surnom</i> #channel</code></th>
<td>invite une personne dans un <em>channel</em>.</td>
</tr>
<tr>
<th><code>/LIST</code></th>
<td>permet d'avoir une liste de tous les channels. Il est déconseillé
d'utiliser cette commande sur les grands serveurs, parce-que la liste
occupe des milliers de lignes et prend longtemps à arriver (aucun problème
en revanche sur le serveur interne à l'École).</td>
</tr>
<tr>
<th><code>/NAMES</code></th>
<td>permet d'avoir la liste de toutes les personnes connectées dans le
<em>channel</em> courant.</td>
</tr>
<tr>
<th><code>/WHOIS <i>Surnom</i></code></th>
<td>permet d'avoir plus d'informations sur la personne désignée par le
<em>nickname</em> <code>Surnom</code>. En particulier, il est possible
d'avoir son nom complet, si disponible, son statut (absent ou pas), les
autres channels sur lesquels il est présent, etc.</td>
</tr>
<tr>
<th><code>/AWAY <i>Raison</i></code></th>
<td>permet d'indiquer qu'on est absent. Vous devez préciser un texte
(<code>Raison</code>), qui sera notamment indiquée aux autres
utilisateurs qui souhaiteraient commencer une conversation privée avec
vous, afin de les prévenir de votre absence. Votre statut d'absence est
visible par les autres utilisateurs en utilisant la commande
<code>whois votre-nickname</code>. Pour indiquer que vous n'êtes plus
absent, il suffit d'utiliser <code>/AWAY</code> (sans raison
indiquée).</td>
</tr>
</table>
<p>
Si du texte apparaît dans un onglet qui n'est pas affiché, le nom de cet
onglet s'affiche en rouge, pour attirer votre attention. Si en plus le
nouveau texte parle de vous (sur la base de votre surnom), la couleur bleue
sera utilisée.
</p>
<p>De façon générale, certains messages apparaîtront d'une couleur différente
(ou surlignés) dans les <em>cchannels</em>. Cela veut juste dire que votre
<em>nickname</em> apparaît dans ce message, et la couleur est là pour
attirer votre attention. Il est notamment pratique de commencer un message
par "Nickname:" quand on répond spécifiquement à l'utilisateur
<code>Nickname</code>. Enfin, ces messages sont facilement récupérables
dans les clients IRC pour être traités par des plugins et, par exemple,
être affichés dans une zone particulière.</p>
<h3><a name="faire">Que faire sur IRC ?</a></h3>
<p>
En un mot : discuter. Les autres ne voient de vous que ce que vous
tapez. Ils sont aussi probablement déjà en train de parler à d'autres
personnes à la fois, n'espérez donc pas avoir leur attention complète.
</p>
<p>
Quand vous rentrez sur un <em>channel</em> public, et surtout s'il y a déjà
quelques dizaines d'utilisateurs dessus, vous verrez que le texte défile
très vite. Voici un extrait typique de la conversation sur un
channel :
</p>
<pre>
*** Signoff: Bebile (EOF From client)
&lt;Telemak&gt; il y a que des CAVES ici !
*** Pilah has left channel #france
*** ombre (eymartin@sc-2.salles.entpe.fr) has joined channel #france
&lt;steph&gt; telemak:pardon?
&lt;Luc&gt; zak: oui tout pres de Frankfort
&lt;zak2&gt; luc: ah ok et c'est comment en allemagne
*** visiteur1 (webbar@lisbonne-story.webbar.fr) has joined channel #france
&lt;Luc&gt; zak: et toi ou est-tu en ce moment
&lt;zak2&gt; luc: paris
*** |AsSaiL| has left channel #france
*** TtouKC (oeil@toulouse2-2.hol.fr) has joined channel #france
&lt;PEEPOO&gt; KC: t etais ou?
&lt;visiteur3&gt; bonsoir
</pre>
<p>
Les leçons à en tirer sont simples mais importantes : premièrement, il
est très courant de s'adresser à quelqu'un dans un channel en commençant la
phrase par «<code>son_surnom:</code>» (penser à utiliser l'autocompletion avec
la touche <code>TAB</code> :). Ceci permet d'avoir plusieurs
conversations en cours dans un channel, et de s'y retrouver. Le corollaire de
tout cela étant que l'on apprend très vite à ne pas tenir compte des lignes
adressées à d'autres, ni des lignes qui annoncent qui rentre et qui sort du
channel. De plus, lorsqu'un message commence par <code>votre_surnom:</code>, la
ligne est automatiquement surlignée par votre client IRC pour que vous puissiez
la repérer plus facilement (et il est possible de dédier une fenêtre
particulière, appelée "hilight window" pour centraliser tous les messages qui
vous sont ainsi adressés).
</p>
<p>
Soyez raisonnablement poli, et ne passez pas tout votre temps à tenter de
draguer sans subtilité tout ce qui bouge : c'est la meilleure façon de se
faire <em>kicker</em> (c'est-à-dire, de vous faire éjecter du <em>channel</em>
par un opérateur) !
</p>
<p>Enfin, il n'y a pas toujours du monde sur un chan. Si vous n'avez pas
immédiatement de réponse, attendez un peu, que les utilisateurs aient le
temps de voir votre message (ce qui peut prendre potentiellement quelques
heures sur des chans peu actifs).</p>
<h3><a name="modes">Les modes</a></h3>
<p>
Les <em>channels</em>, tout comme les utilisateurs, peuvent être dans plusieurs modes.
Chaque mode est noté par une lettre, généralement l'initiale du nom du mode en
question.
</p>
<p>
Sur les channels, les modes servent à deux choses :
</p>
<ul>
<li><strong>Spécifier qui a le droit de rentrer dans le channel</strong> :
<ul>
<li>Si le channel est secret (mode +s), il n'apparait pas dans la liste
donnée par <code>LIST</code>, ni dans la liste des channels renvoyée par
<code>WHOIS</code>.</li>
<li>Si le channel est <em>invite-only</em> (mode +i), seuls les utilisateurs
invités par la commande <code>/INVITE</code> ont le droit d'y rentrer.</li>
<li>Si le channel a un mot de passe (mode +k), seuls les utilisateurs qui le
connaissent ont le droit d'y rentrer.</li>
<li>Si le channel a une limite (mode +l) fixée à un certain nombre, au plus
ce nombre-là de personnes peuvent y être simultanément.</li>
<li>Chaque channel a une liste d'addresses qui sont <i>bannies</i> (mode +b).
Un utilisateur ne peut pas y rentrer si son addresse est bannie.</li>
</ul>
</li>
<li><strong>Donner le statut d'«opérateur de channel»</strong> ou
<i>chanop</i> à certains utilisateurs et pas d'autres. Un opérateur a le
droit de changer les modes globaux du channel (mettre ou enlever le mode
d'invite, mettre ou enlever une clé ou une limite, ajouter ou enlever des
<i>bans</i>, etc), et aussi de vider (en anglais, <em>kick</em>) des gens du
channel.
<br />
Quand vous créez un nouveau channel, le système vous fait opérateur, ce qui se
voit avec le @ à gauche de votre <i>nickname</i>. Quand vous rentrez dans un
channel existant, vous n'êtes pas opérateur.
<br />
Il est <strong>très mal vu</strong> de demander à être fait opérateur sur un
channel où l'on n'est pas très bien connu et apprécié. La réaction la plus
habituelle étant en fait un KICK ou même un <i>ban</i>. Faites donc
attention.
</li>
</ul>
<!-- TODO \/ -->
<p>
Si vous êtes opérateur sur un channel, vous pouvez changer ses modes en
utilisant les boutons en haut de l'écran (si vous n'êtes pas opérateur, ces
boutons ne vous servent qu'à connaître les modes). Voyons ces boutons (ceux
qui sont à droite de la barre blanche)
</p>
<dl>
<dt>T</dt>
<dd>seul un opérateur peut changer le sujet du <em>channel</em></dd>
<dt>N</dt>
<dd>seules les personnes présentes dans le <em>channel</em> peuvent y
parler</dd>
<dt>S</dt>
<dd>le <em>channel</em> est secret (n'apparaît pas dans la liste)</dd>
<dt>I</dt>
<dd>le <em>channel</em> est réservé aux invités</dd>
<dt>P</dt>
<dd>le <em>channel</em> est privé<!--FIXME: ça veut dire quoi ?--></dd>
<dt>M</dt>
<dd>le <em>channel</em> est modéré (seuls les opérateurs peuvent
parler)</dd>
<dt>L <i>nombre</i></dt>
<dd>le <em>channel</em> a un nombre limité de places</dd>
<dt>K <i>mot de passe</i></dt>
<dd>le <em>channel</em> est réservé aux gens munis du mot de passe</dd>
</dl>
<p>
On peut utiliser la commande <code>/MODE</code> pour changer le mode d'un
<em>channel</em> sans utiliser la souris. On ajoute
<code>+<i>lettre</i></code> ou <code>-<i>lettre</i></code> selon si on veut
activer ou désactiver le mode en question, et on précise éventuellement le
paramètre après.
</p>
<p>
Un channel a aussi un sujet, ou <em>topic</em> qu'on change en modifiant
dans la barre blanche en haut, ou en utilisant la commande
<code>/TOPIC</code>. Le sujet apparaît à côté du nom du <em>channel</em>
en réponse à la commande <code>/LIST</code>.
</p>
<p>
Les utilisateurs eux-mêmes peuvent aussi avoir des modes. Le seul qui soit
utile est le mode <code>+i</code> ou <i>invisible</i>. Et encore, cette
«invisibilité» est très restreinte : elle vous empêche juste d'apparaître
dans la liste donnée par une commande <code>WHO</code> à quelqu'un qui ne
serait pas dans le même channel que vous.
</p>
<p>
Vous pouvez mettre ou enlever ce mode avec les commandes <code>/UMODE
+i</code> et <code>/UMODE -i</code> respectivement.
</p>
<h3>Remerciements</h3>
<p>
Cette page est initialement due à Roger Espel Llima,
également connu sous le surnom de APO, hacker et IRCiste émérite.
</p>
<div class="metainformation">
Auteurs : Dominique Quatravaux, Roger Espel Llima, Nicolas George.
<date value="from git" />
</div>
</body>
</html>