rbot
10 years agodocument requirements of the twitter plugin apoc/new-twitter-api11
Matthias H [Fri, 19 Jul 2013 15:00:10 +0000 (17:00 +0200)] 
document requirements of the twitter plugin

10 years agoupdates the twitter plugin to use the new api 1.1
Matthias H [Fri, 19 Jul 2013 14:26:24 +0000 (16:26 +0200)] 
updates the twitter plugin to use the new api 1.1

The old 1.0 api is no longer available.
Its using oauth2 for application-only authentication and
oauth(1.0a) for user authentication.
Now requests and parses json (the new API doesn't support XML)

10 years agonote: dup the keys, not the registry gfax/master
Giuseppe Bilotta [Mon, 29 Apr 2013 05:37:28 +0000 (07:37 +0200)] 
note: dup the keys, not the registry

10 years agonote: if is more readale than unless here
Giuseppe Bilotta [Sun, 28 Apr 2013 06:54:03 +0000 (08:54 +0200)] 
note: if is more readale than unless here

10 years agonote: added date to timestamps gfax/note_plugin_fix
Jay Thomas [Sun, 28 Apr 2013 02:35:20 +0000 (22:35 -0400)] 
note: added date to timestamps

10 years agonote: added config option to privmsg all notes
Jay Thomas [Sun, 28 Apr 2013 02:21:19 +0000 (22:21 -0400)] 
note: added config option to privmsg all notes

10 years agonote: skip merging nil keys
Jay Thomas [Sat, 27 Apr 2013 06:27:19 +0000 (02:27 -0400)] 
note: skip merging nil keys

10 years agonote: upgrade old registry keys on initialize
Jay Thomas [Fri, 26 Apr 2013 01:15:58 +0000 (21:15 -0400)] 
note: upgrade old registry keys on initialize

10 years agonote: store nicks case-insensitive to avoid lost messages
Jay Thomas [Thu, 25 Apr 2013 03:24:29 +0000 (23:24 -0400)] 
note: store nicks case-insensitive to avoid lost messages

10 years agoFix parsing whois results so that we can get valid results for at least a great many...
Ryan Waldron [Thu, 18 Apr 2013 21:59:22 +0000 (16:59 -0500)] 
Fix parsing whois results so that we can get valid results for at least a great many queries

10 years agoFix multibyte char in rake task
Ryan Waldron [Thu, 18 Apr 2013 19:42:50 +0000 (14:42 -0500)] 
Fix multibyte char in rake task

10 years agoFix TCPSocket name
Ryan Waldron [Thu, 18 Apr 2013 19:42:12 +0000 (14:42 -0500)] 
Fix TCPSocket name

10 years agosearch: updated Wolfram Alpha method to comply with api
Jay Thomas [Thu, 25 Apr 2013 04:19:25 +0000 (00:19 -0400)] 
search: updated Wolfram Alpha method to comply with api

10 years agoutils: fixed secs_to_string output for one-element arrays
Jay Thomas [Thu, 25 Apr 2013 03:05:59 +0000 (23:05 -0400)] 
utils: fixed secs_to_string output for one-element arrays

10 years agoextends: updated shuffle method
Jay Thomas [Thu, 25 Apr 2013 03:01:56 +0000 (23:01 -0400)] 
extends: updated shuffle method

11 years agosearch: wolfram fix
Giuseppe Bilotta [Wed, 30 Jan 2013 07:24:03 +0000 (08:24 +0100)] 
search: wolfram fix

Ruby doesn't do C-style string concatenation. (My fault.)

11 years agorss: protect against nil field erebor/master
Giuseppe Bilotta [Mon, 21 Jan 2013 18:41:38 +0000 (19:41 +0100)] 
rss: protect against nil field

This happens when the filter tries to wrap a non-existing field, and in
custom filters it's probably a sign that the wrong field are being
accessed. It would probably be nicer to raise a warning about this, but
I'm too lazy to add that now.

11 years agoimdb: fix for the check of the final /
Giuseppe Bilotta [Wed, 19 Dec 2012 09:04:09 +0000 (10:04 +0100)] 
imdb: fix for the check of the final /

11 years agoimdb: plugin updates for recent site changes
Matthias H [Wed, 19 Dec 2012 08:02:29 +0000 (09:02 +0100)] 
imdb: plugin updates for recent site changes

11 years agobdb: message when wrong bdb module is loaded gitorious/master
Giuseppe Bilotta [Thu, 27 Sep 2012 10:23:36 +0000 (12:23 +0200)] 
bdb: message when wrong bdb module is loaded

11 years agolastfm: match latest API changes
Giuseppe Bilotta [Wed, 26 Sep 2012 20:28:25 +0000 (22:28 +0200)] 
lastfm: match latest API changes

Thanks Lite_

11 years agopoll: usual gettext frozen string issues
Giuseppe Bilotta [Fri, 21 Sep 2012 13:30:47 +0000 (15:30 +0200)] 
poll: usual gettext frozen string issues

11 years agopoll: handle privately-asked polls
Giuseppe Bilotta [Fri, 21 Sep 2012 12:55:42 +0000 (14:55 +0200)] 
poll: handle privately-asked polls

When a poll is asked in private, its channel will be empty. Make sure
that communication go in private again, and do mention that the poll was
asked in private in the poll info.

11 years agopoll: restart/close polls that were running
Giuseppe Bilotta [Fri, 21 Sep 2012 11:56:43 +0000 (13:56 +0200)] 
poll: restart/close polls that were running

On init, we need to see if there were polls running, and put them up
again (if there's still time) or announce their results (otherwise).

11 years agopoll: oopsie in the gettext string for poll status
Giuseppe Bilotta [Fri, 21 Sep 2012 11:39:41 +0000 (13:39 +0200)] 
poll: oopsie in the gettext string for poll status

11 years agosearch: improve ddg output with missing sources
Giuseppe Bilotta [Fri, 14 Sep 2012 06:55:39 +0000 (08:55 +0200)] 
search: improve ddg output with missing sources

Sometimes duckduckgo fails to report the source/url of a definition or
abstract. Cope with this by removing the leading double dash when no
source information is provided

11 years agosearch: thread the new engines too
Giuseppe Bilotta [Fri, 14 Sep 2012 06:42:10 +0000 (08:42 +0200)] 
search: thread the new engines too

11 years agosearch: rbot-ize wolframalpha
Giuseppe Bilotta [Fri, 14 Sep 2012 06:41:24 +0000 (08:41 +0200)] 
search: rbot-ize wolframalpha

11 years agosearch: preliminary Wolfram Alpha support
Giuseppe Bilotta [Fri, 14 Sep 2012 06:35:24 +0000 (08:35 +0200)] 
search: preliminary Wolfram Alpha support

Thanks Lite_ again

11 years agosearch: some ddg reworking
Giuseppe Bilotta [Thu, 13 Sep 2012 08:33:52 +0000 (10:33 +0200)] 
search: some ddg reworking

Make it more similar to google, modulo obvious differences in behavior
and possibilities.

11 years agosearch: be more rbot-ish in ddg
Giuseppe Bilotta [Thu, 13 Sep 2012 07:27:19 +0000 (09:27 +0200)] 
search: be more rbot-ish in ddg

11 years agosearch: preliminary duckduckgo support
Giuseppe Bilotta [Thu, 13 Sep 2012 06:56:17 +0000 (08:56 +0200)] 
search: preliminary duckduckgo support

Thanks Lite_

11 years agochucknorris: typo
Giuseppe Bilotta [Mon, 10 Sep 2012 05:43:32 +0000 (07:43 +0200)] 
chucknorris: typo

11 years agosearch: fix google calc scraping
Giuseppe Bilotta [Mon, 10 Sep 2012 04:33:32 +0000 (06:33 +0200)] 
search: fix google calc scraping

11 years agomarkov: be more robust about flaky dbs
Giuseppe Bilotta [Fri, 31 Aug 2012 19:04:47 +0000 (21:04 +0200)] 
markov: be more robust about flaky dbs

Due to historical bugs, some database entries may have ended up being
serialized as strings. Recover from this by making them into arrays.

11 years agobdb: restore errors should be logged as errors
Giuseppe Bilotta [Fri, 31 Aug 2012 19:04:01 +0000 (21:04 +0200)] 
bdb: restore errors should be logged as errors

11 years agosearch: update for changes in google's html
Giuseppe Bilotta [Fri, 31 Aug 2012 18:33:40 +0000 (20:33 +0200)] 
search: update for changes in google's html

11 years agoUpdate gettext support
Giuseppe Bilotta [Sat, 14 Jul 2012 11:24:33 +0000 (13:24 +0200)] 
Update gettext support

Somewhere along the line between 2.0.0 and 2.2.1 gettext switched from
locale to lang for the hash key name. Support both.

11 years agotumblr: escape the non-range dash in the group regex
Giuseppe Bilotta [Thu, 21 Jun 2012 06:03:20 +0000 (08:03 +0200)] 
tumblr: escape the non-range dash in the group regex

11 years agosearch: fix google oblomov/master
Giuseppe Bilotta [Mon, 14 May 2012 11:59:39 +0000 (13:59 +0200)] 
search: fix google

11 years agoutils: support hex HTML entities
Giuseppe Bilotta [Mon, 14 May 2012 11:59:20 +0000 (13:59 +0200)] 
utils: support hex HTML entities

11 years agodb adaptors: nil internal variable when closing
Giuseppe Bilotta [Mon, 30 Apr 2012 19:50:02 +0000 (21:50 +0200)] 
db adaptors: nil internal variable when closing

This prevents subsequent spurious flushes from bombing out because of
closed databases.

11 years agoquakeauth: notify when identified
Giuseppe Bilotta [Mon, 30 Apr 2012 12:00:43 +0000 (14:00 +0200)] 
quakeauth: notify when identified

This ensures that joining after identification (config setting
irc.join_after_identify) works correctly with quake auth too.

12 years agoweather: use proper units text when using config option
Giuseppe Bilotta [Mon, 26 Mar 2012 16:22:38 +0000 (18:22 +0200)] 
weather: use proper units text when using config option

Previously, if units was false (no units specified), wu_units would
become "_false" instead of "_<whatever was in the config value>".

12 years agoForecast plugin patch
Giuseppe Bilotta [Tue, 20 Mar 2012 11:13:17 +0000 (12:13 +0100)] 
Forecast plugin patch

"I've updated the forecast plugin, the two API URLs used had been updated and
the NOAA SOAP API method call now requires 6 arguments instead of the 5 it was
passing previously." (Ticket #89)

12 years agoRubyGems obsoleted *and* b0rked all_load_path, try to work around it
Giuseppe Bilotta [Sun, 4 Mar 2012 20:16:46 +0000 (21:16 +0100)] 
RubyGems obsoleted *and* b0rked all_load_path, try to work around it

12 years agohttputil: work (sub-par) without iconv
Giuseppe Bilotta [Sat, 3 Mar 2012 18:04:34 +0000 (19:04 +0100)] 
httputil: work (sub-par) without iconv

12 years agoDocument iconv dependency
Giuseppe Bilotta [Sat, 3 Mar 2012 17:32:23 +0000 (18:32 +0100)] 
Document iconv dependency

12 years agomath: ruby wants leading 0s to floating points numbers
Giuseppe Bilotta [Wed, 1 Feb 2012 14:24:31 +0000 (15:24 +0100)] 
math: ruby wants leading 0s to floating points numbers

12 years agosearch: fix gcalc
Giuseppe Bilotta [Wed, 25 Jan 2012 08:44:40 +0000 (09:44 +0100)] 
search: fix gcalc

Google changed their layout again. To be a little more future-proof,
split the html into as many <br/> sections as there are, and pick the
first one that contains the literal string ' = ' if there is one.

12 years agogreed: prevent players from going twice in a row
Okasu [Sat, 21 Jan 2012 07:33:15 +0000 (02:33 -0500)] 
greed: prevent players from going twice in a row

12 years agogreed: refactor and prepare for more complete play
Giuseppe Bilotta [Mon, 26 Dec 2011 09:57:54 +0000 (10:57 +0100)] 
greed: refactor and prepare for more complete play

The score is now saved in a look-up table, that also allows more
detailed output when showing the score. Also, the dice rolling
potentially allows for a different number of dices to be rolled (e.g. if
some are held).

Take the opportunity to also gettextize outuput.

12 years agogreed: stylistic changes
Giuseppe Bilotta [Mon, 26 Dec 2011 09:12:31 +0000 (10:12 +0100)] 
greed: stylistic changes

Sort dices when rolling and separate values with spaces.

12 years agoAdd a Greed dice game.
Okasu [Mon, 26 Dec 2011 08:53:16 +0000 (03:53 -0500)] 
Add a Greed dice game.

12 years agoGooglefight plugin fix
Okasu [Sun, 25 Dec 2011 22:13:30 +0000 (17:13 -0500)] 
Googlefight plugin fix

12 years agotwitter: preliminary status htmlinfo filter
Giuseppe Bilotta [Wed, 21 Dec 2011 22:29:35 +0000 (23:29 +0100)] 
twitter: preliminary status htmlinfo filter

This allows the link info published by URL in the new /#!/ format to be
more meaningful than the warning about missing JavaScript support caused
by the new "web 2.0" Twitter site.

12 years agotumblr: fix 'tumblr configure' regexps
Giuseppe Bilotta [Wed, 21 Dec 2011 09:11:29 +0000 (10:11 +0100)] 
tumblr: fix 'tumblr configure' regexps

The way they were, specifying channel, email, password and group caused
the password to be merged with the email and the group to become the
password.

12 years agoImprove first par detection without hpricot
Giuseppe Bilotta [Thu, 8 Dec 2011 15:20:43 +0000 (16:20 +0100)] 
Improve first par detection without hpricot

12 years agomarkov: mention learn in summary help
Giuseppe Bilotta [Wed, 7 Dec 2011 08:12:09 +0000 (09:12 +0100)] 
markov: mention learn in summary help

12 years agomarkov: document 'learn from <file>'
Giuseppe Bilotta [Sun, 4 Dec 2011 05:25:53 +0000 (06:25 +0100)] 
markov: document 'learn from <file>'

12 years agodict: oxford fix from AndrewNTH
Giuseppe Bilotta [Mon, 24 Oct 2011 08:49:22 +0000 (10:49 +0200)] 
dict: oxford fix from AndrewNTH

See tracker issue #79

12 years agoExit for good when getting a DBFatal error
Giuseppe Bilotta [Mon, 24 Oct 2011 08:44:09 +0000 (10:44 +0200)] 
Exit for good when getting a DBFatal error

12 years agoimdb plugin: again fixes outdated ratings pattern
Matthias -apoc- Hecker [Mon, 26 Sep 2011 12:44:25 +0000 (14:44 +0200)] 
imdb plugin: again fixes outdated ratings pattern

12 years agoUNO: prevent player from replaying a misplayed card
Giuseppe Bilotta [Thu, 22 Sep 2011 20:42:02 +0000 (22:42 +0200)] 
UNO: prevent player from replaying a misplayed card

12 years agoBetter handling of akills and other form of disconnections
Giuseppe Bilotta [Thu, 15 Sep 2011 09:44:07 +0000 (11:44 +0200)] 
Better handling of akills and other form of disconnections

12 years agoyoutube: not all urls have v= as first CGI param
Giuseppe Bilotta [Thu, 15 Sep 2011 09:40:44 +0000 (11:40 +0200)] 
youtube: not all urls have v= as first CGI param

12 years agoAn unparseable message from the server is a ServerError
Giuseppe Bilotta [Tue, 30 Aug 2011 05:33:18 +0000 (07:33 +0200)] 
An unparseable message from the server is a ServerError

12 years agobasics: UI command to send NOTICEs
Giuseppe Bilotta [Sun, 28 Aug 2011 21:33:16 +0000 (23:33 +0200)] 
basics: UI command to send NOTICEs

12 years agofix for imdb, changed patterns for ratings&genre
Matthias -apoc- Hecker [Sun, 14 Aug 2011 11:50:02 +0000 (13:50 +0200)] 
fix for imdb, changed patterns for ratings&genre

12 years agoFix TC db close on cleanup
Giuseppe Bilotta [Mon, 11 Jul 2011 15:26:00 +0000 (17:26 +0200)] 
Fix TC db close on cleanup

When closing the TC db on cleanup, we didn't remove it from the
environment. Override the #close() method to achieve that.

12 years agoSaner treatment for connect errors
Giuseppe Bilotta [Sat, 11 Jun 2011 14:26:09 +0000 (16:26 +0200)] 
Saner treatment for connect errors

Rather than raising changing the message (a message that would not be
displayed anyway), display the (composed) error message and then reraise
without further changes.

12 years agoMark threaded mapped messages as replied
Giuseppe Bilotta [Thu, 9 Jun 2011 10:29:07 +0000 (12:29 +0200)] 
Mark threaded mapped messages as replied

This prevents them from being delegated to unreplied() before the processing
thread has the chance to mark it replied. The solution would fail for
threaded messages whose processing would not reply, but I'm not aware of
such a method currently exists.

A future design of the message delegation and mapping could thread the
actual delegation instead, and this problem would be solved.

12 years agoRuby 1.9 can intern empty strings
Giuseppe Bilotta [Fri, 3 Jun 2011 12:02:45 +0000 (14:02 +0200)] 
Ruby 1.9 can intern empty strings

Since in the subsequent switc we check for nil, explicitly use
nil when the modifier is empty or nil rather than relying on a rescued
exception.

12 years agoMore outdated message in en translations
Giuseppe Bilotta [Fri, 3 Jun 2011 10:54:00 +0000 (12:54 +0200)] 
More outdated message in en translations

12 years agoUpdate translations
Giuseppe Bilotta [Fri, 3 Jun 2011 10:46:57 +0000 (12:46 +0200)] 
Update translations

12 years agoweather: refactor NWS output
Giuseppe Bilotta [Wed, 11 May 2011 18:25:20 +0000 (20:25 +0200)] 
weather: refactor NWS output

Aside from gettexting, this separates out all the data that is available
in both metric and imperial units, to allow a potential extension for
support for the user choice of units.

Fix heat index and windchill in the mean time.

12 years agoweather: fall back from nws to wu
Giuseppe Bilotta [Wed, 11 May 2011 17:53:37 +0000 (19:53 +0200)] 
weather: fall back from nws to wu

If a user uses NWS as default service and asks for a location that the
our NWS implementation can't retrieve, fall back to the Weather
Underground service.

To simplify this management, rewrite the code to use the bot HTTP util
and its caching functionality.

12 years agoweather: URI-encode station
Giuseppe Bilotta [Wed, 11 May 2011 16:18:04 +0000 (18:18 +0200)] 
weather: URI-encode station

The NWS code assumed that the station could be used as-is in the URL,
which is actually true for the station codes accepted by NWS, but
incorrect in general. People with NWS as the default weather service
would get strange errors about bad URIs if trying something like
"weather birmingham, uk".

Solve by URI-encoding the station name: even if the resulting URL will
still give a 404, at least it doesn't give out odd errors.

12 years agosearch: update gdef to changes in web result
Giuseppe Bilotta [Tue, 10 May 2011 10:53:25 +0000 (12:53 +0200)] 
search: update gdef to changes in web result

12 years agobdb: don't retrieve the db values when warning about nil key
Giuseppe Bilotta [Tue, 10 May 2011 06:19:13 +0000 (08:19 +0200)] 
bdb: don't retrieve the db values when warning about nil key

When either of the keys passed to the BDB compare function is nil, we
emit a warning. In this warning, however, we used to peek at the
registry value, which required the use of the comparison function
itself, falling in a nested loop. Solve by omitting the
self[<key>].inspect from the warning.

12 years agoweather: fix url detection for multiple stations/sites
Giuseppe Bilotta [Mon, 9 May 2011 09:47:26 +0000 (11:47 +0200)] 
weather: fix url detection for multiple stations/sites

12 years agoPreliminary support for the LIST command
Giuseppe Bilotta [Tue, 3 May 2011 17:22:51 +0000 (19:22 +0200)] 
Preliminary support for the LIST command

13 years ago* less eager quit message reset
Giuseppe Bilotta [Sun, 3 Apr 2011 06:28:39 +0000 (08:28 +0200)] 
* less eager quit message reset

Only reset quit message when entering the main loop sanely.

13 years agoutils: support new HTMLEntities interface
Giuseppe Bilotta [Sat, 2 Apr 2011 08:54:15 +0000 (10:54 +0200)] 
utils: support new HTMLEntities interface

Since version 4.1.0, HTMLEntities removed the decode_entities()
class method and uses a decoder since. Support the new interface as well
as the old one.

Also slightly optimize by moving the conditional outside of the method
definition. Now a rescan is required even if HTMLEntities is loaded at
runtime, but the method should be slightly faster.

13 years agoAdd &ndash; to known HTML characters
Giuseppe Bilotta [Wed, 16 Mar 2011 19:26:14 +0000 (20:26 +0100)] 
Add &ndash; to known HTML characters

This was affecting the imdb plugin when htmlentities was not available,
because TV series were split at en dashes, which were being converted to
asterisks when our built-in UNESCAPE_TABLE was being used.

13 years agotwitter plugin: change the api urls to receive RTs
Matthias -apoc- Hecker [Mon, 14 Feb 2011 20:49:32 +0000 (21:49 +0100)] 
twitter plugin: change the api urls to receive RTs

13 years agoauth: force no-nick reply when meeting someone
Giuseppe Bilotta [Mon, 7 Feb 2011 10:35:30 +0000 (11:35 +0100)] 
auth: force no-nick reply when meeting someone

This prevents things such as "nickA: hi, nickB" where nickA is e.g. the
owner and nickB is the newly met user.

13 years agoquiz: stop quizzes and timers on cleanup robbat/master
Giuseppe Bilotta [Thu, 3 Feb 2011 11:53:34 +0000 (12:53 +0100)] 
quiz: stop quizzes and timers on cleanup

This prevents spurious timers from running after a rescan

13 years agoquiz: more consistent autoskip/autoask management
Giuseppe Bilotta [Thu, 3 Feb 2011 10:34:30 +0000 (11:34 +0100)] 
quiz: more consistent autoskip/autoask management

Also respect autoask delay when autoskipping

13 years agoquiz: autoskip feature
Giuseppe Bilotta [Thu, 3 Feb 2011 10:28:07 +0000 (11:28 +0100)] 
quiz: autoskip feature

13 years agoquiz: autoask cleanup
Giuseppe Bilotta [Thu, 3 Feb 2011 09:26:10 +0000 (10:26 +0100)] 
quiz: autoask cleanup

13 years agoquiz: refactor and localize admin help
Giuseppe Bilotta [Thu, 3 Feb 2011 09:14:24 +0000 (10:14 +0100)] 
quiz: refactor and localize admin help

13 years agoquiz: refactor quiz db problem announcement
Giuseppe Bilotta [Thu, 3 Feb 2011 09:09:19 +0000 (10:09 +0100)] 
quiz: refactor quiz db problem announcement

13 years agoquiz: autoask status query
Giuseppe Bilotta [Thu, 3 Feb 2011 09:01:55 +0000 (10:01 +0100)] 
quiz: autoask status query

13 years agohttputil: nicer UI message when lacking ssl
Giuseppe Bilotta [Wed, 2 Feb 2011 09:04:56 +0000 (10:04 +0100)] 
httputil: nicer UI message when lacking ssl

Rather than complaining about a missing use_ssl= method, if net/https
fails to load we define a mock use_ssl= method that raises a runtime
error making the LoadError message public. This is not the most
user-friendly message (we would prefer not to expose internals), but
it should be clear enough to help owners that forget to read the log
find what's missing.

13 years agocomments and message fixes
Giuseppe Bilotta [Mon, 31 Jan 2011 14:21:15 +0000 (15:21 +0100)] 
comments and message fixes

13 years agoweather: defaults for missing service
Giuseppe Bilotta [Sun, 30 Jan 2011 20:58:00 +0000 (21:58 +0100)] 
weather: defaults for missing service

The refactoring that introduced google removed them erroneously.

13 years agobdb: support running without envs
Giuseppe Bilotta [Fri, 28 Jan 2011 09:07:44 +0000 (10:07 +0100)] 
bdb: support running without envs

The various checkpointing function may be called when no env has been
loaded (yet), support this.

13 years agoTokyoCabinet pseudo-environment
Giuseppe Bilotta [Wed, 26 Jan 2011 17:36:55 +0000 (18:36 +0100)] 
TokyoCabinet pseudo-environment

Since TokyoCabinet does not provide a DB environment, trying to reopen
the same db multiple times (something that happens with subregistry
mostly, and possibly after rescans) causes the subsequent opens to fail
due to "threading errors".

Fix by implementing some sort of environmentalish database management
(only keeps track of open databases, returns existing ones if reopening
the same db multiple times, closes all of them on exit).

13 years agoweather: support google service too
Giuseppe Bilotta [Wed, 26 Jan 2011 16:08:25 +0000 (17:08 +0100)] 
weather: support google service too