• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

psiico

[How To]Instalar & Configurar um Eggdrop

6 mensagens neste tópico

Boas comunidade, eu não tenho grande experiência em Linux mas vou deixar aqui um tutorial

para por a correr um Eggdrop em Linux, é o meu primeiro por isso, não sejam muito duros nas criticas.

É capaz de ter um erro ou outro mas avisem sff e eu corrigo.


Um eggdrop é um bot de IRC extremamente popular. Eggdrops sao escritos em C e tem suporte para scripts que permite a extensão de funções/comandos sob o Eggdrop, estes scripts são escritos em TCL.

Para controlar o mesmo, no seu sistema interno, é usada uma ligação de Telnet para o Eggdrop. Esta ligação normalmente também é possivel através de DCC CHAT nas redes de IRC.

Requesitos:

  • TCL 8.5.2
  • Eggdrop 1.6.19
  • Editor de Texto

Os eggdrops, para interpretar os scrips, precisam de um interpretador de TCL, que tem que ser instalado antes do próprio Eggdrop ou ele nao irá compilar.

Escolher uma pasta de destino para os downloads e a instalação do TCL porque a do Eggdrop, vai ser realizada na pasta /home/ do sistema.

A instalação do TCL, tem que obter privilégios de Super Administrador(root)

Instalação do TCL:

Abrir Terminal:

1º Navegar atraves do comando cd <dir> para a directoria previamente escolhida

2º wget http://prdownloads.sourceforge.net/tcl/tcl8.5.2-src.tar.gz

3º tar -zxvf tcl8.5.2-src.tar.gz

4º cd tcl8.5.2/unix/

5º ./configure ou sudo ./configure

  • Case com ./configure o Terminal retorne o erro: Permition Denied, utilize o sudo ./configure
    porque esse erro significa, falta de privilégios no sistema.

6º make (é extenso as acções deste comando)

7º make install

  • Mais uma vez chamo a atenção, o uso da conta de root na instalação do TCL, para não originar erros de falta de privilégios no sistema.

No fim do comando 'make install' a instalação está concluída, mas é necessário ligar as libraries ao sistema, inserimos o comando: edit /etc/ld.so.conf no Terminal.

e adicionamos a linha:

/usr/local/lib

guardamos e saimos.

Para verificar se está reconhecido e a funcionar correctamente, no Terminal executamos o comando: ldconfig -v e no fim podemos ver que está escrito:

/usr/local/lib:

libtcl8.4.so => libtcl8.4.so

Agora está tudo pronto para passar à segunda parte, que é a instalação do Eggdrop.

Instalação do Eggdrop:

Neste ponto terá que fazer logout de root e fazer login num utilizador comum (sem ser root), devido a questões de segurança

Abrir Terminal:

1º Navegar atraves do comando cd <dir> para a directoria previamente escolhida

2º wget http://www.eggheads.org/redirect.php?url=ftp://ftp.eggheads.org/pub/eggdrop/source/1.6/eggdrop1.6.19.tar.gz

3º tar zxvf eggdrop1.6.19.tar.gz

4º cd eggdrop1.6.19

5º ./configure

6º make config

7º make (bastante grande este também)

8º make install DEST=/home/NOME do user que se encontra loggado/eggdrop/

No fim do comando 'make install DEST=/home/NOME do user que se encontra loggado/eggdrop/' a instalação está concluída.

Configurar o Eggdrop:

Para por o Eggdrop a funcionar temos que o configurar, remover algumas linhas na configuração, etc. Se calhar é mais fácil fazer download dele por FTP e modifica-lo localmente do que remotamente e depois de editado localmente, faz-se novamente upload para o servidor.

1º Navegem até á pasta /home/NOME do user que se encontra loggado/eggdrop/ e lá encontraram um ficheiro chamado: eggdrop.conf editem-no pelo comando: edit /home/user/eggdrop/eggdrop.conf  ou abram-o localmente.

2º Na edição do ficheiro:

  • Linhas 409 e 1262: escrevam um # atrás de cada die ou simplesmente apaguem essas linhas.
  • Linha 41: Troquem o "EST" por "GMT" que é o nosso fuso horário
  • Linha 176: Troquem o LamestBot por o nome que desejam para a lista de utilizadores do vosso Eggdrop
  • Linha 352 Retirem o # dessa linha e troquem o valor default: "MrLame, MrsLame" para o vosso nome, ou algo do género para ficaram como owners/donos do bot
  • Linha 451: Troquem o LamestBot por o nome que desejam para a lista de canais do vosso Eggdrop
  • Linha 789: É nesta linha que vão inserir o nickname do Eggdrop, troquem Lamestbot pelo desejado.
  • Linha 794: É nesta linha que vão inserir o nickname alternativo do Eggdrop, troquem valor pelo desejado.
  • Linha 798: É nesta linha que vão inserir o Real Name do Eggdrop, simplesmente troquem os valores entre " "
  • Linha 822: Apagar o actual conteudo:
    set servers {
      you.need.to.change.this:6667
      another.example.com:7000:password
    }
    e trocar por:
    set servers {
    irc.quakenet.org:6667 ou outra qualquer
    }
  • Linha 1240: Trocar o LamestBot pelo desejado.
  • No fim do ficheiro escrevam:
    listen 8939 all
    (esta linha, poe o Eggdrop a aceitar todas as ligações pela porta 8939, ou seja, é por aqui que
    se vão ligar ao eggdrop por protocolo Telnet,mas na porta 8939)

Adicionando canais para o Eggdrop entrar/pernanecer:

channel add #CHANNEL {

#Modos que podem ser adicionados especificamente para cada canal

}

Adicionando scripts que foram criados:

source scripts/<nome do script>.tcl

Um vasto número de scripts (.tcl), estão disponiveis na internet para download com as mais variadissimas.

3º Salvem o ficheiro e saiam do editor (caso esteja a editar localmente, é tempo de fazer upload para o servidor).

Iniciar o Eggdrop:

Abrir Terminal:

1º Navegar até à pasta: cd /home/user/eggdrop/

2º Agora temos q iniciar o bot em modo de "criação" para que nos possamos reconhecer como

Owners do bot, para isso executamos:

./eggdrop -m eggdrop.conf

O sistema vai executá-lo, quando estiver a correr, vamos ao IRC e escrevemos:

/msg <nickname do bot> hello

O eggdrop vai-nos responder por NOTICE a dizer que fomos reconhecidos como owners do Eggdrop e que temos que inserir uma palavra-passe, para isso:

/msg <nick do bot> pass <palavra-passe>

ele retorna a dizer: Password set to '<palavra-passe>', apartir deste momento, somos considerados owners do Eggdrop (username: Nickname da pessoa que fez /msg bot hello e palavra-passe definida pelo comando: /msg bot pass) e temos acesso a todas as suas funções, para entrarmos directamente no Eggdrop, temos que abrir uma ligação DCC Chat com ele ou por Telnet, para isso, no IRC vamos escrever:

/ctcp <nickname do bot> CHAT

Um pedido de DDC Chat por parte do bot, vem ao nosso encontro, aceitamos, ele pede as informações de login, se forem corectas temos acesso á partyline do Eggdrop.

Neste DCC Chat, é possivel controlar todos os aspectos do Eggdrop, por exemplo:

adicionar/remover canais, adicionar/remover utilizadores priveligiados do Eggdrop, enviar mensagens, etc.

Nesta partyline, todos os comandos são precedidos por: '.' (ponto final).

Comandos práticos para usar na partyline/DCC Chat/Telnet:

  • .rehash - Recarrega todos os scripts associados ao Eggdrop assim como configurações.
  • .restart - Reinicia o Eggdrop.
  • .+chan <#channel> - Adiciona um canal.
  • .-chan <#channel> - Remove um canal.
  • .adduser <Nickname> - Adiciona um utilizador de IRC, à lista de acesso priveligiada ao Eggdrop.
  • .deluser <Nickname> - Remove um utilizador de IRC, à lista de acesso priveligiada ao Eggdrop.
  • .chattr <Nickname> <Flags> - Altera as flags associadas a um utilizador privelegiado
  • .quit - Abandona a partyline e o Eggdrop cancela a ligação.

E está concluída a instalação e configuração de um Eggdrop.

Para mais informações relacionadas com Eggdrop/TCL visitar:

http://tcl.b0rk.de/mirror/eggdrop1.6.15/html/tcl-commands.html

by: Psiico / 2008

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Acrescenta o geshi e dá algum realce aos comandos de IRC. ;)

Bom tutorial! Já agora, não dá para scripting do bot noutra linguagem: python p ex?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

ok, eu vou por o GesHi

que eu tenha conhecimento nao,mas .tcl é mesmo muito simples e fácil, s quiserem eu deixo umas noções por ai ;)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pensa num artigo para a PROGRAMAR a introduzir ao Tcl, com esta particularidade, de poder ser usada em scripting do bot, e de outras coisas que entretanto procuraste ;)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu só sei TCL virado para Eggdrops, posso introduzir etc, mas restrito aos Eggs, apesar de TCL é uma linguagem como as outras. (java, C, pynthon, etc)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Muito útil este tópico parabéns.

Estou a tentar fazer uma simples tcl que receba texto de uma página em php e que publique no meu canal de irc. No entanto sempre que a página php envia algo para o bot ele diz isto:

<bot> [04:23:47] Telnet connection: ip/56217

<bot> [04:23:47] Timeout/EOF ident connection

<bot> [04:23:55] Lost telnet connection to telnet@ip/56217

Alguém me pode ajudar?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora