]>

# Le manuel de ktalkd

David
Faure

    David.Faure@insa-lyon.fr

Version 0.9.0, 14 novembre 1998

Ce manuel décrit ktalkd version 0.9.0

Le manuel de KTalkD

KDE
ktalkd
talk
otalk
ntalk
discussion
avis

## Introduction

`ktalkd` est un démon de discussion amélioré - le programme qui traite les demandes de discussion entrantes, les annonce et vous permet d'y répondre à l'aide d'un client de discussion. GLOSSAIRE : Dans ces pages, vous êtes désigné comme l' "appelé" lorsqu'une personne désire vous parler.

`ktalkd` a les caractéristiques suivantes :

Indépendance face à KDE

  KDE or not KDE, that is the question. :) Plus sérieusement, cela signifie que `ktalkd` peut être compilé avec ou sans les bibliothèques KDE. Pour l'utiliser sans KDE, la phase de compilation détecte si X ou Qt ou KDE ne sont pas installés, ou vous pouvez imposer la création d'un démon non-KDE grâce à l'option de configuration '--without-X'.

Répondeur téléphonique

  Si l'appelé n'est pas connecté ('login'), ou ne répond pas après le second avis, un répondeur automatique est lancé, prend le message, et l'envoie sous forme de mél à l'appelé.

Son

  Si c'est souhaité, un son est joué en même temps que l'avis est affiché.

Avis X

  Si ktalkd est compilé alors que KDE est installé, ktalkd utilisera ktalkdlg, un dialogue KDE, pour afficher l'avis. Si ktalk tourne, c'est à lui qu'on demandera de faire l'annonce. (Nouveau depuis la version 0.8.8).

Avis multi-écrans

  Si vous êtes connecté à distance (par exemple via une commande `"export DISPLAY=..."`), l'avis X sera également fait sur cet écran. Répondez sur celui que vous voulez ! Si vous êtes également connecté sur un terminal de texte, et si vous n'utilisez PAS xterm (restriction interne), alors vous verrez également une annonce textuelle, si toutefois vous êtes en train d'utiliser le terminal de texte au moment de l'annonce.

Transmission (Nouveau depuis la version 0.8.0)

  Vous pouvez définir une transmission vers un autre usager même sur une autre machine hôte si vous êtes absent. Il y a trois méthodes différentes pour faire passer l'information. Rapportez-vous à la section 'Usage' de cette documentation.

Configuration

  Si le logiciel est compilé pour KDE, il lit sa configuration dans le fichier de configuration KDE, celui qui s'applique à l'ensemble du site ($KDEDIR/share/config/ktalkdrc) ou celui qui est spécifique à l'utilisateur, dans son répertoire maison. Le fichier général doit être édité à la main par l'administrateur, mais il y a à présent un dialogue de configuration pour celui de l'utilisateur. Il s'appelle kcmktalkd et peut être trouvé dans le centre de contrôle KDE après avoir installé `ktalkd`. Sur les systèmes non-KDE, `ktalkd` lit /etc/talkd.conf.

Internationalisation

  Sous KDE, l'avis sera fait dans votre langue à condition de l'avoir réglé dans les menus de KDE et que quelqu'un ait traduit ktalkdlg dans votre langue.Il en va de même pour le dialogue de configuration, kcmktalkd.

Support de otalk et de ntalk (Nouveau depuis la version 0.8.1)

  ktalkd supporte à présent les deux protocoles, même pour les transmissions. Il en va de même de ktalk.

J'espère que vous aurez du plaisir à utiliser ce démon de discussion,

David Faure

faure@kde.org

## Plate-formes supportées

RedHat Linux 5.x

  Ma plate-forme de développement. Testé à fond dessus.

Autres distributions Linux, BSD

  Devrait se compiler et fonctionner correctement.

Solaris

  Ne fonctionnera pas avant que quelqu'un ait écrit de quoi remplacer snprintf. Bien entendu, on devrait pouvoir installer une autre libc pour résoudre ce problème...

AIX

  J'ai entendu parler de problèmes liés aux fonctions localtime, ctime et consorts.

Je serais heureux de recevoir des avis concernant la compilation et l'exécution de `ktalkd` sur ces systèmes et sur les autres systèmes.

## Installation

### Comment obtenir ktalkd

`ktalkd` est à présent une application centrale du projet KDE http://www.kde.org, faisant partier du package kdenetwork.

Mais vous pouvez toujours télécharger `ktalkd` depuis le site principal du projet KDE, ftp://ftp.kde.org/pub/kde et depuis ses sites miroirs. Il se trouve d'habitude dans ftp://ftp.kde.org/pub/kde/stable/latest/apps/network.

### Configuration nécessaire

Il vous faut les dernières versions des bibliothèques KDE ainsi que la librairie C++ Qt pour compiler `ktalkd` avec succès. Toutes les librairies nécessaires ainsi que ktalkd lui-même peuvent être trouvés sur ftp://ftp.kde.org/pub/kde/.

### Compilation et installation

Pour compiler et installer `ktalkd` sur votre système, tapez les commandes suivantes dans le répertoire de base de la distribution de `ktalkd` :

    % ./configure
    % make
    % make install

Comme `ktalkd` est un démon, `make install` aura besoin des privilèges de l'utilisateur 'root'.

N'oubliez pas de mettre à jour /etc/inetd.conf. Par exemple, sur un système linux, si kde se trouve dans /opt/kde, changez les lignes concernant talk et ntalk en :

    talk   dgram   udp     wait    root    /usr/sbin/tcpd  /opt/kde/bin/kotalkd
    ntalk  dgram   udp     wait    root    /usr/sbin/tcpd  /opt/kde/bin/ktalkd

Un script permettant d'effectuer les modifications nécessaires automatiquement est fourni. Mettez à jour votre fichier inetd.conf en exécutant simplement :

    % ./post-install.sh

Quelle que soit la méthode choisie, vous devrez redémarrer inetd ensuite. Sur la plupart des systèmes Linux, faites :

    % killall -HUP inetd

Veuillez m'informer de toute modification que vous auriez eue à accomplir pour réussir à compiler `ktalkd` sur votre plate-forme.

## Utilisation

Pour utiliser ktalkd, il vous faut un logiciel client de discussion. Le logiciel en mode texte `talk` est disponible sur la majorité des systèmes Unix. Essayez `talk votre&lowbar;nom&lowbar;d&lowbar;utilisateur` pour voir ce qui se passe lorsque vous recevez une requête de discussion. Vous pouvez également tester la fonction "répondeur automatique" de la même façon : vous démarrez une discussion avec vous-même, vous ignorez l'avis à deux reprises, et vous verrez le répondeur automatique se mettre en route.

Il existe un client de discussion en mode graphique pour KDE qui s'appelle `ktalk`. Il n'est pas encore distribué avec les packages KDE, mais vous pouvez le trouver sur le serveur ftp://ftp.kde.org. Il se trouve normalement dans le répertoire ftp://ftp.kde.org/pub/kde/stable/latest/apps/network

La boîte de dialogue de l'avis de discussion est triviale: répondre ou ignorer.

Le dialogue de configuration devrait être plutôt trivial, mis à part le réglage de la transmission vers un autre utilisateur (ou vers un autre site).

### Choix d'une méthode de transmission

Aucune d'entre elles n'est parfaite, elles ont toutes leurs avantages (+) et leurs inconvénients (-).

FWA : Transmission de l'avis seulement. Connexion directe. Déconseillé.

- (+) Vous savez qui est l'appelant, mais

- (-) L'appelant devra répondre à un avis provenant de vous. Ennuyeux.

- (-) Ne pas utiliser si vous avez un répondeur sur votre emplacement distant. (Le répondeur ne peut pas afficher un avis, cela serait troublant!)

FWR : Transmission de toutes les requêtes, en changeant l'information quand c'est nécessaire. Connexion directe.

- (+) L'appelant ne saura pas que vous êtes ailleurs, mais

- (-) Vous ne savez pas réellement qui est l'appelant - vous ne connaissez que son nom d'utilisateur, (vous pourriez voir "message provenant de Wintalk@my&lowbar;host")

FWT : Transmission de toutes les requêtes et acceptation de l'appel. Pas de connexion directe.

- (+) Comme ci-dessus, mais fonctionne également si vous et l'appelant n'êtes pas en contact direct l'un avec l'autre (par exemple si vous êtes séparés par un pare-feu).

- (+) Vous savez qui vous parle réellement quand vous acceptez l'appel

- (-) Mais comme dans le cas précédent, vous ne voyez pas le nom de sa machine dans l'avis

Pour résumer, utilisez FWT si vous voulez l'utiliser derrière un pare-feu (et si ktalkd a accès aux deux réseaux), et FWR dans le cas contraire.

## Questions et réponses

### Pourquoi root ne peut-il pas recevoir les avis KDE ?

Car ce serait une faille dans la sécurité, avec le système de détection d'utilisateur actuel. Vous pouvez passer outre cette limitation en ajoutant deux lignes dans les fichiers de configuration de xdm (qui sont également ceux de kdm). Note : la distribution S.u.S.E de Linux contient ces lignes par défaut.

Ces fichiers de configuration se trouvent dans un répertoire du type /etc/X11/xdm, ou /usr/X11R6/lib/X11/xdm sur d'autres systèmes. Ce qui suit suppose qu'ils sont dans /etc/X11/xdm, vous devrez donc adapter les commandes dans le cas d'un autre répertoire.

Voici ce qu'il faut faire : Editez le fichier Xstartup, ou créez-le, (dans le répertoire de configuration de xdm) de telle sorte qu'on y trouve :

    #!/bin/sh
    /etc/X11/xdm/GiveConsole
    sessreg -a -l $DISPLAY -x /etc/X11/xdm/Xservers $USER

ainsi que le fichier Xreset afin qu'on y trouve :

    #!/bin/sh
    /etc/X11/xdm/TakeConsole
    sessreg -d -l $DISPLAY $USER

Assurez-vous que xdm-config fasse référence à ces deux fichiers :

    DisplayManager._0.startup:      /etc/X11/xdm/Xstartup
    DisplayManager._0.reset:        /etc/X11/xdm/Xreset

Cela amènera kdm (ou xdm) à connecter l'utilisateur dans utmp, ce qui est correct. Il ne revient pas à kvt, pas plus qu'à xterm, de connecter l'utilisateur, mais à xdm et à kdm, à mon avis. Quoi qu'il en soit, cela évite de connecter l'utilisateur comme un utilisateur de X quand on utilise startx... Y a-t'il des remarques à ce sujet ?

### Pourquoi ne reçois-je pas, alors que je suis un utilisateur normal, des avis KDE?

Si vous utilisez un système Linux (avec /proc actif), c'est qu'il y a une bogue. Veuillez m'en envoyer une description afin que je puisse la corriger.

Si vous utilisez Linux version 2.0.35, c'est une bogue connue du noyau qui empêche root de lire /proc. La solution est la même que dans la section 5.1, dans la mesure où vous passez par kdm ou par xdm pour vous connecter à X. Une autre solution est de mettre votre système à jour!

Si vous n'êtes pas dans ce cas, c'est normal : ktalkd ne peut pas trouver l'utilisateur, car KDE ne le connecte pas dans utmp et la détection basée sur linux (/proc) est désactivé. La solution est la même que dans la section 5.1, dans la mesure où vous passez par kdm ou par xdm pour vous connecter à X. Une autre solution est de vous assurer que vous avez toujours un terminal xterm ouvert.

### Comment obtenir des informations de débogage de ktalkd ?

Comme il s'agit d'un démon, il n'y a pas d'affichage de débogage sur la sortie standard. Pour obtenir des informations de débogage (par exemple avant de soumettre un rapport d'erreur !), modifiez les lignes de inetd.conf qui servent à lancer ktalkd et kotalkd pour en faire :

    talk   dgram   udp     wait    root    /usr/sbin/tcpd  /opt/kde/bin/kotalkd -d
    ntalk  dgram   udp     wait    root    /usr/sbin/tcpd  /opt/kde/bin/ktalkd -d

(remarquez l'option -d)

Editez ensuite /etc/syslog.conf afin d'ajouter la ligne suivante :

    *.*         /var/log/all_messages

Pour que ça marche, vous devez redémarrer inetd et syslogd :

    % killall -HUP inetd
    % killall -HUP syslogd

Pour finir, lancez une session de discussion et allez voir les résultats dans /var/log/all&lowbar;messages

Quand vous soumettez un rapport d'erreur, n'oubliez pas d'inclure non seulement les informations de débogage, mais également le numéro de version de ktalkd et la sortie de l'instruction "./configure". Merci.

## Copyright

ktalkd est maintenu et amélioré par David Faure, David.Faure@insa-lyon.fr

Le programme originel a été écrit par Robert Cimrman, cimrman3@students.zcu.cz

    ktalkd est protégé par Copyright 1997,1998 David Faure David.Faure@insa-lyon.fr

    Ce programme est un logiciel libre; vous pouvez le redistribuer et/ou le modifier
    conformément aux termes de la Licence Générale Publique GNU (General Public License) telle
    qu'elle est publiée par la Free Software Foundation; soit la version 2 de la Licence, soit
    (à votre choix) toute version ultérieure.

    Ce programme est distribué en espérant qu'il s'avère utile,
    mais SANS AUCUNE GARANTIE; sans même la garantie implicite de POSSIBILITE DE COMMERCIALISATION
    ou d'ADEQUATION A UN BUT DONNE. Reportez-vous à la Licence Générale Publique GNU
    pour plus de détails.

    Vous devriez avoir reçu une copie de la Licence Générale Publique GNU en même temps que
    ce programme; si tel n'est pas le cas, écrivez à :
    Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

Traduction française: Eric Bischoff