psiico Posted May 18, 2008 at 06:37 PM Report Share #185892 Posted May 18, 2008 at 06:37 PM 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 Psiico // Portfolio Link to comment Share on other sites More sharing options...
JoaoRodrigues Posted May 18, 2008 at 06:51 PM Report Share #185896 Posted May 18, 2008 at 06:51 PM 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? Link to comment Share on other sites More sharing options...
psiico Posted May 18, 2008 at 06:59 PM Author Report Share #185900 Posted May 18, 2008 at 06:59 PM 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 😉 Psiico // Portfolio Link to comment Share on other sites More sharing options...
JoaoRodrigues Posted May 18, 2008 at 07:02 PM Report Share #185902 Posted May 18, 2008 at 07:02 PM 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 😉 Link to comment Share on other sites More sharing options...
psiico Posted May 18, 2008 at 07:08 PM Author Report Share #185904 Posted May 18, 2008 at 07:08 PM 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) Psiico // Portfolio Link to comment Share on other sites More sharing options...
Miudadestimida Posted October 20, 2011 at 01:28 AM Report Share #416679 Posted October 20, 2011 at 01:28 AM 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? Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now