<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook V3.1-Based Variant V1.0//EN" [
 <!ENTITY ktalkd "<application>ktalkd</application>">
 <!ENTITY % addindex "IGNORE">
 <![ %addindex; [ <!ENTITY docindex SYSTEM "docindex.docbook"> ]]>
]>
<book lang="pt-BR">
<bookinfo>
<title>Manual do KTalkd</title>
<authorgroup>
<author>
<firstname>David</firstname>
<surname>Faure</surname>
<affiliation>
<address><email><ulink url="mailto:David.Faure@insa-lyon.fr">David.Faure@insa-lyon.fr</ulink></email></address>
</affiliation>
</author>
</authorgroup>
<date>Versão 0.8.1, 02 Agosto 1998</date>
<releaseinfo><!-- information about this particular version --></releaseinfo>
<abstract>
<para>Este manual descreve o KTalkd versão 0.8.1</para>
<para>The KTalkd Handbook</para><!-- Merge this with the previous paragraph; it comes from <META NAME="description" CONTENT="..."> --></abstract>
<keywordset>
<keyword>KDE</keyword>
<keyword>KTalkd</keyword>
<keyword>talk</keyword>
<keyword>talk daemon</keyword>
</keywordset>
</bookinfo>

<chapter id="introduo">
<title>Introdução</title>

<para><literal remap="tt">Ktalkd</literal> é um aplicativo melhorado de conversação - um programa
que lida com requisições de conversação, anuncia-as e permite a 
você responder. </para>

<para>GLOSSÁRIO: Nestas páginas, se alguém tenta falar com você, então
você é descrito como o "chamado".</para>

<para><literal remap="tt">Ktalkd</literal> tem os seguintes recursos:</para>

<para><variablelist>
<varlistentry>
<term>KDE ou não-KDE</term>
<listitem>
<para>Eis a questão :) Mais seriamente, isto significa que o <literal remap="tt">Ktalkd</literal>
pode ser compilado com ou sem suporte ao KDE.
Para uso sem o KDE, o estágio de compilação detectará se o X ou 
o Qt ou o KDE não está instalado, mas você pode forçar a criação
de um daemon não-KDE se usar a opção de configuração '--without-X'.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Máquina de respostas</term>
<listitem>
<para>Se o chamado não está em linha, ou não responde após o segundo
aviso, a máquina de respostas toma a mensagem e manda-a via e-mail
para o chamado.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Som</term>
<listitem>
<para>Se desejado, um sinal de áudio é emitido com o anúncio.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Anúncio X</term>
<listitem>
<para>Se compilado com o KDE instalado, o Ktalkd usará o 
<emphasis remap="bf">ktalkdlg</emphasis> para fazer o anúncio.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Anúncio em múltiplas telas</term>
<listitem>
<para>Se você está conectado remotamente (por exemplo, com um comando
<literal remap="tt">export DISPLAY=...</literal>), o anúncio do X será feito naquele
display também. Responda onde quiser!</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Passar adiante  <emphasis remap="it">(Novo na versão 0.8.0 !)</emphasis></term>
<listitem>
<para>Você pode orientar o sistema para passar a mensagem adiante para outro
usuário, até mesmo para outra máquina. Há três métodos diferentes de
passagem adiante. Veja a seção 'Uso'.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Configuração</term>
<listitem>
<para>Se compilado para o KDE, ele lê a configuração dos arquivos próprios do
KDE. O arquivo de configuração geral da máquina tem de ser editado
manualmente pelo administrador, mas para a configuração do usuário há uma
janela de diálogo, chamada <emphasis remap="bf">kcmktalkd</emphasis>, que pode ser econtrada
no Centro de Controle do KDE após a instalação do <literal remap="tt">ktalkd</literal>.
Em sistemas não-KDE, o <literal remap="tt">Ktalkd</literal> lerá <literal remap="tt">/etc/talkd.conf</literal>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Internacionalização</term>
<listitem>
<para>Sob o KDE, o anúncio será feito em seu idioma nativo, desde que
você configure-o como o idioma padrão no Centro de Controle,  
e que alguém tenha traduzido o <emphasis remap="bf">ktalkdlg</emphasis> para seu idioma.
O mesmo vale para a tela de configuração, <emphasis remap="bf">kcmktalkd</emphasis>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Suporte para otalk e ntalk   <emphasis remap="it">(Versão 0.8.1)</emphasis></term>
<listitem>
<para>O ktalkd suporta os dois protocolos, bem como ktalk.</para>
</listitem>
</varlistentry>
</variablelist>
</para>

<para>Espero que você goste deste daemon de conversação.</para>

<para>David Faure</para>

<para><ulink url="mailto:David.Faure@insa-lyon.fr">David.Faure@insa-lyon.fr</ulink></para>
</chapter>

<chapter id="plataformas-suportadas">
<title>Plataformas suportadas</title>

<para><variablelist>
<varlistentry>
<term>RedHat Linux 5.0</term>
<listitem>
<para>Minha plataforma de desenvolvimento. Totalmente testado nela.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Outros Linux, BSD</term>
<listitem>
<para>Deve compilar e rodar sem problemas.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Solaris</term>
<listitem>
<para>Não funcionará até que alguém crie um substituto para <literal remap="tt">snprintf</literal>.
É claro, alguém pode conseguir instalar outra biblioteca C para resolver
isso...</para>
</listitem>
</varlistentry>
<varlistentry>
<term>AIX</term>
<listitem>
<para>Ouvi falar sobre problemas com <literal remap="tt">localtime</literal>, <literal remap="tt">ctime</literal> e funções
relacionadas.</para>
</listitem>
</varlistentry>
</variablelist>
</para>

<para>Eu ficaria feliz em receber comentários sobre compilação e instalaçao
do <literal remap="tt">ktalkd</literal> nestes e noutros sistemas.</para>
</chapter>

<chapter id="instalao">
<title>Instalação</title>

<sect1 id="como-obter-o-ktalkd">
<title>Como obter o KTalkd</title>

<para>O <literal remap="tt">ktalkd</literal> é uma aplicação-base (pacote <emphasis remap="bf">kdenetwork</emphasis>)
do projeto KDE <ulink url="http://www.kde.org">http://www.kde.org</ulink>. Portanto, se você já
instalou o pacote <emphasis remap="bf">kdenetwork</emphasis>, já tem o Ktalkd e não precisará seguir
alguns dos passos abaixo.</para>

<para>Você pode obter o <literal remap="tt">ktalkd</literal> do site FTP primário do projeto KDE,
<ulink url="ftp://ftp.kde.org/pub/kde">ftp://ftp.kde.org/pub/kde</ulink>, ou de um de seus espelhos.</para>
</sect1>

<sect1 id="pr-requisitos">
<title>Pré-requisitos</title>

<para>Para compilar o <literal remap="tt">ktalkd</literal>, você precisa das versões mais recentes
das bibliotecas KDE bem como a biblioteca Qt. Todas elas bem como
o KTalkd em si podem ser encontradas em 
<ulink url="ftp://ftp.kde.org/pub/kde/">ftp://ftp.kde.org/pub/kde/</ulink>.</para>
</sect1>

<sect1 id="compilao-e-instalao">
<title>Compilação e Instalação</title>

<para>Para compilar e instalar o <literal remap="tt">ktalkd</literal> em seu sistema, digite o 
seguinte no diretório-base da distribuição do <literal remap="tt">kdtalkd:</literal></para>

<para><screen>% ./configure
% make
% make install
</screen>
</para>

<para>Como o <literal remap="tt">ktalkd</literal> é um daemon (serviço), o comando <literal remap="tt">make install</literal>
requer privilégios de superusuário (root).</para>

<para>Não esqueça de atualizar <literal remap="tt">/etc/inetd.conf</literal>.
Por exemplo, num sistema linux, se o KDE está em /usr/local/kde,
mude as linhas concernentes à talk e ntalk para:
<screen>talk   dgram   udp     wait    root    /usr/sbin/tcpd  /usr/local/kde/bin/kotalkd
ntalk  dgram   udp     wait    root    /usr/sbin/tcpd  /usr/local/kde/bin/ktalkd
</screen>

É fornecido um script que fará essa mudança automaticamente.
Atualize seu arquivos inetd.conf fazendo o seguinte:
<screen>% ./post-install.sh
</screen>

De qualquer forma, você precisará <emphasis remap="bf">reiniciar o inetd</emphasis>:
Na maioria dos sitemas Linux, faça:
<screen>% killall -HUP inetd
</screen>
</para>

<para>Informe sobre quaisquer modificações no roteiro acima para fazer
o <literal remap="tt">ktalkd</literal> funcionar em sua plataforma.</para>
</sect1>
</chapter>

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

<para>Não há muito o que dizer sobre o ktalkd: é um daemon. Ele não tem
interface de usuário.</para>

<para>A tela de anúncio é trivial: responder ou ignorar.</para>

<para>A janela de configuração é muito simples, exceto para configurar
a passagem adiante para outro usuário (ou mesmo para outra máquina).</para>

<sect1 id="escolhendo-um-mtodo-de-passagem-adiante">
<title>Escolhendo um método de passagem adiante</title>

<para>Nenhum é perfeito, todos têm prós (+) e contras (-).</para>

<para><emphasis remap="bf">FWA</emphasis> : Passar adiante somente o anúncio. Conexão direta. 
Não recomendado.
<itemizedlist>
<listitem>
<para>       (+) Você sabe quem é o chamador, mas</para>
</listitem>
<listitem>
<para>       (-) O chamador terá que responder a um anúncio seu. </para>
</listitem>
<listitem>
<para>       (-) Não use esta opção se você tem uma máquina de resposta
automática em sua localização remota. A máquina de resposta não pode responder
a um anúncio.</para>
</listitem>
</itemizedlist>
</para>

<para><emphasis remap="bf">FWR</emphasis> : Passar adiante todas as requisições, mudando as informações
quando necessário. Conexão direta.
<itemizedlist>
<listitem>
<para>       (+) Chamador não saberá que você está falando de longe, mas</para>
</listitem>
<listitem>
<para>       (-) Você não saberá quem é exatamente o chamador, saberá apenas
seu nome de usuário.
(então você veria "falando de Wintalk@my&lowbar;host")</para>
</listitem>
</itemizedlist>
</para>

<para><emphasis remap="bf">FWT</emphasis> : Passar adiante todas as requisições e tomar conta da
conversa. Sem conexão direta.
<itemizedlist>
<listitem>
<para>       (+) O mesmo de antes, mas funciona também se você e o chamador
não podem conectar-se diretamente (exemplo: firewall).</para>
</listitem>
<listitem>
<para>       (+) Você será avisado sobre quem realmente está falando quando
aceitar a ligação.</para>
</listitem>
<listitem>
<para>       (-) Mas assim como no modo FWR, você não saberá o nome da
máquina do interlocutor já no anúncio.</para>
</listitem>
</itemizedlist>
</para>

<para>Para resumir, use <emphasis remap="bf">FWT</emphasis> se você estiver atrás de um firewall (e se
KTalkd pode acessar ambas as redes), e <emphasis remap="bf">FWR</emphasis> nos outros casos.</para>
</sect1>
</chapter>

<chapter id="perguntas-e-respostas">
<title>Perguntas e respostas</title>

<sect1 id="porque-o-superusurio-root-no-recebe-anncios-">
<title>Porque o superusuário (root) não recebe anúncios do KDE ?</title>

<para>Por que isso seria uma falha de segurança, dada a forma corrente de
detecção do usuário. Você pode eliminar essa limitação adicionando
duas linhas nos arquivos de configuração do xdm (que são os mesmos
do kdm).</para>

<para>Estes arquivos de configuração estão localizados no diretório
<literal remap="tt">/etc/X11/xdm</literal> ou <literal remap="tt">/usr/X11R6/lib/X11/xdm</literal>.
A instrução a seguir supõe que estejam em /etc/X11/xdm, portanto
você terá que convertê-la se seus arquivos estiverem em outro
diretório.</para>

<para>Eis o que você deve fazer:
Editar o arquivo <literal remap="tt">Xstartup</literal>, ou criá-lo (no diretório de
configuração do xdm) de modo que contenha:
<screen>#!/bin/sh
/etc/X11/xdm/GiveConsole
sessreg -a -l $DISPLAY -x /etc/X11/xdm/Xservers $USER
</screen>
</para>

<para>e o arquivo Xreset de modo que contenha:
<screen>#!/bin/sh
/etc/X11/xdm/TakeConsole
sessreg -d -l $DISPLAY $USER   
</screen>
</para>

<para>Tenha certeza de que <emphasis remap="bf">xdm-config</emphasis> faça referência a
esses dois arquivos:</para>

<para><screen>DisplayManager._0.startup:      /etc/X11/xdm/Xstartup
DisplayManager._0.reset:        /etc/X11/xdm/Xreset 
</screen>
</para>

<para>Isto fará o kdm (ou o xdm) 'logar' o usuário junto ao utmp, que é
a coisa certa a fazer. Não é correto logar via kvt ou xterm, mas
sim via xdm e kdm, em minha opinião. No entanto, isto não fará
o usuário identificar-se se a rotina <literal remap="tt">startx</literal> for usada ...
Alguma idéia sobre isso ?</para>
</sect1>

<sect1 id="por-que-eu-como-usurio-normal-recebo-anncios">
<title>Por que eu, como usuário normal, recebo anúncios do KDE ?</title>

<para>Se você está usando um sistema Linux (com /proc habilitado) é uma
falha. Mande-me a descrição do problema que eu corrijo-o. </para>

<para>Do contrário, é normal: se o ktalkd não pode encontrar o usuário,
o KDE não 'loga' o mesmo junto ao utmp e a deteção baseada
no Linux (/proc) é desligada. A solução é a mesma da seção 5.1,
desde que você use <emphasis>kdm</emphasis> ou <emphasis>xdm</emphasis> para fazer o login dentro
do X.</para>
</sect1>

<sect1 id="como-posso-obter-informaes-de-depurao-do-kta">
<title>Como posso obter informações de depuração do ktalkd ?</title>

<para>Por ser um daemon, não há saida de depuração na saída padrão. Para
obter as mensagens de depuração (por exemplo, antes de relatar-me
um problema!), atualize as linhas em <literal remap="tt">/etc/inetd.conf</literal> que
executam <emphasis>ktalkd</emphasis> e <emphasis>kotalkd</emphasis>:
<screen>talk   dgram   udp     wait    root    /usr/sbin/tcpd  /usr/local/kde/bin/kotalkd -d
ntalk  dgram   udp     wait    root    /usr/sbin/tcpd  /usr/local/kde/bin/ktalkd -d
</screen>

(note a opção <emphasis remap="bf">-d</emphasis>)</para>

<para>Então edite <literal remap="tt">/etc/syslog.conf</literal> para adicionar a seguinte linha:
<screen>*.*         /var/log/all_messages
</screen>
</para>

<para>Para fazê-lo funcionar, você tem de reiniciar <emphasis>inetd</emphasis> e
<emphasis>syslogd</emphasis>:
<screen>% killall -HUP inetd
% killall -HUP syslogd
</screen>

Finalmente, entre numa sessão de conversa e veja o resultado
em <literal remap="tt">/var/log/all&lowbar;messages</literal>.</para>
</sect1>
</chapter>

<chapter id="copyright">
<title>Copyright</title>

<para>O Ktalkd é mantido e melhorado por 
David Faure, David.Faure@insa-lyon.fr</para>

<para>O programa original foi escrito por
Robert Cimrman, cimrman3@students.zcu.cz</para>

<para><screen>ktalkd Copyright 1997,1998 David Faure David.Faure@insa-lyon.fr

Este programa é software gratuito; você pode redistribuí-lo e/ou
modificá-lo sob os  termos  da  GNU General Public License  como
publicado  pela Free Software Foundation;  qualquer uma das duas
versões de Licença, ou (em sua opinião) alguma versão anterior.

Este  programa é distribuído com  a esperança de que seja  útil,
mas SEM NENHUMA GARANTIA;  sem conformidade com implicações    e
garantias de ACEITAÇÃO NO MERCADO  ou  AJUSTES  PARA  PROPÓSITOS
PARTICULARES.   Veja  a  GNU  General  Public License para  mais
detalhes.

Você  deveria  ter  recebido  uma  cópia  da GNU  General Public
License junto com este programa; se não recebeu, escreva para  a
Free   Software  Foundation,  Inc.,   675  Mass Ave,  Cambridge, 
MA 02139, USA.

</screen>
</para>
</chapter>
<![ %addindex; [ &docindex; ]]>
</book>
<!--
Local Variables:
mode: sgml
sgml-omittag: nil
sgml-shorttag: t
sgml-general-insert-case: lower
End:
-->
