Giter Club home page Giter Club logo

supybot-plugins's Introduction

A bunch of plugins for Supybot / Limnoria I either wrote myself or found on the net and improved. Plugins that require HTTPd aren't compatible with Supybot or gribble. If you cannot load these plugins in Limnoria, please make sure you are using a recent version with the version command.

To install dependencies for Limnoria and these plugins, run

pip install -r https://raw.githubusercontent.com/ProgVal/Limnoria/master/requirements.txt
pip install -r requirements.txt

Build Status

AttackProtector

Provides configurable flood protection for channels.

AutoTrans

Sends in a query a translation of messages received in a channel.

Brainfuck

Brainfuck (a turing-complete programming language) interpreter.

ChannelStatus

Web interface for displaying channel-related data (topic, users, …)

Coffee

Makes coffee for the channel.

Debian

Grabs data from Debian's website.

Eureka

Trivia plugin, with a new take on file design.

GitHub

Plugin using the GitHub API & repo web hooks. This plugin requires Limnoria

GoodFrench

French typo/spelling checker.

IgnoreNonVoice

This plugin ignores users who aren't voiced. Can also be configured to only work when the channel is moderated mode +m. Useful with lesser moderation (mode +z).

Iwant

Wishlist.

Kickme

Utility plugin, useful in nested commands.

LinkRelay

Highly configurable relay plugin.

ListEmpty

List empty channels (or with few people) the bot is on.

Listener

Run a telnet server and announce messages to a channel.

OEIS

Graps data from the Online Encyclopedia of Integer Sequences.

Pinglist

Keeps a list of people attending a meeting/game, and provides a pingall command to ping them all.

RateLimit

Provides rate-limiting of commands.

Seeks

Plugin for the Seeks search engine.

SupyML

Markup-based Supybot language supporting variables and loops.

Trigger

Utility plugin that runs commands when a join/part/whatever occurs.

Trivia

Trivia plugin.

Twitter

Advanced Twitter plugin, with multiple account support.

Untiny

URL unshortener plugin.

WebLogs

Display channel logs on the web (experimental!). This plugin requires Limnoria.

WebStats

Display channel stats on the web. This plugin requires Limnoria.

WikiTrans

Translates words/expressions using Wikipedia inter-language links.

Wikipedia

Wikipedia plugin.

supybot-plugins's People

Contributors

corvuscorax avatar cottongin avatar dubcheck avatar erika-mustermann avatar gaving avatar gfa avatar inhahe avatar jlu5 avatar kugelz avatar kytvi2p avatar lodriguez avatar mikaela avatar necessary129 avatar progval avatar qtlunya avatar rkitover avatar rtyler avatar shadowninja avatar tehpegasus avatar teward avatar truexfan81 avatar w1sht0l1v3 avatar xslicer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

supybot-plugins's Issues

bloquage

Parfois, quand on arrête le bot ou recharge WebStats, il reste coincé, et seul le signal 9 peut l'arrêter.

AttackProtector: nopunish isn't channel specific

AttackProtector nopunish isn't channel specific, but sometimes that might be needed with some channels. For example if there is a relaybot, and it's identified as anohter user, it's not always wanted that that user can flood.

New plugin: Biography

p0l | allow ppl to add personal details (email , web address , IM details , ftp details etc) and some to be public ,
| some private depending on how the person adding them would like them to be seen

LinkRelay doesn't relay messages containing a percent sign

ProgVal says it should relay them, but Mkaysi also has this issue, so it's not just me.

Edit: I looked at the logs a few minutes ago and I noticed that this traceback is related to LinkRelay.

ERROR 2011-08-28T12:16:57 supybot Uncaught exception:
Traceback (most recent call last):
  File "/usr/local/lib/python2.6/dist-packages/supybot/log.py", line 351, in m
    return f(self, *args, **kwargs)
  File "/usr/local/lib/python2.6/dist-packages/supybot/irclib.py", line 132, in __call__
    method(irc, msg)
  File "/home/nyuszika7h/nyuSupy/plugins/LinkRelay/plugin.py", line 192, in doPrivmsg
    self.sendToOthers(irc, channel, s, isPrivmsg=True)
  File "/home/nyuszika7h/nyuSupy/plugins/LinkRelay/plugin.py", line 319, in sendToOthers
    send(s)
  File "/home/nyuszika7h/nyuSupy/plugins/LinkRelay/plugin.py", line 293, in send
    s = s % ('@' + irc.network)
TypeError: not enough arguments for format string
ERROR 2011-08-28T12:16:57 supybot Exception id: 0x284f0

GUI is broken.

Issue sent from #limnoria at freenode by Mkaysi|E63 (registered as Mkaysi)

Choix de la langue

Il faudrait ajouter une variable de configuration spécifique aux canaux, permettant de sélectionner la langue utilisée/apprise par MegaHAL sur ce canal.

Mise en majuscule de caractères

Ce bug ne se produit que lorsque que MegaHAL est chargé.

À un moment aléatoire, le bot choisi une/des lettre(s) aléatoirement, et les converti en majuscule lorsque qu'il parse la liste des arguments.

WebStats: use a prefix URL.

Efreak | bug: WebStats references the css file as "/design.css", not as "design.css". I don't intend to run webstats in the root directory; I keep my logs there.

Erreurs

Il faudrait afficher les erreurs de MegaHAL comme des erreurs (irc.error() au lieu de irc.reply())

Twitter: long tweet

Web should have a custom error message instead of a generic error when a posted tweet is too long.

LinkRelay informs messages.log that it's not scraped for disabled networks

It will inform messages.log like this:
INFO 2011-06-29T23:55:00 supybot LinkRelay: IRC OperaNet not yet scraped.
INFO 2011-06-29T23:55:00 supybot LinkRelay: IRC GeekShed not yet scraped.
INFO 2011-06-29T23:55:00 supybot LinkRelay: IRC MerbosMagic not yet scraped.
INFO 2011-06-29T23:55:14 supybot LinkRelay: IRC QuakeNet not yet scraped.
INFO 2011-06-29T23:55:14 supybot LinkRelay: IRC FOSSnet not yet scraped.
INFO 2011-06-29T23:55:14 supybot LinkRelay: IRC OFTC not yet scraped.
INFO 2011-06-29T23:55:14 supybot LinkRelay: IRC OperaNet not yet scraped.
INFO 2011-06-29T23:55:14 supybot LinkRelay: IRC GeekShed not yet scraped.
INFO 2011-06-29T23:55:14 supybot LinkRelay: IRC MerbosMagic not yet scraped.
INFO 2011-06-29T23:55:41 supybot LinkRelay: IRC QuakeNet not yet scraped.
INFO 2011-06-29T23:55:41 supybot LinkRelay: IRC FOSSnet not yet scraped.
INFO 2011-06-29T23:55:41 supybot LinkRelay: IRC OFTC not yet scraped.
INFO 2011-06-29T23:55:41 supybot LinkRelay: IRC OperaNet not yet scraped.
INFO 2011-06-29T23:55:41 supybot LinkRelay: IRC GeekShed not yet scraped.
INFO 2011-06-29T23:55:41 supybot LinkRelay: IRC MerbosMagic not yet scraped.

Nicks

MegaHAL devrait détecter les nicks lorsqu'il les enregistre et les remplacer par le nick d'une personne aléatoire qui est sur le canal.

supybot.plugins.linkrelay.includenetwork doesn't affect anything

Linkrelay says

<Mkaysi> config help supybot.plugins.linkrelay
-LayBot- Determines whether this plugin is loaded bydefault. (Current value: True)

But this happens:

* LayBot (~TouchLay@2001:4ba0:cafe:4d8::1) liittyi kanavalle ##TouchLay.
<LayBot> * Mkaysi will now configure it to be more clever when relaying'
<LayBot> <Mkaysi> test
-LayBot/##TouchLay- <-- Mkaysi has left on LayNET"
-LayBot/##TouchLay- --> Mkaysi has joined on LayNET"
<Mkaysi> Good, notice"
<LayBot> <Mkaysi> Now it should tell name of network too, does it work?"
<Mkaysi> Mrrh"
<LayBot> <Mkaysi> Now factoids, I'll fix that later."

Maybe this has something to do with that fix which was commited previously to this plugin.

Anti-flood/spam

Un plugin permettant de protéger les canaux contre le flood et le spam est demandé (Abdur@#supybot@Freenode ; Lenoob@#libre@Epiknet)

Bot can't send CTCP ACTIONs

If I try to call a command (e.g. @action) which tries to send a CTCP ACTION (a.k.a. /me), it fails with this traceback in the console:

INFO 2011-07-13T20:26:10 supybot action called by "nyuszika7h!nyuszika7h@unaffiliated/nyuszika7h".
ERROR 2011-07-13T20:26:10 supybot Uncaught exception in Irc.takeMsg:
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/supybot/log.py", line 351, in m
    return f(self, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/supybot/irclib.py", line 735, in takeMsg
    msg = callback.outFilter(self, msg)
  File "/home/nyuszika7h/Supybot-plugins/LinkRelay/plugin.py", line 207, in outFilter
    self.registryValue('color', msg.args[0]))
  File "/home/nyuszika7h/Supybot-plugins/LinkRelay/plugin.py", line 139, in formatPrivMsg
    msg.args[0]),
NameError: global name 'msg' is not defined
ERROR 2011-07-13T20:26:10 supybot Exception id: 0xec19e

Note: This issue is happening a few updates ago. I'm using the testing branch.
It seems this issue is related to LinkRelay.

This has been fixed, but now there is another problem which prevents it from sending CTCP ACTIONs.

ERROR 2011-07-13T22:39:15 supybot Uncaught exception:
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/supybot/log.py", line 351, in m
    return f(self, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/supybot/irclib.py", line 132, in __call__
    method(irc, msg)
  File "/home/nyuszika7h/Supybot-plugins/LinkRelay/plugin.py", line 181, in doPrivmsg
    self.registryValue('color', channel))
  File "/home/nyuszika7h/Supybot-plugins/LinkRelay/plugin.py", line 139, in formatPrivMsg
    channel),
  File "/usr/lib/python2.7/site-packages/supybot/callbacks.py", line 1265, in registryValue
    group = group.get(name)
  File "/usr/lib/python2.7/site-packages/supybot/registry.py", line 220, in get
    return self.__getattr__(attr)
  File "/usr/lib/python2.7/site-packages/supybot/registry.py", line 212, in __getattr__
    self.__nonExistentEntry(attr)
  File "/usr/lib/python2.7/site-packages/supybot/registry.py", line 195, in __nonExistentEntry
    raise NonExistentRegistryEntry, s
NonExistentRegistryEntry: msg is not a valid entry in supybot.plugins.LinkRelay.colors
ERROR 2011-07-13T22:39:15 supybot Exception id: 0x67f47
```python

WebStats: links fail when no link

Traceback (most recent call last):
  File "/usr/lib/python2.6/SocketServer.py", line 283, in _handle_request_noblock
    self.process_request(request, client_address)
  File "/usr/lib/python2.6/SocketServer.py", line 309, in process_request
    self.finish_request(request, client_address)
  File "/usr/lib/python2.6/SocketServer.py", line 322, in finish_request
    self.RequestHandlerClass(request, client_address, self)
  File "/usr/lib/python2.6/SocketServer.py", line 617, in __init__
    self.handle()
  File "/usr/lib/python2.6/BaseHTTPServer.py", line 329, in handle
    self.handle_one_request()
  File "/usr/lib/python2.6/BaseHTTPServer.py", line 323, in handle_one_request
    method()
  File "/usr/local/lib/python2.6/dist-packages/supybot/utils/httpserver.py", line 98, in do_GET
    callback.doGet(self, '/' + '/'.join(self.path.split('/')[2:]))
  File "/home/progval/workspace/Supybot/Supybot-plugins/WebStats/plugin.py", line 138, in doGet
    else:
  File "/home/progval/workspace/Supybot/Supybot-plugins/WebStats/templates/links.py", line 63, in get
    divideBy = max([z for x,y,z in items])/10
ValueError: max() arg is an empty sequence

gtime

karthick87 | if i enter "~gtime
           | india" it should return
           | indian time,if "~gtime
           | UK" it shd returns uk
           | time..Is this pluggin
           | available with you now?

LinkRelay doesn't relay /me s.

LayNET:

<MichealH> Mkaysi: With +L the max bans goes from 100 to 1000
* Mkaysi wonders are 1000 bans required.
<MichealH> Maybe in the future :P
<MichealH> +P means if the channel ever empties becuase of a split or something the IRCD WILL NOT delete i

Freenode:

<LayBot> <MichealH@LayNET> Mkaysi: With +L the max bans goes from 100 to 1000
<LayBot> <MichealH@LayNET> Maybe in the future :P
<LayBot> <MichealH@LayNET> +P means if the channel ever empties becuase of a split or something the IRCD WILL NOT delete it
<LayBot> <Mkaysi@LayNET> Ok

Empêcher l'apprentissage

Il faudrait ajouter une variable de configuration spécifique aux canaux, permettant d'activer ou non l'apprentissage.

Idée initiale par Miocastoor@#libre@Epiknet.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.