ANN: OB - Framework to progam bots

2018-06-27 Thread Bart Thate

Hello python-announce-list,

I am Bart Thate, a 50 year old programming schizofenic.

I like to annouce the version 4 of OB, a pure python3 package you can 
use to program bots.


OB has a “no-clause MIT license” that should be the most liberal license 
you can get at the year 2018.


I am looking for feedback on my new bot. https://pypi.org/project/ob/ 
http://ob.readthedocs.io/en/latest/


thnx !

Bart - bth...@dds.nl

--
https://mail.python.org/mailman/listinfo/python-announce-list

   Support the Python Software Foundation:
   http://www.python.org/psf/donations/


BOTLIB #31 released

2017-10-17 Thread Bart Thate
put a bot into silent mode. 
 start start a plugin. 
 stop  stop a plugin. 
 synchronize   synchronize rss feeds (fetch but don't show). 
 test  echo origin. 
 timer timer command to schedule a text to be printed on a 
given time. stopwatch to measure elapsed time. 
 today show last week's logged objects. 
 todo  log a todo item. 
 tomorrow  show todo items for tomorrow. 
 u show user selected by userhost. 
 uptimeshow uptime. 
 version   show version. 
 w show user data. 
 watch add a file to watch (monitor and relay to channel). 
 week  show last week's logged objects. 
 whoamishow origin. 
 yesterday show last week's logged objects. 

modules
===

The following modules are available:

::

 botlib.bot bot base class.
 botlib.cli command line interfacce bot, gives a shell prompt to 
issue bot commands.
 botlib.clock   timer, repeater and other clock based classes.
 botlib.cmnds   botlib basic commands.
 botlib.compose construct a object into it’s type.
 botlib.decorator   method decorators
 botlib.db  JSON file db.
 botlib.engine  select.epoll event loop, easily interrup_table esp. 
versus a blocking event loop.
 botlib.error   botlib exceptions.
 botlib.event   event handling classes.
 botlib.fleet   fleet is a list of bots.
 botlib.handler schedule events.
 botlib.irc IRC bot class.
 botlib.kernel  program boot and module loading.
 botlib.launchera launcher launches threads (or tasks in this case).
 botlib.log log module to set standard format of logging.
 botlib.object  JSON file backed object with dotted access.
 botlib.raw raw output using print.
 botlib.rss rss module.
 botlib.selectorfunctions used in code to select what objects to use.
 botlib.taskadapted thread to add extra functionality to threads.
 botlib.trace   functions concering stack trace.
 botlib.users   class to access user records.
 botlib.xmppXMPP bot class.
 botlib.registerobject with list for multiple values.
 botlib.restrest interface.
 botlib.runner  threaded loop to run tasks on.
 botlib.space   central module to store objects in.
 botlib.static  static definitions.
 botlib.templatecfg objects containing default values for various 
services and plugins.
 botlib.testplugin containing test commands and classes.
 botlib.udp relay txt through a udp port listener.
 botlib.utils   lib local helper functions.
 botlib.url functions that fetch data from url.
 botlib.watcher watch files.
 botlib.worker  worker thread that handles submitted jobs through 
Worker.put(func, args, kwargs).
 botlib.wisdom  wijsheid, wijs !

contact
===

| Bart Thate
| botfather on #dunkbot irc.freenode.net
| bth...@dds.nl, thateb...@gmail.com

BOTLIB has a MIT license`

-- 
https://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


BOTLIB #18 Framework to program bots announced

2017-08-02 Thread Bart Thate
I like to announce the release of BOTLIB version 18 into the Public Domain.

BOTLIB #18 - Framework to program bots - 
http://botlib.readthedocs.io/en/latest/ #ggz #evrm #dooddoorgif

README

BOTLIB is a python3 framework to use if you want to program IRC or XMPP bots.

provides

CLI, IRC and XMPP bots.
Object class - save/load to/from a JSON file.
ReST server - serve saved object’s over HTTP.
RSS fetcher - echo rss feeds to IRC channels.
UDP server - udp to bot to IRC channel.
Watcher server - run tail -f and have output send to IRC channel.
Email scanning - scan mbox format to searchable BOTLIB objects.
JSON backend - objects are stored as json string in files on the fs.
Db - iteration over stored objects.
Timestamp - time based filenames gives logging capabilities
Future - future sensors should provide entry to the logger.

setup

Set export PYTHONPATH=”.” if the bot cannot be found by the python interpreter.
Set export PYTHONIOENCODING=”utf-8” if your shell has problems with handling 
utf-8 strings.
For the XMPP server use a ~/.sleekpass file with the password in it

source

botlib.bot  bot base class.
botlib.cli  command line interfacce bot, gives a shell prompt to issue bot 
commands.
botlib.clocktimer, repeater and other clock based classes.
botlib.cmndsbotlib basic commands.
botlib.compose  construct a object into it’s type.
botlib.engine   select.epoll event loop, easily interrup_table esp. versus a 
blocking event loop.
botlib.db   JSON file db.
botlib.errorbotlib exceptions.
botlib.eventevent handling classes.
botlib.fleetfleet is a list of bots.
botlib.handler  schedule events.
botlib.irc  IRC bot class.
botlib.kernel   program boot and module loading.
botlib.launcher a launcher launches threads (or tasks in this case).
botlib.log  log module to set standard format of logging.
botlib.object   JSON file backed object with dotted access.
botlib.raw  raw output using print.
botlib.rss  rss module.
botlib.selector functions used in code to select what objects to use.
botlib.task adapted thread to add extra functionality to threads.
botlib.tracefunctions concering stack trace.
botlib.usersclass to access user records.
botlib.xmpp XMPP bot class.
botlib.register object with list for multiple values.
botlib.rest rest interface.
botlib.runner   threaded loop to run tasks on.
botlib.spacecentral module to store objects in.
botlib.static   static definitions.
botlib.template cfg objects containing default values for various 
services and plugins.
botlib.test plugin containing test commands and classes.
botlib.udp  relay txt through a udp port listener.
botlib.utilslib local helper functions.
botlib.url  functions that fetch data from url.
botlib.watcher  watch files.

contact

Bart Thate
botfather on #dunkbot irc.freenode.net
bth...@dds.nl, thateb...@gmail.com

BOTLIB is released in the Public Domain - https://bitbucket.org/bthate/botlib
-- 
https://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


ANN: BOTLIB - Framework to program bots.

2017-07-13 Thread Bart Thate
I like to announce the release of BOTLIB 12.

BOTLIB is a python3 framework to use if you want to program IRC or XMPP bots.

Copyright (C) 2016,2017 by Bart Thate <bth...@dds.nl>

Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.

THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE 
FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY 
DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER
IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

PROVIDES:

* CLI, IRC and XMPP bots.
* Object class  - save/load to/from a JSON file.
* ReST server - serve saved object's over HTTP.
* RSS fetcher - echo rss feeds to IRC channels.
* UDP server -  udp to bot to IRC channel.
* Watcher server - run tail -f and have output send to IRC channel.
* Email scanning - scan mbox format to searchable BOTLIB objects.

SETUP:

* Set export PYTHONPATH="." if the bot cannot be found by the python 
interpreter.
* Set export PYTHONIOENCODING="utf-8" if your shell has problems with handling 
utf-8 strings.
* For the XMPP server use a ~/.sleekpass file with the password in it

CONTACT:

* Bart Thate
* botfather on #dunkbot irc.freenode.net
* bth...@dds.nl, thateb...@gmail.com

BOTLIB is code released in the Public Domain - 
https://bitbucket.org/bthate/botlib
-- 
https://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


GOZERBOT 1.0 RELEASED

2012-01-19 Thread Bart Thate
I am proud !

Version 1.0 of GOZERBOT is here in the world.
7 years of evolutionary code development.
The eagle has landed, the egg is layed

See http://gozerbot.org

-

WELCOME TO GOZERBOT — GOZERBOT v1.0.1 FINAL documentation
WELCOME TO GOZERBOT¶. I am pleased to present to you version 1.0 of GOZERBOT, a 
IRC and Jabber(XMPP) bot. This is the final and last release of GOZERBOT, new 
development will continue with the JSONBOT...
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


JSONBOT 0.80.3 released

2011-11-22 Thread Bart Thate
JSONBOT is a chatbot that can take commands and react to events on the network 
it is connected to (IRC, XMPP, WEB
mostely). Push functionality is also provided (think RSS feeds to your IRC 
channel or XMPP conference). It is possible to program your own plugins to 
create custom
functionality. 

source/docs
~~~

 see http://jsonbot.org and http://jsonbot.googlecode.com


make backup first
~

I added the jsb-backup program, please run this before starting the 0.80 bot. 
It will make a backup of your datadir into ~/jsb-backups

changes
~~~

* GAE is no longer part of the standard distribution, as that is aimed at shell 
users as of 0.80 - use the mercurial repo if you want to use the GAE part of 
the bot
* web console is now supported on shell - use the jsb-tornado program to launch 
a tornado web server bot on port 10102 
* jsb-xmpp now supports OpenFire - use --openfire option to enable this
* todo now uses per user databases instead of per channel - use the -c option 
to the todo command to show the channel todo
* learn items are not global per default - use !learn-toglobal to copy local 
learn data to the global learndb
* relay plugins has been rewritten to use bot.cfg.name as well - means that 
relays need to be created again  
* jsb-udpstripped program has been added that can be used to send udp data to 
the bot without the need of making config files (copy and edit it)
* add fulljids = 1 to your xmpp bot config (most of the times in 
~/.jsb/config/fleet/default-sxmpp/config) to enable full JID discovery in xmpp 
conference rooms
  (non anonymous)

and:

* lots of new plugins .. see !list ;]
* lots of bug fixes - thnx everybody for reporting them
* still lots of things to fix at 

03:35  jsonbot tracker is http://code.google.com/p/jsonbot/issues/list

If you find any problems or have feature request please post that on the 
tracker url above.

Or try @botfather on #dunkbots on irc.freenode.net ;]
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


GOZERBOT 0.99.0 RELEASED

2011-10-05 Thread Bart Thate
Hello world and everybody !

i'm pleased to announce the release of GOZERBOT 0.99.0, the first in a
series of releases that are supposed to lead to a proper 1.0 release
for GOZERBOT. The intention is to get a 1.0 version of GOZERBOT
available for users that still use this bot, got almost 2000 download
of 0.9.2 so its worth to support all those users with a release they
can build on. I dont have the intention to develop GOZERBOT any
further beyond that, that's what JSONBOT is all about, so keep in mind
these are pure maintenance releases.

2 major changes crept into this release, namely:

* no more seperate gozerplugs package, its all wrapped into 1 thing.
The gozerplugs package has find its way under the gplugs directory in
the main distro so no more seperate installing of plugins.
* SQLAlchemy is now optional, so GOZERBOT can run on older versions of
debian etc. Since this leads to less dependancies GOZERBOT is easier
to install.

note: there is not going to be a seperate all distro as those
dependancies are already included.

SQLAlchemy is made optional by providing plugins that use direct
queries on the database, this is the default. You can change
operations back to SA by setting db_driver = alchemy in gozerdata/
mainconfig.

The intention is to release a new version of GOZERBOT every week or
so, until its stable for a long period of time. When its time i'll cut
of the 1.0 release ;]

urls:

* download tar - http://code.google.com/p/gozerbot/downloads/list
* mercurial clone - hg clone https://gozerbot.googlecode.com/hg
mybot
* please report bugs at http://code.google.com/p/gozerbot/issues/entry
especially if you are already running a GOZERBOT and run into
problems.
* path to the futire - http://jsonbot.org

read the provided README for instructions on how to get the bot
running.

About GOZERBOT:

GOZERBOT is a channel bot supporting conversations in irc channels
and jabber conference rooms. It is mainly used to send notifications
(RSS,
nagios, etc.) and to have custom commands made for the channel. More
then
just a channel bot GOZERBOT aims to provide a platform for the user
to
program his own bot and make it into something thats usefull. This is
done
with a plugin structure that makes it easy to program your own
plugins.
GOZERBOT comes with some batteries included.
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


GOZERBOT 0.9.3 BETA1 released

2011-08-10 Thread Bart Thate
Hi world and every living thing on it !

I just want to give a headsup to the fact that i released the first
beta of GOZERBOT 0.9.3. This release brings in a lot of bug fixes, so
please try it out ;]

Download is at http://gozerbot.googlecode.com, please if you find
problems with the bot file a ticket on 
http://code.google.com/p/gozerbot/issues/list.
Otherwise email me at bth...@gmail.com or check channel #dunkbots on
irc.freenode.net, thnx ! feedback is very much appreciated ;]

I also want to say sorry to my korean brothers and sisters, i have no
evil intend with GOZERBOT even if you might read that into my
announcements, i'll give the reason for the name below .. it is taken
from the dutch language. Peace !


GOZERBOT name origin


23:37  dunker !tr nl en 1) Bargoense kerel 2) Bink 3) Gast 4) Goser
5)
Joch 6) Jongen 7) Ker 8) Kerel 9) Kerel (bargoens) 10) Knaap 11)
Knakker 12)
Knul 13) Man 14) Persoonsbenaming 15) Vent

23:37  jsonbot 1) Bargoens guy 2) Bink 3) Guest 4) Goser 5) Jochberg
6)
Girl 7) Ker 8) Guy 9) Dude (slang) 10) Knaap 11) bloke 12) Lad 13) F
14)
Name Person 15) Vent


친구
1) Bargoens 사람 2) 빙크 3) 게스트 4) Goser 5) Jochberg 6) 소녀 7) 케르 8)
가이 9) 친구 (속 어) 10) Knaap 11) 던 12) 래드 13) F 14) 이름 인 15) 벤트

About GOZERBOT:

GOZERBOT is a channel bot that aids with conversation in irc channels
and jabber conference rooms. its mainly used to send notifications
(RSS, nagios, etc.) and to have custom commands made for the channel.
More then just a channel bot GOZERBOT aims to provide a platform for
the user to program his own bot and make it into something thats
usefull. This is done with a plugin structure that makes it easy to
program your own plugins. But GOZERBOT comes with some batteries
included, there are now over 100 plugins already written and ready for
use.
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


GOZERBOT 0.9.2 RELEASED

2011-06-27 Thread Bart Thate
Hello new world !

i’m glad to announce the release of version GOZERBOT 0.9.2, a bot that
has been declared dead but has arrived from the pits of hell to serve
our people here well ;] Discovered that SQLAlchemy has been fixed in
such a way that it was easy to resurrect the thing, and release a new
version of it.

It’s not my intention to still maintain GOZERBOT as i prefer users to
switch to JSONBOT but this switch is to be done in such a way that
GOZERBOT users can port their data to JSONBOT in a proper way. Having
GOZERBOT still up and running makes it easier for me to write the
converting software as a GOZERBOT plugin, in which case i have better
access to the data then when i have to access it from the outside.

Ofcourse the conversion plugin is still to be written, but i hope that
current GOZERBOT users can wait a little while before that is in
place ;]

You can get the new version from http://gozerbot.googlecode.com. For
those who want to have a look at the future check http://jsonbot.org

Well thats new from a happy camper that suddenly finds his path ahead.

Grtx,

Bart
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


JSONBOT 0.7.1 released

2011-06-10 Thread Bart Thate
Hello kids and parents !! I just want to announce the release of
JSONBOT 0.7.1.

This release consists of minor bug fixes and new xmpp auth code (SASL)
which support DIGEST-MD5 and PLAIN authing.

JSONBOT should run well again on systems with python2.5 installed.

You can fetch it at http://jsonbot.googlecode.com

Have fun playing with it!

Bart

About JSONBOT:

JSONBOT is a remote event-driven framework for building bots that talk
JSON
to each other over XMPP.

This distribution provides bots built on this framework for console,
IRC,
XMPP and Convore for the shell and WWW and XMPP for the Google
Application engine.

JSONBOT is all of the following:

* a shell console bot
* a shell IRC bot
* a shell XMPP bot
* a shell Convore bot
* a Web bot running on Google Application Engine
* a XMPP bot running on Google Application Engine
* a Google Wave bot running op Google Application Engine
* the XMPP bots are used to communicate between bots
* plugin infrastructure to write your own functionality
* event driven framework by the use of callbacks
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


JSONBOT 0.7 RELEASED

2011-05-01 Thread Bart Thate
0.7 RELEASE NOTES
=

Hello world, greetings to all and everybody on this little planet ;]

Today I am releasing version 0.7 of JSONBOT, hope you like it.

I want to dedicate this release to Annemiek, Kirsten, Danny and
Doscha, i would not have a live without you.

changes in this release
---

* we got jsonbot.org running .. see http://jsonbot.org ;]
* convore support
* refactored core
* reloadable config files
* revamped web console
* resource files (contain commands the bot can execute)
* file change detection for myplugs plugins
* rebooting is fixed
* fixed relaying in jabber conference rooms
* added color.py plugin to color certain words
* added geo.py, googletranslate.py and imdb.py (thnx melmoth)
* chatlog plugin now uses the logging module .. log file rotates every
day
* many other bugfixes

If you have programmed your own plugin see
http://jsonbot.org/handbook/UPGRADE.html for upgrade notes.

Todo


1) fix runtime setting of loglevel
2) add flood control
3) docs docs docs docs docs
4) fix bugs

see http://code.google.com/p/jsonbot/issues/list

Source
--

* tarball - http://jsonbot.googlecode.com
* mercurial - http://jsonbot.googlecode.com/hg
* github - https://github.com/jsonbot

Demo


* webconsole - http://jsonbot.appspot.com
* xmpp - json...@jsonbot.org (shell) and json...@appspot.com (GAE)
* IRC - jsonbot on irc.freenode.net
* Convore - https://convore.com/convore-8/welcome-to-convore/ relaying
with #convore on irc.freenode.net

Docs


* new jsonbot.org site .. http://jsonbot.org
* GAE backup docs .. http://jsonbot.appspot.com/docs

Contact
---

* twitter: https://twitter.com/#!/jsonbot
* facebook: http://tinyurl.com/jsonbot
* email: bth...@gmail.com
* IRC: dunker in channel #dunkbots / irc.freenode.net* xmpp:
bth...@gmail.com and b...@jsonbot.org

About
-

JSONBOT is a remote event-driven framework for building bots that talk
JSON
to each other over XMPP.

This distribution provides bots built on this framework for console,
IRC,
XMPP and Convore for the shell and WWW and XMPP for the Google
Application engine.

JSONBOT is all of the following:

* a shell console bot
* a shell IRC bot
* a shell XMPP bot
* a shell Convore bot
* a Web bot running on Google Application Engine
* a XMPP bot running on Google Application Engine
* a Google Wave bot running op Google Application Engine
* the XMPP bots are used to communicate between bots
* plugin infrastructure to write your own functionality
* event driven framework by the use of callbacks

Install
---

You dont need to run the bot on GAE when you just want to use the
shell bots of JSONBOT. JSONBOT can best be run from the bot dir, the
bot is self contained and has all the dependancies that are needed:

* hg clone http://jsonbot.googlecode.com/hg mybot or download and
untar the tarball.
* cd into the bot dir and run ./bin/jsb .. if the bot is working
correctly you will get the console version of JSONBOT
* same can be done for ./bin/jsb-xmpp, ./bin/jsb-convore etc. ..
check the bin dir for programs you can start
* try the --help option to a program to see what command line options
are available.
* you DONT need root for this

Ofcourse you can always run python setup.py install or easy_install
-U jsb when you do want to install the bot globaly.
Debian packages are on their way, but might still take time as the
ftpmeisters need to approve ;]

Thats it ! hope you enjoy this version of JSONBOT ;]

Bart
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


JSONBOT 0.6.1 RELEASED

2011-02-04 Thread Bart Thate
Hello every human out there !

i'm pleased to announce the release of JSONBOT 0.6.1 FINAL, a release
that saw a lot of work into the shell side of things and no changes to
GAE.

0.6.1 has the following changes:

* the ! char is not used instead of | in a pipeline. This is to make
it easier to use a pipeline on mobile phones.

* a new commandline interface has been created. You can now do jsb
botcommand  .. no need to start up the console app when you have a
single command to execute

* ? is now used a query character, so things you learn the bot with !
learn can be queried with ?

* auto_register and guestasuser config options are now disabled by
default

* core xmpp parsing code has been rewritten

* many more bug fixes.

You can grab a copy of the code (tarball or mercurial repo) at
http://jsonbot.googlecode.com

Hope you enjoy this release as much as i enjoyed making it ;]
Have Fun !

Bart

About JOSNBOT:

JSONBOT is a remote event-driven framework for building bots that talk
JSON to each other over XMPP.

This distribution provides bots built on this framework for console,
IRC, XMPP for the shell and WWW and XMPP for the Google Application
engine.

JSONBOT is all of the following:

a shell console bot
a shell IRC bot
a shell XMPP bot
a Web bot running on Google Application Engine
a XMPP bot running on Google Application Engine
a Google Wave bot running op Google Application Engine
the XMPP bots are used to communicate between bots
plugin infrastructure to write your own functionality
event driven framework by the use of callbacks
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


JSONBOT 0.6 RELEASED

2011-01-04 Thread Bart Thate
Hello world and the best wishes for 2011 for all of you !

i'm pleased to announce version 0.6 of JSONBOT, a release that saw
it's complete codebase refactored. Things have moved into their own
package, making it easier to distribute JSONBOT to the various OS
around. I even renamed the name of the distribution to jsb, so use
the jsb-0.6.tar.gz or easy_install jsb to get this version of
JSONBOT.

So once again i need to ask existing users to upgrade their JSONBOT
install, see http://jsonbot.appspot.com/docs/html/handbook/UPGRADE.html
for instructions on how to do that.

Functionality of the bot is the same as 0.5.

For more information on JSONBOT, see http://jsonbot.googlecode.com or
join us on #dunkbots Freenode.

Bot documentation and demo is on http://jsonbot.appspot.com

I hope you enjoy this release of JSONBOT, i'm glad i can start working
on 0.7 ;]

About JSONBOT:

JSONBOT is a remote event-driven framework for building bots that talk
JSON
to each other over XMPP.

This distribution provides bots built on this framework for console,
IRC,
XMPP for the shell and WWW and XMPP for the Google Application engine.

JSONBOT is all of the following:

* a shell console bot
* a shell IRC bot
* a shell XMPP bot
* a Web bot running on Google Application Engine
* a XMPP bot running on Google Application Engine
* a Google Wave bot running op Google Application Engine
* the XMPP bots are used to communicate between bots
* plugin infrastructure to write your own functionality
* event driven framework by the use of callbacks

Bart
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


JSONBOT 0.3 RELEASE

2010-08-30 Thread Bart Thate
Hello world !

I just released version 0.3 of JSONBOT. JSONBOT is a remote event
driven framework for building bots that talk JSON to each other over
XMPP.

This distribution provides bots built on this framework for console,
IRC, XMPP for the shell and WWW and XMPP for the Google Application
engine.

JSONBOT 0.3 provides the following programs:

jsb - console version of jsonbot
jsb-import - import data from another bot
jsb-installplug - install remote plugins
jsb-irc - IRC version of jsonbot (socket)
jsb-xmpp - XMPP version of jsonbot (socket)
jsb-fleet - mix IRC and XMPP bots
jsb-release - create a new release directory
jsb-rollback - rollback a release
jsb-run - run a release in the GAE dev_appserver
jsb-stop - stop a running bot
jsb-upload - upload a release to the GAE

A plugin infrastructure is in place to program the functionality that
is needed.

JSONBOT 0.3 plugins:

8b - eight ball
admin - administator related commands
alias - keep aliases (per user)
ask - plugin for asking experts a question
choice - choice out of a list .. used in pipelines
controlchar - set the control character of a channel
forward - forward events of a channel to another bot
clone - clone waves into new ones
core - core bot commands
count - count the numbers in a result .. used in pipelines
data - provide data dumps of channels, bots, events
fleet - support multiple bots in a running instance (list of bots)
gae - provide GAE commands like flush cache or cache stats
gadget - wave gadget support
gcalc - use google to calculate
grep - grep the result .. used in pipelines
hubbub - pubsubhubbub plugin providing subscribe functionality
ipcalc - ipcalculator
irc - IRC related commands
jsondata - enable/disable sharing of files through the jsonserver (not
enabled right now)
kickban - channel control commands for IRC
misc - other commands
more - do a more on buffered output
nickcapture - retake nick (IRC)
nickserv - nickserver support (IRC)
not - negated grep .. used in pipelines
outputcache - show outputcache data
rss - provide RSS and Atom pollers
relay - relay to other waves/xmpp
restserver - provide REST functionality to the bot
reload - reloading of plugins
reverse - rever see the result .. also used in pipelines
seen - keep track of users
shop - keep shopping lists
sort - sort the result .. used in pipelines
tail - tail the result .. used in pipelines
test - test commands
tinyurl - get a tinyurl
todo - keep a todo list
underauth - undernet auth support (IRC)
uniq - make the result unique .. used in pipelines
user - user management
userstate - userstate management
watcher - watch channels that get forwarded to the bot.
wave - wave related commands
weather - show weather in a city
welcome - welcome messages shown in the gadget
wikipedia - query wikipedia
xmpp - xmpp related functions account

Project home is at http://jsonbot.googlecode.com

Have fun with it!
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


GOZERBOT 0.9.2 BETA1 released

2010-04-26 Thread Bart Thate
I just released the first BETA of GOZERBOT version 0.9.2

Please test this release if you can.

Best is to run of the mercurial repo:

hg clone http://core.gozerbot.org/hg/dev/0.9

or run easy_install -U gozerbot gozerplugs (make sure there is no
gozerbot dir in your working directory.)

docs are at http://gozerbot.org/0.9.2

If you find any bugs you can report them at http://dev,gozerbot.org/

Have fun !

about GOZERBOT:

GOZERBOT is a channel bot that aids with conversation in irc channels
and jabber conference rooms. its mainly used to send notifications
(RSS, nagios, etc.) and to have custom commands made for the channel.
More then just a channel bot GOZERBOT aims to provide a platform for
the user to program his own bot and make it into something thats
usefull. This is done with a plugin structure that makes it easy to
program your own plugins. But GOZERBOT comes with some batteries
included, there are now over 100 plugins already written and ready for
use.
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


JSONBOT 0.1 released

2010-04-02 Thread Bart Thate
Introducing JSONBOT

JSONBOT is a bot that stores all its data in json format. It runs on
the Google Application Engine and can thus support wave, web and xmpp.
Standalone programms are provided for IRC and console, the goal is to
let both clientside and GAE side communicate through JSON either over
XMPP or HTTP POST.

this bot needs google_appengine installed in your home dir

JSONBOT provides the following programs:
j
sb - console version of jsonbot
jsb-irc - IRC version of jsonbot
jsb-run - run a release in the GAE dev_appserver
jsb-release - create a new release directory
jsb-upload - upload a release to the GAE

JSONBOT 0.1 contains the following plugins:

8b - eight ball
admin - administator related commands
ask - plugin for asking experts a question
choice - choice out of a list .. used in pipelines
core - core bot commands
count - count the numbers in a resutl .. used in pipelines
gadget - wave gadget support
gcalc - use google to calculate
gozernet - connect multiple JSONBOTs through xmpp
grep - grep the result .. used in pipelines
hubbub - pubsubhubbub plugin providing subscribe functionality
ipcalc - ipcalculator
irc - IRC related commands
misc - other commands
more - do a more on buffered output
not - negated grep .. used in pipelines
outputcache - show outputcache data
relay - relay to other waves/xmpp account
reload - reloading of plugins
reverse - reverse the result .. also used in pipelines
sort - sort the result .. used in pipelines
tail - tail the result .. used in pipelines
tinyurl - get a tinyurl
uniq - make the result unique .. used in pipelines
user - user management
userstate - userstate management
watcher - watch waves .. get notified in xmpp
wave - wave related commands
welcome - welcome messages shown in the gadget
wikipedia - query wikipedia

To upload your own bot do the following:

you need an account on the Google Application Engine. see
http://appengine.google.com/

1) run jsb-release yourbotname - this will create a uploadable dir
2) run jsb-upload yourbotname

this enables web and xmpp, for wave you need to do the following:

2) go to https://wave.google.com/wave/robot/register and register
your
bot
3) edit ~/regs/yourbotname/ dir and copy the verification token and
secret to the credentials.py file
4) run jsb-release yourbotname
4) run jsb-upload  yourbotname
5) once its uploaded click the verify button
6) copy the consumer key and secret to the credentials.py file en run
jsb-upload again
7) done !

Now you should be able to do the following:

1) visit the website at http://yourbotname.appspot.com
2) add the bot as Jabber buddy at yourbotn...@appspot.com
3) the same as wave bot
4) on joining a wave the bot loads a gadget from 
http://yourbotname.appspot.com/gadget.xml
5) manifest to add your bot to the waves newwave menu use
http://yourbotname.appspot.com/feeder.xml

JSONBOT is open source (MIT license) and free to clone when needed,
patches welcomed though ;]

home: http://jsonbot.googlecode.com/
demo: http://jsonbot.appspot.com/
wave/xmpp: json...@appspot.com
contact: bth...@gmail.com
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


GZRBOT 0.1 released

2009-12-23 Thread Bart Thate
Hi world !

First of all happy christmas and a happy new year to all of you.

I want to release GZRBOT to the world. This is a rename of the CMNDBOT
bot, since this name matches the one of GOZERBOT the best and thats
what this bot is best described .. GOZERBOT on the Google Application
Engine.

So this is really CMNDBOT 0.1 after BETA1 and BETA2, but then renamed
to GZRBOT.

Most of all GZRBOT is there for its code and reuse of it is highly
recommended. I made a script which makes it easy to clone gozerbot and
rename it so you can run your own bot off the GZRBOT code. GZRBOT has
a plugin system that lets you program your own plugin and provide you
a way to add custom functionality to your bot. Both writing commands
and reacting on events through callbacks is supported.

A live web demo of GZRBOT can be seen at http://gzrbot.appspot.com.
For wave or jabber (gtalk or any other jabber client) add
gzr...@appspot.com to your contactlist or join me on this wave:

GZRBOT 0.1 released

Source code and documentation (still needs to be written) is available
at http://gzrbot.googlecode.com

If you have any question about GZRBOT you can reach me at
bth...@gmail.com

Have fun with it ! ;]

Bart
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


cmndbot 0.1 beta 1 released

2009-11-28 Thread Bart Thate
So once again i bite the bullet because i can no longer wait on going
public with this.

I'm pleased to announce CMNDBOT 0.1 BETA1 to the world as this is the
first released of my port of GOZERBOT to the Google Application
Engine, enabling it on wave, web and xmpp.

I'll paste here the README to explain what it does:

CMNDBOT is a port of gozerbot to google wave platform. GOZERBOT needed
to
be completely rewritten as programs running on google application
engine
(GAE) run within a CGI model which means that the bot get loaded on
every
request (unless its cached). Core functionality is available right now
but
most plugins need to be ported still. Besides wave the bot also
supports web
and jabber (XMPP) access.

this is the code that is being run by the cmndbot.appspot.com bot and
is
free code (BSD license). you can clone it to run your own cmndbot or
just to read how things are being done. no fear in reading cmndbot
code !

as the name says cmndbot allows you to execute commands that you can
program
easily through the use of plugins.

example:

from gozerlib.commands import cmnds

def handle_hello(bot, event):
event.reply(hello %s % event.userhost)

cmnds.add('hello', handle_hello, 'USER')

as of now a few gozerbot plugins are being ported to cmndbot, namely:

* eight ball
* ipcalc
* todo
* wikipedia
* infoitem
* gcalc
* RSS

other plugins will follow but the focus is now mainly on the bots
core.

CMNDBOT is accessible at http://cmndbot.appspot.com (WEB) or
cmnd...@appspot.com (WAVE/XMPP).

A gadget is also in the works at http://cmndbot.appspot.com/cmnd.xml
but it only works with google chrome for now .. my javascript skills
are very *kuch* young ;]

actualy this code is still young as docs are mostely missing and the
bot really needs to be tested, but thats what this release is for,
rememer this is still version 0.1 !

code is at http://cmndbot.googlecode.com/hg

I hope people are interested in developing this bot with me, if you do
you can contact me at bth...@gmail.com or bth...@googlewave.com

Bart
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


GOZERBOT 0.9.1 released

2009-08-11 Thread Bart Thate
here it is .. GOZERBOT 0.9.1 !!

Main change this time is the distribution method, we now provide a
tar.gz with all the dependencies included. This means that you can run
the bot locally without any root required. Python 2.5 or higher
needed, see http://gozerbot.org

Enjoy !

about GOZERBOT:

GOZERBOT is a channel bot that aids with conversation in irc channels
and
jabber conference rooms. its mainly used to serve rss feeds and to
have
custom commands made for the channel. More then just a channel bot
GOZERBOT
aims to provide a platform for the user to program his own bot and
make it
into something thats usefull. This is done with a plugin structure
that
makes it easy to program your own. But GOZERBOT comes with some
batteries
included, there are now over 100 plugins already written and ready for
use.
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


GOZERBOT 0.9.1 BETA2 released

2009-07-03 Thread Bart Thate
GOZERBOT has a new website !! check it out at http://gozerbot.org.
This is all in preparation for the 0.9.1 release and the latest
GOZERBOT beta has been released as well. Please try this version and
let me know how goes.

Install is as simple as .. easy_install gozerbot gozerplugs, see
README.

This release will be used to move GOZERBOT 0.9 into the debian
repositories and freebsd ports.

we can be contacted on #dunkbots EFNET/IRCNET or use http://dev.gozerbot.org
for any bugs you might find.

NEW IN THIS RELEASE:

* GOZERBOT is now truely free as it no longer depends on GPL licensed
xmpppy, a own xmpp package has been implemented for this.

* GOZERBOT now depends on setuptools to install the proper packages

* gozerbot-nest script can be used to install all dependacies and bot
code in 1 directory that can be run by the user (no root required)

* morphs are added that allow for encryption of input and output
streams (not used yet)

groet,

Bart


about GOZERBOT:

GOZERBOT is a channel bot that aids with conversation in irc channels
and jabber conference rooms. its mainly used to serve rss feeds and to
have custom commands made for the channel. More then just a channel
bot GOZERBOT aims to provide a platform for the user to program his
own bot and make it into something thats usefull. This is done with a
plugin structure that makes it easy to program your own. But GOZERBOT
comes with some batteries included, there are now over 100 plugins
already written and ready for use.
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


ANN: GOZERBOT 0.9 RELEASED

2009-02-06 Thread Bart Thate
Finally gozerbot 0.9 has been released.  This is a huge step forward
to version 1.0 and contains a number of changes:

* use json as the format to save data in instead of pickles
* let config files also use json, this makes them more readable
and human editable
* remove popen usage from the bot core
* remove execfile() calls from the bot core
* rewrite the gozerbot package into several subpackages
* use sqlaclhemy to provide database backend (sqlite3 is default)
* require python2.5
* move most of the plugins into their own package
* restructure the gozerdata layout so its more readable

All these changes makes upgrading from older versions of gozerbot
necessary so a gozerbot-upgrade program is provided (upgrading from
0.7 is not supported yet, will follow soon).

See http://gozerbot.org on how to install gozerbot 0.9

About GOZERBOT:

0.9 Requirements

* a shell
* python 2.5 or higher
* gnupg
* simplejson
* sqlalchemy
* xmpppy

Why gozerbot?

* provide both IRC and Jabber support
* user management by userhost .. bot will not respond if it
doesn't know you (see USER)
* fleet .. use more than one bot in a program (list of bots) (see
FLEET)
* use the bot through dcc chat
* fetch rss feeds (see RSS)
* remember items
* relaying between bots (see RELAY)
* program your own plugins (see PROGRAMPLUGIN)
* query other bots with json REST (see CLOUD)
* serve as a udp - irc or jabber notification bot (see UDP
* sqlalchemy support

Bart
--
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations.html


GOZERBOT 0.8.2-BETA released

2008-09-16 Thread Bart Thate
It is time for a new gozerbot release so we are pushing a new BETA for
the world to test. This time the change is rather big as most plugins
are removed from the core and put into there own tarball. So if you
want to try out 0.8.2-BETA for us and report any problems with it on
http://dev.gozerbot.org/ or in our channel #dunkbots on IRCnet we
would very much appreciate it. You can also contact me at
[EMAIL PROTECTED] Download can be done from our website http://gozerbot.org/

new features:

* most plugins removed from core .. this keeps the base of the bot
as small as possible
* missing plugins can be installed via internet or via tarball
* rewritten core .. callbacks and commands when not threaded are
not executed in the main loop anymore but instead in what are called
“runners”, threads that do the jobs. this limits the threads that are
launched
* new debug mode that enables more verbose logging (stacktrace)
* a REST server and client have been added to the core .. the
cloud plugin uses these to communicate between bots. data is
transfered in json format
* new plugins are added to the plugin collection
  o powernick (core) .. a plugin to relay the log file to an
OPER via DCC CHAT
  o throttle (core) .. throttle users to max number of
commands per minute
  o cloud (myplugs) .. connect gozerbots together
  o traclog (myplugs) .. log channel in a format suitable for
integration with trac
  o register (myplugs) .. enables users to register themselves
with the bot
  o anon (myplugs) .. register users on channel join
* config changes are now written to the config file instead of a
pickle

TAKE NOTE: most of the plugins are removed from the core bot .. you
can use the !install-defaultplugs command to get most of these
plugins .. otherwise see !install-list of plugins that can be
installed

About gozerbot:

Requirements

* a shell
* python 2.4 or higher
* if you want to remotely install plugins: the gnupg module
* if you want mysql support: the py-MySQLdb module
* if you want jabber support: the xmpppy module

Why gozerbot?

* provide both IRC and Jabber support
* user management by userhost .. bot will not respond if it
doesn't know you (see /docs/USER/)
* fleet .. use more than one bot in a program (list of bots) (see /
docs/plugins/FLEET/)
* use the bot through dcc chat
* fetch rss feeds (see /docs/plugins/RSS/)
* remember items
* relaying between bots (see /docs/plugins/RELAY/)
* program your own plugins (see /docs/PROGRAMPLUGIN/)
* run the builtin webserver (see /docs/plugins/WEBSERVER/)
* query other bots webserver via irc (see /docs/plugins/
COLLECTIVE/)
* serve as a udp - irc or jabber notification bot (see /docs/
plugins/UDP)
* mysql and sqlite support

the gozerbot development team
--
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations.html


GOZERBOT 0.8.1.0 released

2008-06-03 Thread Bart Thate
0.8.1.0 is here and can be downloaded from http://gozerbot.org

new features:

* ssl connections are now supported
* third party software included into gozerbot:
  o feedparser (used by RSS) .. makes atom feeds possible
  o simplejson (used by COLLECTIVE)
  o BeautifulSoup (used to parse webpages)
* renewed RSS plugin
* renewed collective plugin
* renewed webserver plugin .. new webserver API
* tcp.py notification plugin as well as a totcp.py client program

the following plugins were removed from the main distribition:

* autovoice
* away
* convert
* country
* event
* grab
* jcoll
* probe

if you are using one of these plugins use install-plug plugin to
install them from the plugin server.

any problems with the bot can be reported on #dunkbots on IRCnet or
email [EMAIL PROTECTED]

debian package and freebsd port will follow

have fun ;]

about gozerbot:

Requirements

* a shell
* python 2.4 or higher
* if you want to remotely install plugins: the gnupg module
* if you want mysql support: the py-MySQLdb module
* if you want jabber support: the xmpppy module

Why gozerbot?

* provide both IRC and Jabber support
* user management by userhost .. bot will not respond if it
doesn't know you
* fleet .. use more than one bot in a program (list of bots)
* use the bot through dcc chat
* fetch rss feeds
* remember items
* relaying between bots
* program your own plugins
* run the builtin webserver
* query other bots webserver via irc
* serve as a udp - irc or jabber notification bot
* mysql and sqlite support
--
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations.html


ANN: GOZERBOT 0.8 released

2008-03-05 Thread Bart Thate
so 0.8 is there and can be downloaded from http://gozerbot.org

new features:

* third party addons for plugins. (needs setup.py  to work)
* reboots without disconnects (irc only for now)
* ipv6 udp support
* queues used all over the place to reduce thread usage
* normal irc log format is now supported (simplelog plugin)
* irc can now be disabled for jabber only usage
* owneruserhost is now a list so multiple userhosts can be used
* jabber reconnect code is improved
* rss error reporting is improved
* udp code is improved especially in the jabber case
* lots of other bug fixes

problems with this release can be reported on http://dev.gozerbot.org
or contact us on #dunkbots on IRCnet or freenode. email is at
[EMAIL PROTECTED]

the gozerbot development team

ABOUT GOZERBOT:

Requirements

* a shell
* python 2.4 or higher
* if you want to remotely install plugins: the gnupg module
* if you want mysql support: the py-MySQLdb module
* if you want jabber support: the xmpppy module

Why gozerbot?

* provide both IRC and Jabber support
* user management by userhost .. bot will not respond if it
doesn't know you (see /docs/USER/)
* fleet .. use more than one bot in a program (list of bots)
(see /
docs/FLEET/)
* use the bot through dcc chat
* fetch rss feeds (see /docs/RSS/)
* remember items
* relaying between bots (see /docs/RELAY/)
* program your own plugins (see /docs/PROGRAMPLUGIN/)
* run the builtin webserver (see /docs/WEBSERVER/)
* query other bots webserver via irc (see /docs/COLLECTIVE/)
* serve as a udp - irc or jabber gateway (see /docs/UDP)
* mysql and sqlite support
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations.html