]>

# Das KTalkd Handbuch

David
Faure

    faure@kde.org

Matthias
Kiefer
Übersetzung

    matthias.kiefer@gmx.de

Version 0.9.0, 15. August 1999

Dieses Handbuch beschreibt KTalkd Version 0.9.0

KTalkd Handbuch

KTALKD
kotalkd
talk
talkd
otalk
ntalk
ktalkdlg
kcmktalkd

## Einleitung

`KTalkd` ist ein erweiterter Talk-Dämon - ein Programm, mit dem eingehende Talk-Anfragen gemeldet werden und von Ihnen mit einem Talk-Programm beantwortet werden können.

Bezeichnungskonvention: In diesem Handbuch werde ich Sie als "Angetalkter" bezeichnen, wenn jemand versucht, mit Ihnen zu talken.

`KTalkd` hat die folgenden Eigenschaften:

KDE oder nicht KDE

  Das ist die Frage. :) Dies bedeutet, dass `KTalkd` mit oder ohne KDE Unterstützung kompiliert werden kann. Um es ohne KDE zu verwenden, wird während des Kompilierungsvorgangs festgestellt, ob X, QT oder KDE nicht installiert ist. Wenn Sie die Option '--without-X' des `configure`-Skripts verwenden, wird auf jeden Fall ein nicht-KDE Dämon erstellt.

Anrufbeantworter

  Wenn der Angetalkte nicht am System angemeldet ist oder nach der zweiten Meldung nicht antwortet, wird ein Anrufbeantworter gestartet, der eine Nachricht entgegen nimmt und diese dem Angetalktem per Email zuschickt.

Klang

  Falls gewünscht, wird die Anfrage zusätzlich mit einem Klang gemeldet.

X Meldung

  Wenn `KTalkd` mit KDE Unterstützung kompiliert wurde, dann wird zur Meldung ktalkdlg, ein KDE Dialog, benutzt. Wenn KTalk läuft, wird es gefragt, ob dieses die Anfrage selbst melden will. (Neu seit 0.8.8)

Meldungen auf mehreren Displays

  Wenn Sie von einem entfernten Rechner aus angemeldet sind, (z.B. mit dem Kommando `"export DISPLAY=..."`), wird die Meldung auch auf diesem Display ausgegeben. Antworten Sie auf dem Display, auf dem Sie talken wollen! Wenn sie außerdem in einem Text-Terminal angemeldet sind, und Sie NICHT xterm o.ä. (interne Beschränkung) benutzen, dann wird zusätzlich eine Textmeldung ausgegeben, für den Fall, dass Sie gerade das Text-Terminal benutzen.

Weiterleitung (Neu seit 0.8.0)

  Wenn Sie abwesend sind, können Sie eine Weiterleitung zu einem anderen Benutzer oder sogar zu einem anderen Rechner einstellen. Es gibt drei verschiedene Methoden, die Weiterleitung zu benutzen. Lesen Sie dazu das Kapitel 'Benutzung'.

Konfiguration

  Wenn `KTalkd` mit KDE Unterstützung kompiliert wurde, liest es die Einstellungen aus KDE Konfigurationsdateien, der globalen ($KDEDIR/share/config/ktalkdrc) und der benutzerspezifischen im Persönlichen Verzeichnis des Benutzers.

  Die globale Konfigurationsdatei muss vom Systemadministrator von Hand bearbeitet werden, aber es gibt nun einen Konfigurationsdialog für den Benutzer. Er heißt kcmktalkd und kann, nachdem `KTalkd` installiert ist, im KDE Kontrollzentrum aufgerufen werden. Auf nicht-KDE Systemen liest `KTalkd` die Datei `/etc/talkd.conf`

Internationalisierung

  Unter KDE wird die Meldung in Ihrer Sprache ausgegeben, vorausgesetzt, dass Sie Ihre Sprache im KDE Kontrollzentrum eingestellt haben und dass jemand ktalkdlg in Ihre Sprache übersetzt hat. Das gleiche gilt für den Konfigurationsdialog kcmktalkd.

Unterstützung für otalk und ntalk (Neu seit 0.8.1)

  `KTalkd` unterstützt nun beide Protokolle, auch beim Weiterleiten. KTalk unterstützt diese ebenfalls.

Ich hoffe Sie mögen diesen Talk-Dämonen,

David Faure

faure@kde.org

## Unterstützte Plattformen

RedHat Linux 5.x

  Meine Entwicklungsplattform. `KTalkd` wurde darauf vollständig getestet.

Andere Linux, BSD

  Sollte ohne Probleme kompilieren und laufen.

Solaris

  Wird nicht funktionieren bis jemand einen Ersatz für `snprintf` macht. Natürlich kann man auch eine andere `libc` installieren, um das Problem zu lösen...

AIX

  Ich habe von Problemen mit `localtime`, `ctime` und anderen Funktionen gehört.

Ich würde mich freuen, wenn ich Erfahrungen über das Kompilieren und Ausführen von `KTalkd` auf diesen oder anderen System erhalten würde.

## Installation

### Wie man KTalkd erhält

`KTalkd` ist nun im Paket `kdenetwork` von KDE enthalten.

Aber Sie können die neueste Version von `KTalkd` immer von der Haupt-FTP-Seite des KDE-Projekts ftp://ftp.kde.org/pub/kde und seinen Spiegelservern herunter laden. Sie finden es normalerweise in ftp://ftp.kde.org/pub/kde/stable/latest/apps/network.

### Anforderungen

Um `KTalkd` erfolgreich zu kompilieren, brauchen Sie die neueste Version der KDE Bibliotheken und die QT C++ Bibliothek. Alle benötigten Bibliotheken sowie auch `KTalkd` selbst finden Sie auf ftp://ftp.kde.org/pub/kde/.

### Kompilierung und Installation

Um `KTalkd` auf Ihrem System zu kompilieren und zu installieren, geben Sie bitte folgendes im Basisverzeichnis der `KTalkd` Distribution ein:

    % ./configure
    % make
    % make install

Da `KTalkd` ein Dämon ist, benötigen Sie root-Privilegien, um `make install` auszuführen.

Vergessen Sie nicht `/etc/inetd.conf` auf den neuesten Stand zu bringen.

Wenn Sie z.B. ein Linuxsystem haben und KDE in `/opt/kde` installiert ist, ändern Sie die Zeilen, die talk und ntalk betreffen, folgendermaß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

In der `KTalkd` Distribution ist ein Skript enthalten, das die nötigen Änderungen automatisch vornimmt. Führen Sie einfach folgendes Kommando aus:

    % ./post-install.sh

In jedem Fall müssen Sie danach den inetd neu starten. Auf den meisten Linuxsystem können Sie das mit dem folgenden Kommando erreichen:

    % killall -HUP inetd

Bitte informieren Sie mich über jede Änderung, die Sie machen mussten, um `KTalkd` auf Ihrer Plattform kompilieren zu können.

## Benutzung

Um KTalkd zu benutzen, brauchen Sie ein Talk-Programm; auf den meisten UNIX-Systemen ist das textbasierte `talk` installiert. Tippen Sie einfach "`talk ihr&lowbar;benutzername`", um zu testen was passiert wenn Sie eine Talk-Anfrage erhalten. Auf die gleiche Weise können Sie den Anrufbeantworter testen: machen Sie eine Talk-Anfrage an sich selbst, ignorieren Sie die Anfragen zweimal und der Anrufbeantworter wird gestartet.

Für KDE existiert ein Talk-Programm mit einer graphischen Benutzerschnittstelle, `KTalk`. Es ist momentan noch nicht in den KDE-Paketen enthalten, aber Sie können es von ftp://ftp.kde.org herunter laden. Es sollte unter ftp://ftp.kde.org/pub/kde/stable/latest/apps/network zu finden sein.

Der Meldedialog ist trivial: Anworten Sie oder ignorieren Sie die Anfrage.

Die Einstellungen im Konfigurationsdialog sollten klar sein, außer die Einstellungen für die Weiterleitung zu einem anderen Benutzer (oder einem anderen Rechner).

### Wählen einer Weiterleitungsmethode

Keine Methode ist für alle Situationen geeignet, alle haben Vorteile (+) und Nachteile (-).

WLM : Nur die Meldung wird weitergeleitet. Direkte Verbindung. Nicht empfohlen.

- (+) Sie erfahren wer Sie versucht zu erreichen.

- (-) Derjenige, der die Anfrage macht, muss auf eine Anfrage von Ihnen antworten.

- (-) Benutzen Sie diese Methode nicht wenn Sie einen Anrufbeantworter eingeschaltet haben. (Der Anrufbeantworter kann kein Fenster öffnen; es wäre verwirrend!)

WLA : Alle Anfragen werden weitergeleitet, wobei die Informationen geändert werden, falls das nötig sein sollte. Direkte Verbindung.

- (+) Derjenige, der die Anfrage macht, bemerkt nicht, dass die Anfrage weitergeleitet wird.

- (-) Sie werden nicht genau wissen wer die Anfrage gestellt hat - nur seinen Benutzernamen. (Sie sehen also möglicherweise nur "talk von Wintalk@mein&lowbar;rechner")

WLT : Alle Anfragen werden weitergeleitet und die Talk-Verbindung wird angenommen. Keine direkte Verbindung.

- (+) Gleiches wie bei WLA, aber es funktioniert auch, wenn Sie und der Talkinitiator keine direkte Verbindung aufbauen können (z.B. wegen eines Firewalls).

- (+) Sie erfahren den richtigen Namen desjenigen, der mit Ihnen talken will, wenn Sie die Verbindung annehmen.

- (-) Aber wie bei WLA sehen Sie in der Meldung nicht seinen Rechnernamen.

Kurz gesagt, benutzen Sie WLT wenn Sie die Weiterleitung hinter einem Firewall benutzen wollen (und wenn `KTalkd` beide Netzwerke erreichen kann), und ansonsten WLA.

## Fragen und Antworten

### Wieso bekommt root keine KDE Meldungen?

Dies wäre im Zusammenhang mit der momentanen Benutzererkennung ein Sicherheitsloch. Sie können diese Einschränkung umgehen indem Sie zwei Zeilen zu den `xdm` Konfigurationsdateien (die die gleichen wie die von KDM sind) hinzufügen. Bemerkung: Die S.u.S.E Linux Distribution enthält diese Zeilen standardmäßig.

Diese Konfigurationsdateien befinden sich normalerweise in einem Verzeichnis wie `/etc/X11/xdm` oder `/usr/X11R6/lib/X11/xdm`. Die folgende Beschreibung geht davon aus, dass sie sich in `/etc/X11/xdm` befinden.

Folgendes müssen Sie tun: Ändern oder erstellen Sie die Datei Xstartup im xdm Konfigurationsverzeichnis so, dass sie folgendermaßen aussieht:

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

und die Datei Xreset so:

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

Stellen Sie sicher, dass in xdm-config auf diese beiden Dateien verwiesen wird:

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

Diese Zeilen veranlassen KDM (oder xdm) dazu, den Benutzer im utmp zu registrieren. Es ist meiner Meinung nach nicht die Aufgabe von Kvt, oder xterm, den Benutzer zu registrieren, sondern die Aufgabe von KDM oder xdm. Wie auch immer, der Benutzer wird nicht als X-Benutzer registriert wenn er zum Starten von X-Windows `startx` benutzt... Haben Sie eine Idee dazu?

### Warum bekomme ich als normaler Benutzer keine KDE Meldungen?

Wenn Sie ein Linux-System (mit aktiviertem /proc) benutzen, ist dieses Verhalten ein Fehler. Bitte senden Sie mir eine Beschreibung davon damit ich diesen Fehler beheben kann.

Wenn Sie Linux 2.0.35 benutzen, ist dies ein bekannter Fehler im Kernel, der root nicht `/proc` lesen lässt. Sie können die Lösung aus Abschnitt 5.1 benutzen, um das Problem zu lösen oder Sie können sich einen neueren Kernel installieren.

In allen anderen Fällen ist das normal: `KTalkd` kann den Benutzer nicht finden da KDE ihn nicht im utmp registriert und die Linux-basierte (/proc) Erkennung deaktiviert ist. Benutzen Sie die Lösung von Abschnitt 5.1 wenn Sie KDM oder xdm benutzen, um X-Windows zu starten. Oder lassen Sie immer einen xterm laufen.

### Wie bekomme ich Debug-Informationen von KTalkd?

Da `KTalkd` ein Dämon ist gibt er keine Debug-Informationen auf der Standardausgabe aus. Um trotzdem Debug-Informationen zu bekommen (z.B. bevor Sie einen Fehlerbericht senden!), ändern Sie die Zeilen in inetd.conf, die `KTalkd` und `kotalkd` starten, folgendermaßen:

    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

(beachten Sie die -d Option)

Fügen Sie dann folgende Zeile in /etc/syslog.conf ein:

    *.*         /var/log/all_messages

Um die Änderungen zu aktivieren, müssen Sie den inetd und den syslogd neu starten:

    % killall -HUP inetd
    % killall -HUP syslogd

Starten Sie dann eine Talk-Verbindung und Sie können die Ausgaben in `/var/log/all&lowbar;messages` finden.

Wenn Sie einen Fehlerbericht übermitteln, senden Sie bitte die Debug-Informationen, die Versionsnummer von `KTalkd` und die Ausgabe von "./configure" mit. Danke.

## Lizenzbestimmungen

`KTalkd` wird betreut und verbessert von David Faure <faure@kde.org>

Das Originalprogramm wurde von Robert Cimrman <cimrman3@students.zcu.cz> geschrieben.

    ktalkd is Copyright 1997,1998 David Faure, faure@kde.org

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

(Anm.d.Ü.: Aus rechtlichen Erwägungen wurde der englische Originaltext des Copyright-Hinweises beibehalten. Sie erhalten eine deutsche Übersetzung der kompletten GPL unter http://www.gnu.de/gpl-ger.html.)