OpenBot
Ufficialmente MORTO (è morto perfino più volte, un pò come KENNY! si come KENNY, quel kenny! proprio lui, kenny)
L’OpenBot è un progetto OpenSource (quindi gratuito al 100% e liberamente modificabile) nato nel Maggio 2006 con lo scopo di creare un’alternativa valida, in Python, del famoso IRC Bot eggdrop.
Il Bot per arrivare a questo “livello” è stato riscritto ben TRE volte in questi stadi:
- unico file contenente l’intero Bot usando i socket Python ad alto livello
- unico file contenente l’intero Bot usando la libreria irclib
- bot modularizzato e pluginnizzato in più file usando la libreria Twisted
Prima di iniziare la “Guida all’uso” del 3o stadio (quello di cui si parlerà da ora in poi, l’unico attualmente supportato) vi devo far noto che l’OpenBot al momento non è potente e soprattutto stabile come l’eggdrop, visto che non è stato ancora rilasciato (ne come alfa, ne come beta e quindi nemmeno come stable o rc).
Installate Twisted e Python prima della procedura di Download.
Download
Linux
Prima possibilità :
$ mkdir OpenBot && cd OpenBot
$ wget http://openbot-python.googlecode.com/svn/trunk/updater.py
$ python updater.py
$ python openbot.py
in un unico comando:
$ mkdir OpenBot && cd OpenBot && wget http://openbot-python.googlecode.com/svn/trunk/updater.py && python updater.py && python openbot.py
Seconda possibilità (necessita di SubVersion):
$ svn checkout http://openbot-python.googlecode.com/svn/trunk/ openbot-python
$ cd OpenBot && python openbot.py
Windows
- Create la cartella OpenBot e rimaneteci dentro
- Scaricate il file updater.py (un’”installer” ma anche un updater per chi ha già OpenBot)
- Eseguite il file updater.py con l’interprete Python (click doppio sul file)
- Eseguite il file openbot.py con l’interprete Python (click doppio sul file)
Primo avvio
Aperto il Bot vi chiederà alcune informazioni nella shell, che vi spiego in breve:
- Server IRC a cui connetterti [default: irc.freenode.org]
- Porta del server IRC [default: 6667]
- Verbose disabilitato/abilitato (0/1) [default: 1]
- Logs (0/1): se abil. verranno inseriti in data/logs [default: 1]
- NickName del Bot nel server irc [default: oBot????]
- NickServ password (lasciare vuoto se il Bot non necessita di identificazione)
- Password del Bot, verrà utilizzata in seguito per acquisire pieni poteri con il Bot (con identify: password in privato)
- Channels in cui entrare, dividere con una virgola [default: #rebelcode, #rebeltest]
Fatto questo il Bot si connetterà al dato Server, se richiesto si identificherà a NickServ, entrerà nei canali dati e aspetterà messaggi dagli utenti in chan e in privato.
A questo punto per identificarvi come owner al Bot dovrete inviare in privato al Bot: “identify: password_scelta_prima” senza le ” logicamente
# TODO: Funzioni del bot
# TODO: Guida nella modifica dei file di config
# TODO: Guida nella creazione di un Plugin
# TODO: Conclusioni
IN COSTRUZIONE
22 Comments Add your own
Leave a Comment
Some HTML allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
Trackback this post | Subscribe to the comments via RSS Feed
1.
Openbot su #bash « &hellip | Novembre 23, 2006 at 8:35 pm
[...] Oggi su #bash ho messo l’openbot (del mio amico lux, il genio del python ) [...]
2.
lux | Novembre 29, 2006 at 9:07 pm
lux@lux-desktop:~/Desktop/Documenti/openbot-python$ python updater.py –help
Usage: updater.py [OPTION]
OPTIONS:
–ignore-conf don’t update conf files (conf/).
–help print this message.
Modificato updater.py (niente da dire :-P).
3.
lux | Dicembre 4, 2006 at 7:50 pm
Aggiunta possibilita’ di commentare (#) i file di conf: openbot.manual, openbot.owner.manual, openbot.join e openbot.modes.
4.
ScaccoMatto | Dicembre 20, 2006 at 4:35 pm
al primo avvio da comunque un errore… c’è da molto tempo!
5.
lux | Dicembre 20, 2006 at 7:20 pm
ScaccoMatto potrei avere il log dell’errore?
:
Come puoi vedere a me non ne da nessuno
6.
gratis&hellip | Dicembre 22, 2006 at 11:38 am
Oh yea
Well, welcome to a new post… This is the post of… The new content…
Moderated: rimosso link
7.
ScaccoMatto | Dicembre 24, 2006 at 3:31 pm
simone@euclide:~/OpenBot/OpenBot$ python openbot.py
NetWork [irc.freenode.org]: irc.azzurra.org
Port [6667]: 6667
Verbose (0/1)[1]: 1
Logs (0/1)[1]: 1
Bot’s nick [oBot6651]: obot
NickServe Password (blank for none):
Bot identify Password:
Bot identify Password: j0in
Channels to join [#rebelcode,#rebeltest]: #scacco
Traceback (most recent call last):
File “openbot.py”, line 301, in ?
OpenBot()
File “openbot.py”, line 267, in __init__
self.connect()
File “openbot.py”, line 293, in connect
reactor.connectTCP(self.conf.host, self.conf.port, self)
File “/usr/lib/python2.4/site-packages/twisted/internet/posixbase.py”, line 392, in connectTCP
c = tcp.Connector(host, port, factory, timeout, bindAddress, self)
File “/usr/lib/python2.4/site-packages/twisted/internet/tcp.py”, line 840, in __init__
raise error.ServiceNameUnknownError(string=”%s (%r)” % (e, port))
twisted.internet.error.ServiceNameUnknownError: Service name given as port is unknown: service/proto not found (’6667′).
simone@euclide:~/OpenBot/OpenBot$
8.
lux | Dicembre 24, 2006 at 4:34 pm
Bene dopodomani o domani mi ci metto, oggi è natale quindi…
In ogni caso penso sia un problema in conf.py e in pratica non ‘parserizza’ bene l’input della Porta.
9.
lux | Gennaio 2, 2007 at 11:17 am
Fixato il bug #1 in conf.py e riscritto parzialmente (diciamo a 3/4) conf.py con migliorie ‘figissime’.
REVISIONE 20
10.
lux | Gennaio 2, 2007 at 12:26 pm
Completato la funzionalità numero #8, il plugin meteo: weather.py.
REVISIONE 21
11.
lux | Gennaio 3, 2007 at 12:19 pm
“Alcuni fix - Aggiornato updater.py per weather.py”
Sending plugins/conf_reader/manual.py
Sending plugins/conf_reader/modes.py
Sending plugins/core_plugin/confparser.py
Sending updater.py
REVISIONE 22
12.
OpenBot 0.0.5b sempre piÃ&hellip | Gennaio 5, 2007 at 10:26 am
[...] OpenBot [...]
13.
Ste | Gennaio 27, 2007 at 4:40 pm
ciao, appena scoperto e installato openbot. ottimo impatto, anche se volevo segnarti che ho notato un piccolo bug. infatti, in fase di configurazione al primo startup, non prende l’impostazione del server che viene data (per dire, io gli ho detto di usare irc.azzurra.org ma nella conf/ poi c’era irc.freenode.org).
ciao
14.
Tassoman | Febbraio 10, 2007 at 2:54 pm
MODERATED
15.
Tassoman | Febbraio 10, 2007 at 2:55 pm
Ho cannato il link: **
16.
sk1l | Febbraio 12, 2007 at 1:42 pm
posto solo questo preso da #rebelcode dopo una serie di “!quote”:
* openBot è uscito (Excess Flood)
17.
lux | Marzo 17, 2007 at 3:55 pm
Dopo molto tempo ecco un’altro aggiornamento:
* aggiunte alcune revisioni a utils.py
* classizzato conf.py
* altri bug fix
Questa REVISIONE in ogni caso è incompleta a breve uplodo la 25 con molte modifiche di vario genere.
REVISIONE 24
18.
lux | Marzo 17, 2007 at 4:41 pm
Rilasciata la revisione 25, dalla 24 e 26 sono una sola revisione in realtà che sto prolungando:
* Fix fix fix
* utils.message(.send) si diffonde anche nel cuore del Bot (openbot.py)
Nella prossima revisione utils.message verrà distribuito in gran parte del Bot e ci saranno altri bug fix.
REVISIONE 25 (24-26)
19.
lux | Marzo 18, 2007 at 11:54 am
Alcuni fix ad updater.py.
REVISIONE 26
20.
sk1l | Marzo 18, 2007 at 12:32 pm
l’excess flood l’hai sistemato? Lo metterò alla prova mumble… mumble…
21.
lux | Marzo 18, 2007 at 4:17 pm
Quello non si può fixare :(.
Me lo bombardi è una cosa di connessione!
22.
lux | Marzo 21, 2007 at 12:08 pm
Mega update a conf.py (anche se ho sporcato un po´ il codice) e vari fix:
lux@lux:~/Documenti/openbot-python$ python conf.py –help
Usage: conf.py [OPTIONS]
OPTIONS:
–configure create the config file (conf/openbot.main).
–edit-conf edit the config file (conf/openbot.main).
–help print this message.
lux@lux:~/Documenti/openbot-python$ svn commit -m “conf.py update - other minor fixes”
Trasmetto conf/openbot.join
Trasmetto conf/openbot.manual
Trasmetto conf.py
Trasmetto library/utils.py
Trasmetto plugins/conf_reader/_commands.py
Trasmetto plugins/conf_reader/join.py
Trasmetto plugins/conf_reader/manual.py
Trasmetto plugins/conf_reader/modes.py
Trasmetto updater.py
REVISIONE 27