As instruções abaixo são para o Debian/GNU/Linux, mas, basta instalar o programa em qualquer distribuição ou se você gosta de correr riscos no Windows que o arquivo de configuração é o mesmo.
1° Passo - Instalação.
- Para Debian e derivados como Ubuntu, Kubuntu e Kurumin:
#aptitude install iroffer
- Para OS rpm's como Redhat, Suse, Mandriva e outros derivados:
Procure e instale o pacote iroffer (quem quiser mandar update com detalhes do procedimento da sua distribuição preferida, eu agradeço)
- Para Windows:
Sinceramente não sei, mas, da uma olhada na pagina oficial http://www.iroffer.org
--------------
2° Passo - Configuração.
- Criar na sua pasta home uma pasta exclusiva para a configuração (aconselho que seja iroffer mesmo, como usarei em meus exemplos):
$mkdir ~/iroffer
--------------
3° Passo - Criar o arquivo de configuração:
- Para Debian e derivados como Ubuntu, Kubuntu e Kurumin:
#gunzip /usr/share/doc/iroffer/examples/sample.config.gz
#cp /usr/share/doc/iroffer/examples/sample.config ~/iroffer/nomedobot.config
- Para OS rpm's como Redhat, Suse, Mandriva e outros derivados:
Procure o arquivo sample.config.gz que foi instalado pela sua distribuição e proceda como explicado acima (quem quiser mandar update com detalhes do procedimento da sua distribuição preferida, eu agradeço)
- Para Windows:
Sinceramente não sei, mas, da uma olhada na pagina oficial http://www.iroffer.org
--------------
4° Passo - Editando o arquivo de configuração:
- Nesta etapa não importa sua Distribuição :-) - Há menos é claro que você ainda não tenha entendido que Windows não é seguro e seja teimoso a esse ponto, então! http://www.iroffer.org de novo pra você :-P
- Abrindo o arquivo
$seueditorpreferidograficoounão ~/iroffer/nomedobot.config
O arquivo é todo comentando e tem exemplos em cada sessão, sendo que as sessões são bem separadas, só que ingles não é nem de longe meu forte :-(
Segue abaixo uma configuração adquirida com minha esperiência em canais de irc e com muinto google translator e achometro :-)
- Seção - pid file -:
pidfile nomedobot.pid
- Seção - log file -:
logfile nomedobot.log
logstats yes
logrotate weekly
- Seção - state file -:
statefile nomedobot.state
- Seção - xdcc listing file -:
xdcclistfile nomedobot_packs.txt
- Seção - connection method -:
connectionmethod direct
- Seção - nickserv -:
nickserv_pass senha_do_seu_nick_no_servidor_de_irc
- Seção - server information -:
server servidor_de_irc 6667 senha_do_seu_nick_no_servidor_de_irc
- Seção - channels (upto 50) -:
channel #nomedocanal
channel #nomedocanal2
channel #nomedocanalXXXXXXXXx (e assim vai, sendo uma linha pra cada canal dentro do servidor)
- Seção - user information -:
user_nick nomedonick_do_Bot
user_realname Nome_real_do_Bot
user_modes +i
- Seção - incoming TCP connections -:
tcprangestart 4000 (ou 5000 ou 6000 qualquer faixa de porta que você quer receber seus arquivos, muito útil atrás de firewall)
- Seção - manual dcc ip translation -:
usenatip COLOCAR_O_IP_REAL_DA_SUA_NET (Caso esteja atrás de um firewall ou seu modem seja router - vai ser útil a configuração anteiror ;-)
- Seção - maximum xdcc slots -:
slotsmax numero_da_quantidade de arquivos que podem ser enviandos simuntaneo (4 por ex)
- Seção - Queue Information -:
queuesize numero_da_quantidade de arquivos que podem ser colocados na fila de espera! (12 por ex)
- Seção - max transfers per person -:
maxtransfersperperson numero_da_quantidade de arquivos que uma pessoa pode baixar ao mesmo tempo! (1 por ex)
- Seção - max queued items per person -:
maxqueueditemsperperson numero_da_quantidade de arquivos que podem ser colocados na fila por uma pessoa! (3 por ex)
- add/chfile command helper directory -:
filedir /home/suapastadearquivos (Util para abreviar caminho nos comandos do bot!)
- restrict xdcc list and xdcc send -:
restrictprivlist
restrictprivlistmsg Para obeter os packs digite: !seucomandopreferido (isto ira impedir que seu bot caia direto por excesso de flood)
- Seção - channel xdcc commands -:
respondtochannelxdcc (se for pro bot responder ao comando xdcc) - Aconselho
#respondtochannelxdcc (se não for pro bot responder ao comando xdcc list)
- Seção - channel !list command -:
respondtochannellist (se for pro bot responder ao comando !list) - Aconselho
#respondtochannellist (se for pro bot responder ao comando !list)
- Seção - bypass queue for small files -:
smallfilebypass 100 (Assim o arquivo de packs será enviado de imediato desde que ele seja menor do que 100k, caso contrário aumente um pouco)
- authorized download hosts -:
downloadhost *!*@* (Assim todo mundo pode baixar :-)
- transfer min speed -:
transferminspeed 2 (Assim quem tiver querendo baixar o mundo junto com seu arquivo não fica empatado o Bot)
- transfer max speed -:
transfermaxspeed 15 (Ou o tanto de upload que você quiser limitar, para que alguém com uma super banda não consuma todo o seu upload e pare sua net)
- bandwidth limiting -:
overallmaxspeed 15 (O mesmo acima, mas, controlando todos os usuários)
- autosend feature -:
autosendpack 1 !seucomandopreferido meus packs. (envia o arquivo de packs pra quem der o comando especificado como !seucomandopreferido)
- headline -:
headline "Aquela msg especial que ficará no topo do seu arquivo de packs" (sem ")
- credit line -:
creditline Packs = Escreva o que você quiser para ser a linha de créditos do seu bot sempre que alguém der um comando de list no canal.
- log notices -:
lognotices (Assim saberemos pelo log o que os OPs e servidores tem a nos dizer ao entrar no canal)
--------------
5° Passo - instalando programa auxiliares que serão úteis.
- Instalando o screen para Debian e derivados como Ubuntu, Kubuntu e Kurumin:
#aptitude install screen (não precisa configurar mais nada)
- Instalando o screen para OS rpm's como Redhat, Suse, Mandriva e outros derivados:
Procure e instale o pacote screen (quem quiser mandar update com detalhes do procedimento da sua distribuição preferida, eu agradeço)
- Para windows:
Não tenho nem noção se existe screen pra windows, dançou :-P
--------------
6° Passo - iniciando o bot.
- Iniciando o screen com sessão exclusiva para o bot (terminal, konsole, xterm, etc.:
$screen -S bot (vai cair novamente no console)
- Iniciando o iroffer dentro da sessão screen:
$cd ~/iroffer
$iroffer nomedobot.config
- vai aparecer o bot logando no servidor e nos canais, após isto você estará no console do iroffer, onde tudo é via comando, tanto do iroffer, quanto de irc.
- querendo sair do console do iroffer sem fechar o bot basta digitar juntamente as teclas:
Ctrl + a + d (dessa forma sairá somente da sessão screen)
- querendo voltar ao console do iroffer:
screen -r bot (vai abrir a sessão do screen com o bot iroffer rodando)
--------------
7° Passo - utilização dos principais comando do bot.
Para saber os comandos do bot, basta digitar help
** HELP - Shows Help
Ou seja, help
** XDL - Lists Offered Files
Ou seja, xdl
** DCL - Lists Current Transfers
** DCLD - Lists Current Transfers with Details
Ou seja, dcl ou dcld
** QUL - Lists Current Queue
Ou seja, qul
** REMOVE n - Removes Pack n
Ou seja, remove numerodopack
** REMOVEDIR
Ou seja, o mesmo de cima, só que para todos os arquivos da pasta especificada.
** RENUMBER x y - Moves Pack x to y
Ou seja, renumber numeropack numerodopacknovo vai trocar o numero dos packs (util para organizar sua lista de packs)
** ADD - Add New Pack With
Ou seja add arquivo_que_voce_quer_por_no_bot adiciona um novo arquivo ao seu bot, sendo que deve ser sempre um caminho valido para o arquivo.
** ADDDIR - Add Every File in
Ou seja adddir pasta_que_voce_quer_por_no_bot adiciona todos os arquivos de uma pasta ao seu bot, sendo que deve ser sempre um caminho valido para a pasta.
* ADDNEW - Add any new files in
Ou seja addnew pasta_que_voce_quer_por_no_bot adiciona todos os arquivos NOVOS de uma pasta ao seu bot, sendo que deve ser sempre um caminho valido para a pasta. (eu prefiro utilizar sempre este, assim não preciso me preocupar se estou colocando arquivos em duplicidade no bot)
** MSG - Send a message to a user
Ou seja, msg nickdousuario mensagem Envia mensagem a um usuário especifico.
** MESG - Sends msg to all users who are transferring
Ou seja, mesg mensagem Envia mensagem a todos usuários baixando do bot.
** MESQ - Sends msg to all users in a queue
Ou seja, mesq mensagem Envia mensagem a todos usuários na fila do bot.
** MSGREAD - Show MSG log
Ou seja, msgread mostra o log do bot (quando quiser monitorar)
** MSGDEL - Delete MSG log
Ou seja, msgdel Deleta o log
** STATUS - Show Useful Information
Ou seja, status Mostra a situação global do bot
** REHASH - Re-reads config file(s) and reconfigures
Ou seja, rehash recarrega as configurações do bot (util quando você altera o arquivo nomedobot.config e não quer parar o bot)
** BOTINFO : Show Information about the bot status
Ou seja, botinfo mostra informações detalhadas sobre a situação do bot.
** SHUTDOWN : Shutdown iroffer, is "now", "delayed", or "cancel"
Ou seja: shutdown now fecha o bot na hora; shutdown delayed fecha o bot quando não tiver mais nenhum arquivo sendo baixado e shutdown cancel Cancela o comando "shutdown delayed"