<?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 % Italian "INCLUDE"
> <!-- change language only here -->   
]>

<book lang="&language;">

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

<othercredit role="translator"
><firstname
>Luciano</firstname
> <surname
>Montanaro</surname
> <affiliation
><address
><email
>mikelima@cirulla.net</email
></address
></affiliation
> <contrib
>Traduzione del documento</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; è un demone <command
>talk</command
> evoluto - un programma che processa le richieste in arrivo dal comando <command
>talk</command
>, le annuncia all'utente e permette di rispondere usando un client talk. </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
>Introduzione</title>

<para
>&ktalkd; è un demone <command
>talk</command
> evoluto - un programma che processa le richieste in arrivo dal comando <command
>talk</command
>, le annuncia all'utente e permette di rispondere usando un client talk. </para>

<important>
<para
>Nota che &ktalkd; è progettato per funzionare su macchine usate da un singolo utente, e non dovrebbe essere usato su macchine multiutente: poiché legge i file di configurazione dell'utente, gli utenti possono costringere il demone <command
>talk</command
> ad eseguire qualsiasi comando, e questo è particolarmente pericoloso. Non usare &ktalkd; se crei account per persone di cui non ti fidi completamente sulla tua macchina. </para>
</important>

<para
>In questo documento, se qualcuno vuole parlare con te, sarai identificato come il <quote
>chiamato</quote
>. </para>

<para
>&ktalkd; offre le seguenti funzionalità:</para>

<variablelist>
<varlistentry>
<term
>Risponditore automatico</term>
<listitem>
<para
>Se il chiamato non è connesso al computer, o se non risponde dopo il secondo annuncio, viene avviato un risponditore automatico, che prende il messaggio e lo invia per posta elettronica al chiamato. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
>Suono</term>
<listitem>
<para
>È possibile riprodurre un suono durante l'annuncio, se lo desideri. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
>X Announce </term>
<listitem>
<para
>Se viene compilato con &kde; installato, &ktalkd; userà <command
>ktalkdlg</command
>, una finestra di dialogo di &kde;, per gli annunci. Se &ktalk; è già in esecuzione, verrà usato questo per dare l'annuncio (Nuova funzione a partire dalla versione 0.8.8). </para>
</listitem>
</varlistentry>
<varlistentry>
<term
>Annunci su più display</term>
<listitem>
<para
>Se sei connesso da remoto (&eg; con il comando <userinput
><command
>export </command
><envar
>DISPLAY</envar
>=<replaceable
>...</replaceable
></userinput
>), l'annuncio di X sarà fatto anche sul display remoto. Rispondi all'annuncio dalla sessione che preferisci! Se sei connesso anche attraverso ad un terminale testuale, e se <emphasis
>non</emphasis
> stai usando xterm (è una limitazione interna), vedrai l'annuncio anche nel terminale, per il caso in cui tu usi il terminale al momento dell'annuncio. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
>Inoltro <emphasis
>(Nuova funzione, dalla versione 0.8.0)</emphasis
></term>
<listitem>
<para
>Puoi impostare l'inoltro ad un altro utente anche su un host differente se sei via. Ci sono tre diversi metodi di inoltro. Vedi la sezione <link linkend="usage"
>Uso</link
>. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
>Configurazione</term>
<listitem>
<para
>Se &ktalkd; è compilato per &kde;, legge la configurazione dai file delle impostazioni di &kde;, quelli globali (<filename
>$<envar
>KDEDIR</envar
>/share/config/ktalkdrc</filename
>) e quelli dell'utente, residenti nella cartella personale. Quello globale deve essere modificato a mano dall'amministratore, ma ora è disponibile una finestra di configurazione per quello personale. Si chiama <command
>kcmtalkd</command
> e si trova in &kcontrol; dopo l'installazione di &ktalkd;. Per i sistemi dove &kde; non è installato, &ktalkd; leggerà il file <filename
>/etc/talkd.conf</filename
>. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
>Internazionalizzazione</term>
<listitem>
<para
>Sotto &kde; l'annuncio sarà fatto nella tua lingua a patto che tu l'abbia impostata dai menu di &kde; e che qualcuno abbia tradotto <command
>ktalkdlg</command
> nella tua lingua. Lo stesso è vero per la finestra di configurazione, <command
>kcmktalkd</command
>. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
>Gestione di <command
>otalk</command
> e <command
>ntalk</command
> <emphasis
>(Nuova funzione, dalla versione 0.8.1)</emphasis
></term>
<listitem>
<para
>&ktalkd; ora gestisce entrambi i protocolli, anche per l'inoltro. Ovviamente, anche &ktalk; gestisce entrambi i protocolli. </para>
</listitem>
</varlistentry>
</variablelist>

<para
>Spero che questo demone per talk ti possa essere utile,</para>

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

</chapter>

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

<para
>Per usare &ktalkd; devi usare un client <command
>talk</command
>. Il programma da riga di comando <command
>talk</command
> è presente in quasi tutte le distribuzioni di sistemi &UNIX;. Prova ad usare <userinput
><command
>talk</command
> <replaceable
>tuo&lowbar;nomeutente</replaceable
></userinput
> per vedere che cosa succede quando ricevi richieste <command
>talk</command
>. </para>

<para
>Puoi anche provare il risponditore automatico allo stesso modo: avvia un comando <command
>talk</command
> diretto a te stesso, ignora l'annuncio per due volte, e vedrai il risponditore automatico. </para>

<para
>C'è un client <command
>talk</command
> con interfaccia grafica per &kde;, &ktalk;. Non è ancora parte dei pacchetti di &kde; ma lo puoi trovare suftp://ftp.kde.org. Dovrebbe essere 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>

<para
>La finestra di dialogo dell'annucio è banale: <guibutton
>Rispondi</guibutton
> o <guibutton
>Ignora</guibutton
>. </para>

<para
>La finestra di configurazione dovrebbe essere abbastanza semplice da usare, tranne che per l'impostazione dell'inoltro ad un altro utente (o anche ad un altro host). </para>

<sect1 id="choosing-a-forwarding-method">
<title
>Scelta del metodo di inoltro</title>

<para
>Nessuno è perfetto, ciascuno ha i suoi vantaggi (+) e svantaggi (-). </para>

<variablelist>
<varlistentry>
<term
><acronym
>FWA</acronym
> - (ForWard Announcement) solo inoltro dell'annuncio.</term>
<listitem>
<para
>Connessione diretta. Non è raccomandato. </para>
<itemizedlist>
<listitem>
<para
>(+) Saprai chi è il chiamante, ma </para>
</listitem>
<listitem>
<para
>(-) il chiamante dovrà rispondere ad un annuncio da parte tua. Fastidioso. </para>
</listitem>
<listitem>
<para
>(-) Non usare questo metodo se hai un risponditore automatico all'indirizzo <quote
>andato via</quote
>. (Il risponditore automatico non può mostrare gli annunci, farebbe confusione!) </para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>

<varlistentry>
<term
><acronym
>FRW</acronym
> - (ForWard Requests) inoltra tutte le richieste, cambiando le informazioni se necessario</term>
<listitem>
<para
>Connessione diretta. </para>
<itemizedlist>
<listitem>
<para
>(+) Il chiamante non saprà che sei assente, ma </para>
</listitem>
<listitem>
<para
>(-) non potrai sapere davvero chi è che ti chiama - solo il suo nome utente, (potresti vedere, ad esempio <computeroutput
>talk da Wintalk@mio&lowbar;host</computeroutput
>) </para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>

<varlistentry>
<term
><acronym
>FWT</acronym
> - (ForWard and Talk) Inoltra tutte le richieste e accetta la chiamata.</term>
<listitem>
<para
>Nessuna connessione dirtetta.</para>

<itemizedlist>
<listitem>
<para
>(+) Come sopra, ma funziona anche se tu ed il chiamante non potete essere in contatto diretto fra di voi (&eg; firewall). </para>
</listitem>
<listitem>
<para
>(+) ti verrà detto chi ti sta chiamando quando accetterai la chiamata </para>
</listitem>
<listitem>
<para
>(-) ma come nel caso <acronym
>FRW</acronym
>, non vedrai il nome della macchina nell'annuncio </para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
</variablelist>

<para
>In breve, usa <acronym
>FWT</acronym
> se vuoi usarlo dietro ad un firewall (e se &ktalkd; può accedere ad entrambe le reti), e <acronym
>FWR</acronym
> altrimenti. </para>

</sect1>
</chapter>

<chapter id="questions-and-answers">
<title
>Domande e risposte</title>

<qandaset>
<qandaentry>
<question>
<para
>Come mai l'utente <systemitem class="username"
>root</systemitem
> non riceve gli annunci di &kde;? </para>
</question>

<answer>
<para
>Perché questo sarebbe un problema di sicurezza, con il metodo attuale di identificazione dell'utente. Puoi aggirare questa limitazione aggiungendo due righe al file di configurazione di <command
>xdm</command
> (che sono gli stessi di &kdm;). </para>

<note>
<para
>La distribuzione S.u.S.E &Linux; normalmente è già predisposta con queste righe. </para>
</note>

<para
>Questi file di configurazione sono normalmente conservati in una cartella come <filename class="directory"
>/etc/X11/xdm</filename
>, o <filename class="directory"
>/usr/X11R6/lib/X11/xdm</filename
> su altri sistemi. Il resto della procedura presuppone che si trovino in <filename class="directory"
>/etc/X11/xdm</filename
>, quindi preparati a correggere il percorso, se necessario.</para>

<para
>Ecco che cosa devi fare:</para>

<procedure>
<step>
<para
>Modifica il file <filename
>Xstartup</filename
>, o crealo, (nella cartella di configurazione di <command
>xdm</command
>) in modo che contenga: </para
> 
<screen
>#!/bin/sh
/etc/X11/xdm/GiveConsole
sessreg -a -l $DISPLAY -x /etc/X11/xdm/Xservers $USER</screen>
</step>
<step>
<para
>ed il file <filename
>Xreset</filename
> in modo che contenga: </para>
<screen
>#!/bin/sh
/etc/X11/xdm/TakeConsole
sessreg -d -l $DISPLAY $USER</screen>
</step>
<step>
<para
>Assicurati che <filename
>xdm-config</filename
> faccia riferimento ai suddetti file: </para>
<screen
>DisplayManager._0.startup:      /etc/X11/xdm/Xstartup
DisplayManager._0.reset:        /etc/X11/xdm/Xreset </screen>
</step>
</procedure>

<para
>Questo farà in modo che &kdm; (o <command
>xdm</command
>) facciano accedere l'utente ad utmp, che è la procedura corretta. A mio parere, la procedura di login non è compito di &konsole; o di <command
>xterm</command
>. Questo, però, non farà connettere l'utente come utente di X se si usa <command
>startx</command
>... Qualcuno ha dei suggerimenti a proposito? </para>
</answer>
</qandaentry>

<qandaentry>
<question>
<para
>Come mai io, come normale utente, non ricevo gli annunci di &kde;? </para>
</question>

<answer>
<para
>Se usi un sistema &Linux; (con <filename class="directory"
>/proc</filename
> abilitato) questo comportamento è un bug. Per piacere, mandami una descrizione del bug in modo che possa correggerlo. </para>

<para
>Se stai usando la versione 2.0.35 di &Linux;, questo è un bug noto del kernel, che non permette a <systemitem class="username"
>root</systemitem
> di leggere <filename class="directory"
>/proc</filename
>. La soluzione è la stessa della domanda precedente, a patto che tu usi &kdm; o <command
>xdm</command
> per accedere ad X. In ogni caso, faresti bene ad aggiornare il sistema! </para>

<para
>Altrimenti, è tutto normale. &ktalkd; non riesce a trovare l'utente perché &kde; non lo registra in utmp ed il rconoscimento basato su &Linux; (<filename class="directory"
>/proc</filename
>) è disabilitato. La soluzione è la stessa che nella domanda precedente, a patto che utilizzi <acronym
>kdm</acronym
> o <acronym
>xdm</acronym
> per accedere ad X. Un'altra soluzione è di assicurarti che una copia dell'applicazione <application
>xterm</application
> sia sempre in esecuzione. </para>
</answer>
</qandaentry>

<qandaentry>
<question>
<para
>Come faccio ad ottenere un output di debug da &ktalkd;? </para>
</question>

<answer>
<para
>Poiché è un demone, non ci sarà output di debug sull'output standard. Per ottenere l'output di debu (ad esempio prima di inoltrare la segnalazione di un bug!), aggiorna le righe di <filename
>inetd.conf</filename
> che avviano &ktalkd; e &kotalkd; in modo che si legga: </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
>Nota bene l'opzione <option
>-d</option
>. </para>

<para
>Quindi modifica <filename
>/etc/syslog.conf</filename
> per aggiungere la seguente riga: </para>

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

<para
>Perché funzioni, devi far ripartire <command
>inetd</command
> e <command
>syslogd</command
>:</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
>Infine, avvia una sessione di <command
>talk</command
> e leggi il risultato nel file <filename
>/var/log/all&lowbar;messages</filename
> </para>

<para
>Quando inoltri la segnalazione di un bug, non dimenticare mai di includere l'output di debug, e riporta anche il numero di versione di &ktalkd; e l'output di <command
>./configure</command
>.</para>

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

</chapter>

<chapter id="copyright-and-license">
<title
>Copyright e licenze</title>

<para
>La manutenzione di &ktalkd; ed i suoi miglioramenti sono fatti da David Faure, <email
>faure@kde.org</email
> </para>

<para
>Il programma originale è stato scritto da Robert Cimrman, <email
>cimrman3@students.zcu.cz</email
> </para>

<para
>Luciano Montanaro <email
>mikelima@cirulla.net</email
></para
> 
&underFDL; &underGPL; </chapter>

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

<sect1 id="how-to-obtain-ktalkd">
<title
>Dove trovare &ktalkd;</title>

<para
>&ktalkd; è ora un'applicazione del nucleo di &kde; <ulink url="http://www.kde.org"
>http://www.kde.org</ulink
>, e fa parte del pacchetto kdenetwork. </para>

<para
>È sempre possibile scaricare l'ultima versione di &ktalkd; dal sito &FTP; principale del progetto &kde;, <ulink url="ftp://ftp.kde.org/pub/kde"
>ftp://ftp.kde.org/pub/kde</ulink
> e dai suoi mirror. Normalmente la troverai 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
>Requisiti</title>

<para
>Per compilare con successo &ktalkd; ti servirà l'ultima versione delle librerie di &kde;, oltre alla libreria C++ &Qt;. Tutte le librerie richieste oltre a ktalkd stesso sono reperibili presso <ulink url="ftp://ftp.kde.org/pub/kde/"
>ftp://ftp.kde.org/pub/kde/</ulink
> </para>
</sect1>

<sect1 id="compilation-and-installation">
<title
>Compilazione e installazione</title>

<para
>Per compilare ed installare &ktalkd; sul tuo sistema, digita i seguenti comandi nella cartella base della distribuzione di &ktalkd;: </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
>Poiché &ktalkd; è un demone, <userinput
><command
>make</command
> <option
>install</option
></userinput
> richiederà i privilegi di <systemitem class="username"
>root</systemitem
>.</para>

<para
>Non dimenticare di aggiornare <filename
>/etc/inetd.conf</filename
>. Ad esempio, su un sistema &Linux;, se &kde; isiede in <filename class="directory"
>/opt/kde</filename
> cambia le righe riguardanti <command
>talk</command
> e <command
>ntalk</command
> con: </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
>Viene fornito uno script che applica le modifiche necessarie automaticamente. Aggiorna il file <filename
>inetd.cong</filename
> semplicemente eseguendo</para>

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

<para
>Comunque, dovrai <emphasis
>riavviare inetd</emphasis
> dopo aver fatto questo. Sulla maggior parte dei sistemi &Linux; invoca il seguente comando: </para>

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

<para
>Sui sistemi più recenti che usano <command
>xinetd</command
>, non c'è più <filename
>/etc/inetd.conf</filename
>, ed è necessario invece creare un file chiamato <filename
>/etc/xinetd.d/talk/</filename
>, contenente le seguenti righe: </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
>quindi riavvia <command
>xinetd</command
>. </para>

<para
>Per piacere, fammi sapere se hai dovuto fare delle modifiche per compilare e far funzionare &ktalkd; sulla tua piattaforma. </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
-->


