TkTech / notifico

IRC Message Relay
http://n.tkte.ch
MIT License
155 stars 40 forks source link

New Message Protocol to facilitate new features #23

Closed TkTech closed 11 years ago

TkTech commented 11 years ago

The current Hook => BotManager protocol is extremely limited and makes some more interesting customizations annoying and repetitive, and makes some which could/should be set by ops in the channel impossible.

TkTech commented 11 years ago
{
    // Destination details
    "to": {
        "channel": "#helium",
        "host": "irc.freenode.net",
        "port": 6669,
        // Network password, as defined in the RFC
        "password": null,
        // Channel key, as defined in the RFC
        "key": null
    },
    // The before lines are never filtered
    // when length restrictions are set.
    "before": [
        "gorlak pushed 11 commits to reflect_refactor [+0/-0/±36] http://git.io/x6ECFQ"
    ],
    "lines": [
        "Geoff Evans e3ae5dd - merge from linux",
        "Geoff Evans 7ac1f52 - a bit more cleanup"
    ],
    // The after lines are never filterd when length
    // restrictions are set.
    "after": [],
    "prefix": "[Math] ",
    // Details of the originating source.
    "from": {
        "project": "helium",
        "user": "gorlak",
        "user_id": 1
    },
    // Optional key for BotManager's exposed to the public
    "token": null
}
TkTech commented 11 years ago

Maybe an "excess" tag as well, which would default to "(and {size} more messages...)" customizable per hook which is used when the channel settings are trimming a message.

Ex:

{
    "excess": "(and {size} more commits...)"
}