<chapter id="dialog-setup">
<title
>Configurando uma conexão com os diálogos</title>

<para
>Configurar uma conexão baseando-se no diálogo de configuração não é muito mais difícil que usar o assistente.</para>

<para
>Você pode acessar o diálogo de configuração da mesma maneira que você fez para o assistente. Inicie o &kppp; a partir do menu <guimenu
>K</guimenu
>, onde você encontrará sua entrada no submenu <guisubmenu
>Internet</guisubmenu
> como <guimenuitem
>Discador Internet</guimenuitem
>.</para>

<para
>O seguinte diálogo aparecerá:</para>

<screenshot>
<screeninfo
>A tela inicial do discador &kppp;</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="kppp-dialler-tab.png" format="PNG"/>
</imageobject>
<textobject
><phrase
>A tela inicial do discador &kppp;</phrase>
</textobject>
<caption
><para
>A tela inicial do discador &kppp;</para
></caption>
</mediaobject>
</screenshot>

<para
>Não haverá provavelmente nenhum entrada inicial, e é isto que nós iremos fazer agora.</para>

<para
>Clique no botão <guibutton
>Configurar</guibutton
> para abrir a janela <guilabel
>Configuração do &kppp;</guilabel
>. Na aba <guilabel
>Contas</guilabel
> selecione <guilabel
>Nova...</guilabel
> para iniciar a configuração de uma nova conexão Internet.</para>

<para
>Desta vez, selecione <guilabel
>Configuração manual</guilabel
> e você verá o seguinte Diálogo aparecer:</para>

<screenshot>
<screeninfo
>O Diálogo <guilabel
>Nova Conta</guilabel
></screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="kppp-account-dial-tab.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>O Diálogo <guilabel
>Nova Conta</guilabel
></phrase>
</textobject>
<caption>
<para
>O Diálogo <guilabel
>Nova Conta</guilabel
></para>
</caption>
</mediaobject>
</screenshot>

<!-- Make a screenshot of the actual new Account Dialog with no entries -->

<para
>O diálogo <guilabel
>Nova Conta</guilabel
> contém as seguintes seções:</para>

<itemizedlist>
<listitem>
<para
><link linkend="account-dial"
><guilabel
>Discar</guilabel
></link
></para>
</listitem>
<listitem>
<para
><link linkend="account-ip"
><guilabel
>IP</guilabel
></link
></para>
</listitem>
<listitem>
<para
><link linkend="account-gateway"
><guilabel
>Gateway</guilabel
></link
></para>
</listitem>
<listitem>
<para
><link linkend="account-dns"
><guilabel
>DNS</guilabel
></link
></para>
</listitem>
<listitem>
<para
><link linkend="account-login-script"
><guilabel
>Script de Login</guilabel
></link
></para>
</listitem>
<listitem>
<para
><link linkend="account-execute"
><guilabel
>Executar</guilabel
></link
></para>
</listitem>
<listitem>
<para
><link
linkend="account-accounting"
><guilabel
>Contabilidade</guilabel
></link
></para>
</listitem>
</itemizedlist>

<para
>Você normalmente não precisará preencher todos eles, apesar de cada um deles estar descrito nas seções a seguir.</para>

<sect1 id="account-dial">
<title
>A aba Discar</title>

<screenshot>
<screeninfo
>A aba <guilabel
>Ligar</guilabel
> da Conta</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="kppp-account-dial-tab.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>A aba <guilabel
>Ligar</guilabel
> da Conta</phrase>
</textobject>
<caption
><para
>A aba <guilabel
>Ligar</guilabel
> da Conta</para>
</caption>
</mediaobject>
</screenshot>

<para
>A aba <guilabel
>Ligar</guilabel
> possui as seguintes opções:</para>

<variablelist>
<varlistentry>
<term
><guilabel
>Nome da Conexão:</guilabel
></term>
<listitem>
<para
>Você deve fornecer um nome para a conta. Ele pode ser qualquer coisa que desejar, mas se você tiver mais de uma conta, cada nome deve ser único.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Número do Telefone:</guilabel
></term>
<listitem>
<para
>Especifique o número de telefone a discar. Você poderá usar caracteres como o <quote
>-</quote
> para tornar o número mais legível. Se você concatenar uma série de números separados por dois pontos (&eg; <userinput
>1111111:2222222:3333333</userinput
>, o &kppp; irá tentar cada um destes números logo que o anterior tenha recebido um sinal de ocupado. Você poderá usar o botão <guibutton
>Adicionar</guibutton
> para adicionar outro número, o <guibutton
>Remover</guibutton
> para remover um número da lista, e as setas <guiicon
>cima</guiicon
> e <guiicon
>baixo</guiicon
> para alterar a ordem da lista.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Autenticação</guilabel
></term>
<listitem>
<para
>Selecione o método apropriado de autenticação que o &kppp; deve usar para logar-se no servidor. Consulte seu provedor para mais informações. Use o <acronym
>PAP</acronym
> e <acronym
>CHAP</acronym
> conforme descrito no capítulo <xref linkend="chap-and-pap"/>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Guardar senha</guilabel
></term>
<listitem>
<para
>Habilite esta opção se deseja que o &kppp; lembre-se de sua senha entre sessões.</para>
</listitem>
</varlistentry>
<!-- missing
Callback type None, Administrator-defined, User-defined
Callback number
 -->
<varlistentry>
<term
><guibutton
>Personalizar argumentos pppd...</guibutton
></term>
<listitem>
<para
>Isto levantará o diálogo de argumentos do <application
>pppd</application
>. Você pode usar este diálogo para adicionar qualquer opção desejada que você queira que o &kppp; envie para o <application
>pppd</application
>. Veja na página de manual do <application
>pppd</application
> uma lista das opções disponíveis, mas a menos que você saiba exatamente o que está fazendo, você provavelmente se restringirá a deixar os padrões.</para>
</listitem>
</varlistentry>
</variablelist>

</sect1>

<sect1 id="account-ip">
<title
>A aba IP</title>

<screenshot>
<screeninfo
>A aba <guilabel
>IP</guilabel
> da Conta</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="kppp-account-ip-tab.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>A aba <guilabel
>IP</guilabel
> da Conta</phrase>
</textobject>
<caption
><para
>A aba <guilabel
>IP</guilabel
> da Conta</para>
</caption>
</mediaobject>
</screenshot>

<variablelist>
<varlistentry>
<term
><guilabel
>Endereço IP Dinâmico</guilabel
></term>
<listitem>
<para
>Habilite isto se seu <acronym
>ISP</acronym
> (do inglês, Provedor de Serviço Internet), usa atribuição dinâmica de endereço <acronym
>IP</acronym
>. Neste caso, seu endereço <acronym
>IP</acronym
> mudará cada vez que você estabelecer uma conexão.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Endereço IP Estático</guilabel
></term>
<listitem>
<para
>Habilite isto se seu <acronym
>ISP</acronym
> lhe forneceu um endereço <acronym
>IP</acronym
> estático. Neste caso você também precisará preencher este endereço na caixa <guilabel
>Endereço IP</guilabel
>, e qualquer <guilabel
>Máscara de Sub-rede</guilabel
>, se aplicável. Consulte seu <acronym
>ISP</acronym
> para tirar dúvidas sobre isto. Endereços atribuídos dinamicamente são usados na grande maioria dos <acronym
>ISP</acronym
> e deixar esta opção selecionada será a escolha certa na maioria dos casos.</para>
</listitem>
</varlistentry>
<varlistentry id="auto-configure-hostname">
<term
><guilabel
>Configurar automaticamente o nome de máquina a partir deste IP</guilabel
></term>
<listitem>
<para
>Selecione esta opção se você deseja que o &kppp; configure o nome de máquina e de domínio para seu computador após uma conexão <acronym
>ppp</acronym
> bem sucedida.</para>
<para
>Isto é feito consultando o Servidor de Nomes do Domínio com o <acronym
>IP</acronym
> atribuído pela ligação <acronym
>ppp</acronym
>.</para>
<para
>Esta opção é útil para aquelas máquinas que desejam usar protocolos como o talk, que necessita de o nome da sua máquina seja conhecido na Internet. Isto sobrepõe-se a opção <guilabel
>Nome de Domínio</guilabel
> na seção <guilabel
>DNS</guilabel
>, e os padrões da máquina são restaurados aos seus valores originais quando você encerrar a conexão <acronym
>ppp</acronym
>.</para>
<para
>Esta opção <emphasis
>não</emphasis
> é útil se você apenas deseja conectar à Internet e surfar, verificar e-mail, ou bater um papo. Ele tem um efeito colateral de desabilitar qualquer nova conexão ao seu servidor X - em outras palavras, você não poderá abrir nenhum programa <acronym
>GUI</acronym
> a mais.</para>
<para
>Somente habilite esta opção se estiver absolutamente certo de sua necessidade.</para>
</listitem>
</varlistentry>
</variablelist>

</sect1>

<sect1 id="account-gateway">
<title
>A aba Gateway</title>

<screenshot>
<screeninfo
>A aba <guilabel
>Gateway</guilabel
> da Conta</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="kppp-account-gateway-tab.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>A aba <guilabel
>Gateway</guilabel
> da Conta</phrase>
</textobject>
<caption
><para
>A aba <guilabel
>Gateway</guilabel
> da Conta</para>
</caption>
</mediaobject>
</screenshot>

<variablelist>
<varlistentry>
<term
><guilabel
>Gateway Padrão</guilabel
></term>
<listitem>
<para
>Habilite esta opção se você deseja que o <application
>pppd</application
> use o Gateway padrão para sua máquina. Isto é o padrão.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Gateway Estático</guilabel
></term>
<listitem>
<para
>Habilite isto se deseja especificar o Gateway a ser usado no lugar do padrão.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Atribui a Rota Padrão para este Gateway</guilabel
></term>
<listitem>
<para
>Você quase certamente precisará que isto seja habilitado (o padrão).</para>
</listitem>
</varlistentry>
</variablelist>

</sect1>

<sect1 id="account-dns">
<title
>A aba DNS</title>

<screenshot>
<screeninfo
>A aba <guilabel
>DNS</guilabel
> da Conta</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="kppp-account-dns-tab.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>A aba <guilabel
>DNS</guilabel
> da Conta</phrase>
</textobject>
<caption
><para
>A aba <guilabel
>DNS</guilabel
> da Conta</para>
</caption>
</mediaobject>
</screenshot>

<variablelist>
<varlistentry>
<term
><guilabel
>Nome do Domínio:</guilabel
></term>
<listitem>
<para
>Especifique o nome de domínio para sua máquina. Assim como os endereços de <acronym
>DNS</acronym
>, ele é restaurado ao original especificado no <filename
>/etc/resolv.conf</filename
> quando o conexão se encerra. Se isto for deixado em branco, nenhuma mudança será feita no nome de domínio especificado no <filename
>/etc/resolv.conf</filename
></para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Configuração:</guilabel
></term>
<listitem>
<para
>Escolha entre <guilabel
>Automática</guilabel
> (o <acronym
>ISP</acronym
> automaticamente enviará seus endereços de servidor <acronym
>DNS</acronym
> ao conectar-se) e <guilabel
>Manual</guilabel
>. Se você escolher manual, a seção <guilabel
>Endereço IP do DNS</guilabel
> é então habilitada.</para
> 
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Endereço IP do DNS</guilabel
></term>
<listitem>
<para
>Esta seção somente será habilitada se você selecionar <guilabel
>Manual</guilabel
> na opção anterior. Adicione os Servidores de Nomes do Domínio atribuídos pelo seu <acronym
>ISP</acronym
>. Você deve especificar pelo menos um Servidor de Nomes do Domínio para que seu <acronym
>SO</acronym
> seja capaz de resolver os endereços <acronym
>IP</acronym
> para algo legível por nós como <systemitem
>ftp.kde.org</systemitem
>. O endereço do servidor <acronym
>DNS</acronym
> fornecido deve estar na forma numérica, &eg; <systemitem
>128.231.231.233</systemitem
>. Estes endereços serão adicionados em tempo de execução ao <filename
>/etc/resolv.conf</filename
>.</para
> 
<para
>Escolha o botão <guibutton
>Adicionar</guibutton
> para adicionar um novo endereço de servidor <acronym
>DNS</acronym
> à caixa de listagem abaixo. Selecione <guibutton
>Remover</guibutton
> para remover uma entrada da lista.</para
> 
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Desabilitar Servidores DNS existentes durante a Conexão</guilabel
></term>
<listitem>
<para
>Se você habilitar esta caixa, qualquer servidor <acronym
>DNS</acronym
> listado no <filename
>/etc/resolv.conf</filename
> será desabilitado enquanto a conexão estiver ativa.</para>
</listitem>
</varlistentry>
</variablelist>

</sect1>

<sect1 id="account-login-script">
<title
>A aba do Script de Login</title>

<screenshot>
<screeninfo
>A aba <guilabel
>Script de Login</guilabel
> da Conta</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="kppp-account-login-script-tab.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>A aba <guilabel
>Script de Login</guilabel
> da Conta</phrase>
</textobject>
<caption
><para
>A aba <guilabel
>Script de Login</guilabel
> da Conta</para>
</caption>
</mediaobject>
</screenshot>

<para
>Use este diálogo para criar um roteiro de discagem para sua conexão discada com o <acronym
>ISP</acronym
>. Você pode usar o mini-terminal e as informações fornecidas pelo seu <acronym
>ISP</acronym
> para descobrir a sequência de ações que devem ser executadas.</para>

<para
>Escolha uma opção a partir da caixa combinada à esquerda, e então adicione qualquer parâmetro para esta ação na caixa de edição à direita. Use <guibutton
>Adicionar</guibutton
> para adicionar cada entrada à <emphasis
>base</emphasis
> do script, que é exibida na parte inferior do diálogo. Use <guibutton
>Inserir</guibutton
> para inserir uma entrada em qualquer ponto do script, e use <guibutton
>Remover</guibutton
> para excluir uma linha do script.</para>

<para
>As opções disponíveis são:</para>

<variablelist>
<varlistentry>
<term
><guilabel
>Expect</guilabel
></term>
<listitem>
<para
>O &kppp; esperará até que o texto especificado seja recebido.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Send</guilabel
></term>
<listitem>
<para
>O &kppp; enviará o texto especificado.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Scan</guilabel
></term>
<listitem>
<para
>O &kppp; pesquisará no fluxo de entrada por um texto especificado, e armazenará qualquer caracter a partir do final do texto até o final da linha, em um buffer interno. Espaços em branco antes e depois serão removidos.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Save</guilabel
></term>
<listitem>
<para
>Armazena permanentemente o texto anteriormente guardado no registrador especificado. Atualmente o único registrador válido é <varname
>password</varname
> (senha).</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Pausar (seg)</guilabel
></term>
<listitem>
<para
>Para pelo número especificado de segundos.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Hangup</guilabel
></term>
<listitem>
<para
>O &kppp; enviará um <command
>hangup</command
> para o modem (desliga o telefone).</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Resposta</guilabel
></term>
<listitem>
<para
>O &kppp; configurará o modem para o modo resposta.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Timeout (seg)</guilabel
></term>
<listitem>
<para
>Muda dinamicamente o tempo de espera padrão para o número especificado de segundos durante o roteiro. Você pode mudar o tempo de espera diversas vezes durante a execução do roteiro se necessário.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Prompt</guilabel
></term>
<listitem>
<para
>Pede ao usuário do &kppp; para inserir um texto, fornecendo o texto especificado como uma dica. O usuário verá o que está sendo digitado. Se o texto especifica incluir a marca <userinput
>##</userinput
>, a marca será substituída com o conteúdo atual do buffer interno armazenado, conforme feito previamente com o comando <guilabel
>scan</guilabel
>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>PWPrompt</guilabel
></term>
<listitem>
<para
>Pede ao usuário do &kppp; para inserir um texto, fornecendo o texto especificado como uma dica. Um asterisco será impresso para cada caracter que o usuário digitar.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>ID</guilabel
></term>
<listitem>
<para
>Se o campo do <guilabel
>ID de Login</guilabel
> no diálogo principal do &kppp; estiver preenchido, envia este <acronym
>ID</acronym
>. Se o campo do <guilabel
>ID de Login</guilabel
> não estiver preenchido, pede que o usuário do &kppp; insira um <acronym
>ID</acronym
>, fornecendo o texto especificado como uma dica. O usuário verá o que está sendo digitado. Em um segundo passo, como em um loop numa segunda interação, ou durante a autenticação de chamada de retorno, o pedido será exibido a menos que o campo de <guilabel
>ID de Login</guilabel
> esteja preenchido.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Password</guilabel
></term>
<listitem>
<para
>Se o campo <guilabel
>Senha</guilabel
> do diálogo principal do &kppp; estiver preenchido, envia esta senha. Se o campo <guilabel
>Senha</guilabel
> não estiver preenchido, pede que o usuário do &kppp; insira um texto, com o texto especificado como uma dica. Um asterisco será impresso para cada caracter digitado. Em um segundo passo, como em um loop em uma segunda interação, ou durante a autenticação de chamada de retorno, a pedido será exibido a menos que o campo <guilabel
>Senha</guilabel
> esteja preenchido.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>LoopStart</guilabel
></term>
<listitem>
<para
>O &kppp; esperará pelo texto especificado ser recebido. Isto salvará o texto para uso pelo <varname
>LoopEnd</varname
>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>LoopEnd</guilabel
></term>
<listitem>
<para
>O &kppp; esperará pelo texto especificado ser recebido para sair do loop. Se o texto fornecido pelo <varname
>LoopStart</varname
> correspondente for recebido primeiro, ele irá disparar um salto para a linha após o <varname
>LoopStart</varname
>, habilitando a repetição dos diálogos emparelhados de usuário/senha.</para>
</listitem>
</varlistentry>
</variablelist>

<sect2>
<title
>Roteiros Exemplo</title>

<example>
<title
>Um simples exemplo de roteiro de login</title>
<para
>Aqui está um exemplo simples de roteiro que eu poderia usar para conectar ao meu <acronym
>ISP</acronym
></para>

<screen
>Expect      ID:                        <lineannotation
># espera pelo ID:</lineannotation>
 Send        meuid                       <lineannotation
># você deve substituir meuid pelo seu id</lineannotation>
 Expect      word:                      <lineannotation
># espera por 'password'</lineannotation>
 Send        4u3fjkl                    <lineannotation
># envia minha senha 4u3fjkl'</lineannotation>
 Expect      granted                    <lineannotation
># Meu ISP enviou a Permissão de acesso no login bem sucedido.</lineannotation>
 Send        ppp                        <lineannotation
># Isto inicia uma conexão ppp
                                        # no lado do ISP.</lineannotation
>
</screen>

</example>

<example>
<title
>Um roteiro de login que pede por um ID e senha, e possui loops.</title>

<para
>Aqui está um roteiro para a mesma conta com um pedido de <acronym
>ID</acronym
> e senha. Este roteiro pedirá pelo <acronym
>ID</acronym
> e senha toda vez, não importa o que tenha sido digitado nos campos <guilabel
>ID de Login</guilabel
> e <guilabel
>Senha</guilabel
> na tela principal do &kppp;.</para>

<para
>Este roteiro também ilustra o uso da estrutura LoopStart/LoopEnd. Se alguma coisa der errado durante o procedimento de login, por exemplo, eu errei a senha, meu <acronym
>ISP</acronym
> imprimirá uma mensagem de erro e reiniciará o loop id/senha enviando o texto <computeroutput
>ID:</computeroutput
> novamente. Se o texto <computeroutput
>ID:</computeroutput
> é capturado antes da chave LoopEnd ser analisada, o &kppp; iniciará o roteiro novamente, a partir da linha após a chave LoopStart.</para>

<screen
>LoopStart   ID:                        <lineannotation
># espera por ID:</lineannotation>
 Prompt      Inserir ID:                  <lineannotation
># Pede por minha ID e envia-a.</lineannotation>
 Expect      word:                      <lineannotation
># espera por 'password'</lineannotation>
 PWPrompt    Insira Senha:            <lineannotation
># Pede por minha senha e envia-a.</lineannotation>
 LoopEnd     granted                    <lineannotation
>#Meu ISP enviou a Permissão de acesso no login bem sucedido.</lineannotation>
 Send        ppp                        <lineannotation
># Isto inicia a conexão ppp para mim</lineannotation
>
</screen>
</example>

<example>
<title
>Pede por informações não preenchida no diálogo principal.</title>

<para
>Aqui está um roteiro que eu uso atualmente para conectar ao meu <acronym
>ISP</acronym
>. Este roteiro pedirá pelo <acronym
>ID</acronym
> e senha somente se eu não tiver preenchido estes dados nos respectivos campos do diálogo principal do &kppp;.</para>

<screen
>LoopStart   ID:                        <lineannotation
># espera por ID:</lineannotation>
 ID          Inserir ID:                  <lineannotation
># Pede por minha ID e envia-a.</lineannotation>
 Expect      word:                      <lineannotation
># espera por 'password'</lineannotation>
 Password    Inserir Password             <lineannotation
># Pede por minha senha e envia-a.</lineannotation>
 LoopEnd     granted                    <lineannotation
>#Meu ISP enviou a Permissão de acesso no login bem sucedido.</lineannotation>
 Send        ppp                        <lineannotation
># Isto inicia uma conexão ppp para mim</lineannotation>
                                        <lineannotation
># no lado do ISP</lineannotation
>
</screen>

</example>

<example>
<title
>Um roteiro para um <acronym
>ISP</acronym
> que usa autenticação charada/resposta.</title>

<para
>Aqui está um roteiro que eu uso para conectar a um <acronym
>ISP</acronym
> que usa algum tipo de autenticação charada/resposta. Normalmente você recebe um tipo de máquina (um pequeno cartão com um mostrador e um teclado tipo calculadora) do <acronym
>ISP</acronym
>. Você deve conhecer uma senha para usar a máquina. Após discar seu <acronym
>ISP</acronym
> exibe sua charada. Você deve digitar a charada em sua máquina para obter a senha dinâmica como uma resposta. Então você insere esta senha.</para>

<screen
>LoopStart   ID:                        <lineannotation
># espera por ID:</lineannotation>
 ID          Inserir ID:                  <lineannotation
># Pede por minha ID e envia-a.</lineannotation>
 Scan        Challenge:                 <lineannotation
># Procura por 'Challenge' e armazena tudo que vier após até o final da linha.</lineannotation>
 Expect      word:                      <lineannotation
># espera por 'password'</lineannotation>
 Prompt      Sua charada é ## - Insira a Senha  <lineannotation
># Pede por minha senha e envia-a.</lineannotation>
 LoopEnd     granted                    <lineannotation
>#Meu ISP enviou a Permissão de acesso no login bem sucedido.</lineannotation>
 Send        ppp                        <lineannotation
># Isto inicia uma conexão ppp para mim
                                        # no lado do ISP</lineannotation
>
</screen>
</example>

<example>
<title
>Usando Scan e Save em roteiros</title>

<para
>O seguinte registro mostra o procedimento de login de um <acronym
>ISP</acronym
> fictício que fornece uma nova senha para cada login. A nova senha deve ser verificada e salva para a próxima sessão. </para>

<screen
>Universidade da Terra do Nunca
 
 Login:meulogin
 Password: 
 A senha para sua próxima sessão é: YLeLfkZb
 Por favor grave e insira-a para verificação.
 Verificação:YLeLfkZb
 
 1 = telnet
 2 = SLIP
 3 = PPP
 
 Sua escolha:
</screen>

<para
>O &kppp; pode ser usado para fazer esta tarefa incômoda para você, eliminando o risco de perder aquele pequeno pedaço de papel que contém sua senha atual. A parte chave do roteiro a seguir é a combinação das chaves Scan/Save.</para>

<screen
> Expect      Login:                     <lineannotation
># espera pelo pedido de login</lineannotation>
 ID                                     <lineannotation
># envia ID</lineannotation>
 Expect      Password:                  <lineannotation
># espera pelo pedido de password</lineannotation>
 Password                               <lineannotation
># envia a senha</lineannotation>
 Scan        é:                        <lineannotation
># espera por '... próxima sessão é:' e
                                        # busca a senha informada</lineannotation>
 Save        password                   <lineannotation
># salva a nova senha para o próximo login</lineannotation>
 Expect      Verificação:              <lineannotation
># espera por 'Verificação:'</lineannotation>
 Password                               <lineannotation
># envia nova senha</lineannotation>
 Expect      escolha:                    <lineannotation
># espera pelo pedido da sua escolha</lineannotation>
                                        <lineannotation
># entre as diferentes opções (telnet, SLIP, PPP)</lineannotation>
 Send        3                          <lineannotation
># seleciona a opção 3, isto é, PPP</lineannotation
>
</screen>
</example>

</sect2>

</sect1>

<sect1 id="account-execute">
<title
>A aba Executar</title>

<screenshot>
<screeninfo
>A aba <guilabel
>Executar</guilabel
> da Conta</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="kppp-account-execute-tab.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>A aba <guilabel
>Executar</guilabel
> da Conta</phrase>
</textobject>
<caption
><para
>A aba <guilabel
>Executar</guilabel
> da Conta</para>
</caption>
</mediaobject>
</screenshot>

<para
>Aqui você pode selecionar comandos a serem executados em determinados estágios da conexão. Estes comandos são executados com o id do usuário real, de modo que você não pode rodar qualquer comando que necessite de permissões de root, ao menos que, é claro, você esteja discando como root (uma má ideia por diversas razões!)</para>

<para
>Certifique-se de fornecer todo o caminho para o programa, caso contrário o &kppp; não será capaz de encontrá-lo.</para>

<para
>Você pode adicionar comandos a serem executados em quatro momentos distintos durante o processo de conexão:</para>

<variablelist>
<varlistentry>
<term
><guilabel
>Antes da conexão</guilabel
></term>
<listitem>
<para
>Executa este comando antes da discagem iniciar, logo ele já estará rodando quando você conectar-se ao seu <acronym
>ISP</acronym
>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Ao Conectar</guilabel
></term>
<listitem>
<para
>Executa este comando somente após uma conexão bem sucedida ser estabelecida.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Antes de Desconectar</guilabel
></term>
<listitem>
<para
>Executa este comando com a conexão ainda ativa, antes de desligar o modem.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Ao Desconectar</guilabel
></term>
<listitem>
<para
>Executa este comando após a conexão ter sido terminada.</para>
</listitem>
</varlistentry>
</variablelist>

<para
>Você pode por exemplo desejar rodar o <application
>leafnode</application
> tão logo tenha se conectado, ou verificar seu e-mail. Você pode desejar certificar-se de que qualquer mensagem eletrônica que esteja na fila de envio seja enviada, antes de fechar sua conexão. Você pode desejar executar um script de <quote
>limpeza</quote
> para arrumar os registros e limpar sua cache após ter desconectado.</para>

</sect1>

<sect1 id="account-accounting">
<title
>A aba Contabilidade</title>

<screenshot>
<screeninfo
>A aba <guilabel
>Contabilidade</guilabel
> da Conta</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="kppp-account-accounting-tab.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>A aba <guilabel
>Contabilidade</guilabel
> da Conta</phrase>
</textobject>
<caption
><para
>A aba <guilabel
>Contabilidade</guilabel
> da Conta</para>
</caption>
</mediaobject>
</screenshot>

<para
>Selecione a caixa <guilabel
>Ativar Contabilidade</guilabel
> para habilitar ou desabilitar a contabilidade de custo telefônico para esta conta.</para>

<para
>Selecione na lista de regras aplicáveis para os provedores de serviços telefônicos.</para>

<para
>Se você não conseguir achar uma, você pode escrevê-la você mesmo copiando o modelo fornecido, que encontrará no <link linkend="appendix-accounting-template"
>apêndice</link
>.</para>

<para
>A opção final nesta página é a <guilabel
>Contabilidade de Volume</guilabel
>, descrita abaixo.</para>

<sect2>
<title
>Contabilidade de Volume</title>

<sect3>
<title
>O que é contabilidade de volume?</title>

<para
>Basicamente, isto significa contabilizar o número de bytes transmitidos para e da Internet. O &kppp; pode contabilizar bytes de chegada, de saída, ou ambos. Isto é em função do que deseja (ou deva) usar.</para>

</sect3>

<sect3>
<title
>Porque eu deveria usar a contabilidade de volume?</title>

<para
>Muitos Provedores de Serviço Internet cobram de seus usuários com base no número de bytes transferidos. É cada vez mais comum <acronym
>ISP</acronym
>s que oferecem uma taxa única para algum limite de transferência arbitrário, e então cobra por cada megabyte acima deste limite. O &kppp; mostra seu volume atual e pode auxiliá-lo a manter sua conta no mínimo. É claro, se você não for taxado com base no volume, você pode ligar a contabilidade de volume apenas para satisfazer sua curiosidade.</para>

</sect3>

<sect3>
<title
>Que tipo de contabilidade de volume eu devo selecionar?</title>

<para
>Isso depende principalmente do seu provedor. Muitos deles só contam quantos 'megabytes' você obteve da Internet, ignorando os que você envia. Nesse caso, você deverá selecionar os <guilabel
>Bytes Recebidos</guilabel
>. Se tiver de pagar por ambos, escolha os <guilabel
>Bytes Recebidos e Enviados</guilabel
>. Os <guilabel
>Bytes Enviados</guilabel
> só estão aqui mesmo para completar as combinações, uma vez que não se conhecem provedores que usem só esta métrica como base de faturação. Poderá ser útil para aqueles que rodam um servidor Web ou de &FTP; em casa, todavia.</para>

</sect3>

<sect3>
<title
>Superestimativa</title>

<para
>Infelizmente, existe um problema na contabilidade de volume. O &kppp; somente contará o número de bytes, independente de sua origem. Muitos provedores configuram seu limite somente para acesso Internet, e não para dados de sua própria rede. Alguns provedores configuram diferentes limites para dados que vem de sua própria rede, no mesmo país, e vindas de outros continentes. Logo, se você está surfando muito na web, e obtendo a maioria de suas páginas a partir da cache do próprio <acronym
>ISP</acronym
>, então o provedor provavelmente não cobrará por estes dados. O &kppp; não saberá que estes pacotes <acronym
>IP</acronym
> vieram do provedor, e então os contabilizará. Logo se esta situação se aplica a você, ou, como outro exemplo, seu provedor usa um servidor de cache de notícias como o <application
>nntpcached</application
>, então o volume relatado pelo &kppp; pode ser maior que a quantidade pela qual está pagando. O lado bom é que, pelo meno, o &kppp; nunca subestimará suas contas.</para>

</sect3>

</sect2>

</sect1>

</chapter>
