<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
  <!ENTITY kappname "&ktalkd;">
  <!ENTITY % addindex "IGNORE"
> 
  <!ENTITY % German "INCLUDE"
> <!-- change language only here -->   
]>

<book lang="&language;">

<bookinfo>
<title
>Das Handbuch zu &ktalkd;</title>
<authorgroup>
<author
><firstname
>David</firstname
> <surname
>Faure</surname
> <affiliation
> <address
><email
>faure@kde.org</email
></address>
</affiliation>
</author>

<othercredit role="translator"
><firstname
>Matthias</firstname
><surname
>Kiefer</surname
><affiliation
><address
><email
>matthias.kiefer@gmx.de</email
></address
></affiliation
><contrib
>Übersetzung</contrib
></othercredit
> 
</authorgroup>

<legalnotice>
&FDLNotice;
</legalnotice>

<copyright>
<year
>2001</year>
<holder
>David Faure</holder>
</copyright>

<date
>2001-05-02</date>
<releaseinfo
>1.05.02</releaseinfo>

<abstract>
<para
>&ktalkd; ist ein erweiterter <command
>talk</command
>-Dämon - ein Programm, mit dem eingehende <command
>talk</command
>-Anfragen gemeldet werden und von Ihnen mit einem Talk-Programm beantwortet werden können. </para
> 

</abstract>
<keywordset>
<keyword
>KTALKD</keyword>
<keyword
>talk</keyword>
<keyword
>talkd</keyword>
<keyword
>otalk</keyword>
<keyword
>ntalk</keyword>
<keyword
>ktalkdlg</keyword>
<keyword
>kcmktalkd</keyword>
</keywordset>
</bookinfo>

<chapter id="introduction">
<title
>Einleitung</title>

<para
>&ktalkd; ist ein erweiterter <command
>talk</command
>-Dämon - ein Programm, mit dem eingehende <command
>talk</command
>-Anfragen gemeldet werden und von Ihnen mit einem <command
>talk</command
>-Programm beantwortet werden können. </para>

<important>
<para
>Ein wichtiger Hinweis: &ktalkd; wurde konzipiert für einen Ein-Benutzerarbeitsplatz und sollte nicht auf einem Mehr-Benutzercomputer verwendet werden: da &ktalkd; die Konfigurationsdateien eines Benutzers einliest, kann man den <command
>talk</command
>-Dämon veranlassen, jeden beliebigen Befehl auszuführen. Man sollte &ktalkd; nicht auf einem Computer  verwenden, auf dem Personen Benutzerkonten haben, die nicht vollständig vertrauenswürdig sind. </para>
</important>

<para
>Bezeichnungskonvention: In diesem Handbuch werde ich Sie als <quote
>Angetalkter</quote
> bezeichnen, wenn jemand versucht, mit Ihnen zu talken. </para>

<para
>&ktalkd; hat die folgenden Eigenschaften :</para>

<variablelist>
<varlistentry>
<term
>Anrufbeantworter</term>
<listitem>
<para
>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. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
>Klang</term>
<listitem>
<para
>Falls gewünscht, wird die Anfrage zusätzlich mit einem Klang gemeldet. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
>X Meldung </term>
<listitem>
<para
>Wenn &ktalkd; mit &kde; Unterstützung kompiliert wurde, dann wird zur Meldung <command
>ktalkdlg</command
>, ein KDE Dialog, benutzt. Wenn &ktalk; läuft, wird es gefragt, ob dieses die Anfrage selbst melden will. (Neu seit 0.8.8) </para>
</listitem>
</varlistentry>
<varlistentry>
<term
>Meldungen auf mehreren Displays</term>
<listitem>
<para
>Wenn Sie von einem entfernten Rechner aus angemeldet sind, (z.B. mit dem Kommando <userinput
><command
>export</command
> <envar
>DISPLAY</envar
>=<replaceable
>...</replaceable
></userinput
>), 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 <emphasis
>nicht</emphasis
> xterm o.ä. (interne Beschränkung) benutzen, dann wird zusätzlich eine Textmeldung ausgegeben, für den Fall, dass Sie gerade das Text-Terminal benutzen. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
>Weiterleitung <emphasis
>(Neu seit 0.8.0)</emphasis
></term>
<listitem>
<para
>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 <link linkend="usage"
>Benutzung</link
>. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
>Konfiguration</term>
<listitem>
<para
>Wenn &ktalkd; mit &kde; Unterstützung kompiliert wurde, liest es die Einstellungen aus &kde; Konfigurationsdateien, der globalen (<filename
>$<envar
>KDEDIR</envar
>/share/config/ktalkdrc</filename
>) und der benutzerspezifischen im Persönlichen Ordner des Benutzers. Die globale Konfigurationsdatei muss vom Systemadministrator von Hand bearbeitet werden, aber es gibt nun einen Konfigurationsdialog für den Benutzer. Er heisst: <command
>kcmktalkd</command
> und kann, nachdem &ktalkd; installiert ist, in &kcontrol; aufgerufen werden. Auf nicht-&kde; Systemen liest &ktalkd; die Datei <filename
>/etc/talkd.conf</filename
>. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
>Internationalisierung</term>
<listitem>
<para
>Unter &kde; wird die Meldung in Ihrer Sprache ausgegeben, vorausgesetzt, dass Sie Ihre Sprache im KDE Kontrollzentrum eingestellt haben und dass jemand <command
>ktalkdlg</command
> in Ihre Sprache übersetzt hat. Das gleiche gilt für den Konfigurationsdialog <command
>kcmktalkd</command
>. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
>Unterstützung für <command
>otalk</command
> und <command
>ntalk</command
> <emphasis
>(Neu seit 0.8.1)</emphasis
></term>
<listitem>
<para
>&ktalkd; unterstützt nun beide Protokolle, auch beim Weiterleiten. &ktalkd; unterstützt diese ebenfalls. </para>
</listitem>
</varlistentry>
</variablelist>

<para
>Ich hoffe Sie mögen diesen Talk-Dämonen,</para>

<para
>David Faure <email
>faure@kde.org</email
></para>

</chapter>

<chapter id="usage">
<title
>Benutzung</title>

<para
>Um &ktalkd; zu verwenden, benötigt man einen <command
>talk</command
> Client. Der textbasierte Befehl <command
>talk</command
> ist auf den meisten &UNIX; Betriebssystemen verfügbar. Man kann es testen mit <userinput
><command
>talk</command
> <replaceable
>Eigener_Benutzername</replaceable
></userinput
>, um zu sehen, was passiert, wenn man eine <command
>talk</command
>-Anfrage bekommt. </para>

<para
>Man kann den Anfragebeantworter auf die gleiche Art testen: stellt man eine <command
>talk</command
>-Anfrage an sich selbst und ignoriert man die Anfrage zweimal, so wird der Anfragebeantworter gestartet. </para>

<para
>Für &kde; existiert ein <command
>talk</command
>-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 <ulink url="ftp://ftp.kde.org/pub/kde/stable/latest/apps/network"
>ftp://ftp.kde.org/pub/kde/stable/latest/apps/network</ulink
> zu finden sein. </para>

<para
>Der Meldedialog ist trivial: <guibutton
>Anworten</guibutton
> Sie oder <guibutton
>ignorieren</guibutton
> Sie die Anfrage. </para>

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

<sect1 id="choosing-a-forwarding-method">
<title
>Wählen einer Weiterleitungsmethode</title>

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

<variablelist>
<varlistentry>
<term
><acronym
>FWA</acronym
> - Anfrage lediglich weiterleiten (Forward announcement only).</term>
<listitem>
<para
>Direkte Verbindung. Nicht empfehlenswert. </para>
<itemizedlist>
<listitem>
<para
>(+) Sie erfahren wer Sie versucht zu erreichen. </para>
</listitem>
<listitem>
<para
>(-) Derjenige, der die Anfrage macht, muss auf eine Anfrage von Ihnen antworten. </para>
</listitem>
<listitem>
<para
>(-) Benutzen Sie diese Methode nicht wenn Sie einen Anrufbeantworter eingeschaltet haben. (Der Anrufbeantworter kann kein Fenster öffnen; es wäre verwirrend!) </para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>

<varlistentry>
<term
><emphasis
>WLA</emphasis
> : Alle Anfragen werden weitergeleitet, wobei die Informationen geändert werden, falls das nötig sein sollte. Direkte Verbindung.</term>
<listitem>
<para
>Direkte Verbindung. </para>
<itemizedlist>
<listitem>
<para
>(+) Derjenige, der die Anfrage macht, bemerkt nicht, dass die Anfrage weitergeleitet wird. </para>
</listitem>
<listitem>
<para
>(-) Sie werden nicht genau wissen wer die Anfrage gestellt hat - nur seinen Benutzernamen. (Sie sehen also möglicherweise nur <computeroutput
>talk von Wintalk@mein&lowbar;rechner</computeroutput
>) </para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>

<varlistentry>
<term
><acronym
>WLT</acronym
> : Alle Anfragen werden weitergeleitet und die Talk-Verbindung wird angenommen. Keine direkte Verbindung.</term>
<listitem>
<para
>Keine direkte Verbindung.</para>

<itemizedlist>
<listitem>
<para
>(+) Gleiches wie oben, aber es funktioniert auch, wenn Sie und der Talkinitiator keine direkte Verbindung aufbauen können (z.B. wegen eines Firewalls). </para>
</listitem>
<listitem>
<para
>(+) Sie erfahren den richtigen Namen desjenigen, der mit Ihnen talken will, wenn Sie die Verbindung annehmen. </para>
</listitem>
<listitem>
<para
>(-) Aber wie bei <acronym
>FWR</acronym
> sehen Sie in der Meldung nicht seinen Rechnernamen. </para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
</variablelist>

<para
>Kurz gesagt, benutzen Sie <acronym
>WLT</acronym
> wenn Sie die Weiterleitung hinter einem Firewall benutzen wollen (und wenn &ktalkd; beide Netzwerke erreichen kann), und ansonsten <acronym
>WLA</acronym
>. </para>

</sect1>
</chapter>

<chapter id="questions-and-answers">
<title
>Fragen und Antworten</title>

<qandaset>
<qandaentry>
<question>
<para
>Warum erreichen <systemitem class="username"
>root</systemitem
> keine &kde; Ankündigungen? </para>
</question>

<answer>
<para
>Dies wäre im Zusammenhang mit der momentanen Benutzererkennung ein Sicherheitsloch. Sie können diese Einschränkung umgehen indem Sie zwei Zeilen zu den <command
>xdm</command
> Konfigurationsdateien (die die gleichen wie die von &kdm; sind) hinzufügen.  </para>

<note>
<para
>Die S.u.S.E &Linux;-Distribution enthält diese Zeilen standardmäßig. </para>
</note>

<para
>Diese Konfigurationsdateien befinden sich normalerweise in einem Ordner wie <filename class="directory"
>/etc/X11/xdm</filename
> oder <filename class="directory"
>/usr/X11R6/lib/X11/xdm</filename
>. Die folgende Beschreibung geht davon aus, dass sie sich in <filename class="directory"
>/etc/X11/xdm</filename
> befinden.</para>

<para
>Man muss folgendes tun:</para>

<procedure>
<step>
<para
>Folgendes müssen Sie tun: Ändern oder erstellen Sie die Datei <filename
>Xstartup</filename
> im <command
>xdm</command
> Konfigurationsordner so, dass sie folgendermaßen aussieht: </para
> 
<screen
>#!/bin/sh
/etc/X11/xdm/GiveConsole
sessreg -a -l $DISPLAY -x /etc/X11/xdm/Xservers $USER</screen>
</step>
<step>
<para
>und die Datei <filename
>Xreset</filename
> so: </para>
<screen
>#!/bin/sh
/etc/X11/xdm/TakeConsole
sessreg -d -l $DISPLAY $USER</screen>
</step>
<step>
<para
>Stellen Sie sicher, dass in <filename
>xdm-config</filename
> auf diese beiden Dateien verwiesen wird: </para>
<screen
>DisplayManager._0.startup:      /etc/X11/xdm/Xstartup
DisplayManager._0.reset:        /etc/X11/xdm/Xreset </screen>
</step>
</procedure>

<para
>Diese Zeilen veranlassen &kdm; (oder <command
>xdm</command
>) dazu, den Benutzer im utmp zu registrieren. Es ist meiner Meinung nach nicht die Aufgabe von &konsole;, oder <command
>xterm</command
>, den Benutzer zu registrieren, sondern die Aufgabe von &kdm; oder <command
>xdm</command
>. Wie auch immer, der Benutzer wird nicht als X-Benutzer registriert wenn er zum Starten von X-Windows <command
>startx</command
> benutzt ... Haben Sie eine Idee dazu? </para>
</answer>
</qandaentry>

<qandaentry>
<question>
<para
>Warum bekomme ich als normaler Benutzer keine &kde;-Meldungen? </para>
</question>

<answer>
<para
>Wenn Sie ein &Linux;-System (mit aktiviertem <filename class="directory"
>/proc</filename
>) benutzen, ist dieses Verhalten ein Fehler. Bitte senden Sie mir eine Beschreibung davon damit ich diesen Fehler beheben kann. </para>

<para
>Wenn Sie &Linux; 2.0.35 benutzen, ist dies ein bekannter Fehler im Kernel, der <systemitem class="username"
>root</systemitem
> nicht <filename class="directory"
>/proc</filename
> lesen lässt. Vorausgesetzt Sie verwenden &kdm; oder <command
>xdm</command
> können Sie die Lösung aus dem letzten Abschnitt benutzen, um das Problem zu lösen, oder Sie können einen neueren Kernel installieren. </para>

<para
>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 (<filename class="directory"
>/proc</filename
>) Erkennung deaktiviert ist. Benutzen Sie die Lösung des letzten Abschnitts wenn Sie <command
>kdm</command
> oder <command
>xdm</command
> benutzen, um X-Windows zu starten. Oder lassen Sie immer einen <application
>xterm</application
> laufen. </para>
</answer>
</qandaentry>

<qandaentry>
<question>
<para
>Wie bekomme ich Debug-Informationen von &ktalkd;? </para>
</question>

<answer>
<para
>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 <filename
>inetd.conf</filename
>, die ktalkd; und &kotalkd; starten, folgendermaßen: </para>
 
<screen
>talk   dgram   udp     wait    root    /usr/sbin/tcpd  /opt/kde/bin/ktalkd -d
ntalk  dgram   udp     wait    root    /usr/sbin/tcpd  /opt/kde/bin/ktalkd -d</screen>

<para
>Wichtig ist die Option <option
>-d</option
>. </para>

<para
>Fügen Sie dann folgende Zeile in <filename
>/etc/syslog.conf</filename
> ein: </para>

<screen
>*.*         /var/log/all_messages</screen>

<para
>Damit die Änderung funktioniert, muss man als nächstes <command
>inetd</command
> und <command
>syslogd</command
> neu starten:</para>

<screen
><prompt
>%</prompt
> <userinput
><command
>killall</command
> <option
>-HUP inetd</option
></userinput>
<prompt
>%</prompt
> <userinput
><command
>killall</command
> <option
>-HUP syslogd</option
></userinput
></screen>

<para
>Startet man nun eine <command
>talk</command
>-Sitzung, so kann man das Resultat in <filename
>/var/log/all&lowbar;messages</filename
> sehen. </para>

<para
>Wenn Sie einen Fehlerbericht übermitteln, senden Sie bitte die Debug-Informationen, die Versionsnummer von &ktalkd; und die Ausgabe von <command
>./configure</command
> mit. Danke.</para>

</answer>
</qandaentry>
</qandaset>

</chapter>

<chapter id="copyright-and-license">
<title
>Mitwirkende und Lizenzen</title>

<para
>&ktalkd; wird betreut und verbessert von David Faure <email
>faure@kde.org</email
> </para>

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

<para
>Deutsche Uebersetzung Matthias Kiefer <email
>matthias.kiefer@gmx.de</email
></para
> 
&underFDL; &underGPL; </chapter>

<appendix id="installation">
<title
>Installation</title>

<sect1 id="how-to-obtain-ktalkd">
<title
>Wie man &ktalkd; erhält</title>

<para
>&ktalkd; ist nun im Paket kdenetwork von &kde; unter <ulink url="http://www.kde.org"
>http://www.kde.org</ulink
> enthalten. </para>

<para
>Aber Sie können die neueste Version von &ktalkd; immer von der Haupt-&FTP;-Seite des &kde;-Projekts <ulink url="ftp://ftp.kde.org/pub/kde"
>ftp://ftp.kde.org/pub/kde</ulink
> und seinen Spiegelservern herunter laden. Sie finden es normalerweise in <ulink url="ftp://ftp.kde.org/pub/kde/stable/latest/apps/network"
>ftp://ftp.kde.org/pub/kde/stable/latest/apps/network</ulink
>. </para>
</sect1>

<sect1 id="requirements">
<title
>Anforderungen</title>

<para
>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 <ulink url="ftp://ftp.kde.org/pub/kde/"
>ftp://ftp.kde.org/pub/kde/</ulink
>. </para>
</sect1>

<sect1 id="compilation-and-installation">
<title
>Übersetzung und Installation</title>

<para
>Um &ktalkd; auf Ihrem System zu kompilieren und zu installieren, geben Sie bitte folgendes im Basisordner der &ktalkd;-Distribution ein: </para>

<screen
><prompt
>%</prompt
> <userinput
><command
>./configure</command
></userinput>
<prompt
>%</prompt
> <userinput
><command
>make</command
></userinput
> 
<prompt
>%</prompt
> <userinput
><command
>make</command
> <option
>install</option
></userinput
></screen>

<para
>Da &ktalkd; ein Dämon ist, erfordert der Befehl <userinput
><command
>make</command
> <option
>install</option
></userinput
> <systemitem class="username"
>root</systemitem
>-Berechtigungen.</para>

<para
>Wichtig ist, die Datei <filename
>/etc/inetd.conf</filename
> anzupassen. Zum Beispiel müssen für ein &Linux;-System mit &kde; in <filename class="directory"
>/opt/kde</filename
> die Zeilen, die <command
>talk</command
> und <command
>ntalk</command
> betreffen, folgendermaßen geändert werden: </para>

<screen
>talk   dgram   udp     wait    root    /usr/sbin/tcpd  /opt/kde/bin/ktalkd
ntalk  dgram   udp     wait    root    /usr/sbin/tcpd  /opt/kde/bin/ktalkd</screen>

<para
>Es gibt ein Skript, das die Änderungen automatisch vornimmt. Damit kann man <filename
>inetd.conf</filename
> durch folgenden Befehl anpassen:</para>

<screen
><prompt
>%</prompt
> <userinput
><command
>./post-install.sh</command
></userinput
></screen>

<para
>In jedem Fall muss inetd danach <emphasis
>neugestartet</emphasis
> werden. Dazu reicht auf den meisten &Linux;-Systemen der Befehl: </para>

<screen
><prompt
>%</prompt
> <userinput
><command
>killall</command
> <option
>-HUP inetd</option
></userinput
></screen>

<para
>Auf neueren Systemen, die <command
>xinetd</command
> verwenden, gibt es keine Datei <filename
>inetd.conf</filename
> mehr. Stattdessen muss die Datei <filename
>/etc/xinetd.d/talk</filename
> mit folgenden Zeilen geändert oder erzeugt werden: </para>

<screen
>service talk
{
        socket_type = dgram
        wait = yes
        user = root
        server = /usr/bin/ktalkd
}

service ntalk
{
        socket_type = dgram
        wait = yes
        user = root
        server = /usr/bin/ktalkd
}</screen>

<para
>Dann muss <command
>xinetd</command
> neu gestartet werden. </para>

<para
>Bitte informieren Sie mich über jede Änderung, die Sie machen mussten, um &ktalkd; auf Ihrer Plattform kompilieren zu können. </para>
</sect1>

</appendix>

</book>

<!--
Local Variables:
mode: sgml
sgml-minimize-attributes:nil
sgml-general-insert-case:lower
sgml-indent-step:0
sgml-indent-data:nil
End:

// vim:ts=0:sw=2:tw=78:noet
-->


