1.2.0 • Published 8 years ago

hubot-factoids v1.2.0

Weekly downloads
9
License
MIT
Repository
github
Last release
8 years ago

Hubot Factoids

A factoids implementation for Hubot, inspired by oftn-bot.

Build Status

Features

  • Supports hubot-auth.
  • @mention support: factoid value will be directed at mentioned user.
  • Customizable prefix
  • Aliases: point a factoid at the value of another factoid.
  • Substitutive editing using sed-like syntax.
  • Factoid history: any time a new value is set on a factoid, the name of the user, current date, previous value and new value are recorded
  • Factoid popularity: currently only visible in the raw data
  • HTTP route to view raw JSON factoid data.

Installation

npm install hubot-factoids

Configuration

HUBOT_BASE_URL required - URL of Hubot (ex. http://myhubothost.com:5555/)

HUBOT_FACTOID_PREFIX optional - prefix character to use for retrieving a factoid (defaults to ! if unset)

Commands

Create/update a factoid

Creates a new factoid if it doesn't exist, or overwrites the factoid value with the new value. Factoids maintain a history (can be viewed via the factoid URL) of all past values along with who updated the value and when.

Note: <factoid> can be any string which does not contain = or =~ (these reserved characters delimit the factoid and its value), although special characters should be avoided.

hubot: learn <factoid> = <details>

Inline editing a factoid

If you prefer, you can edit a factoid value inline, using a sed-like substitution expression.

hubot: learn <factoid> =~ s/expression/replace/gi

hubot: learn <factoid> =~ s/expression/replace/i

hubot: learn <factoid> =~ s/expression/replace/g

hubot: learn <factoid> =~ s/expression/replace/

Set an alias

An alias will point to the specified pre-existing factoid and when invoked will return that factoid's value.

hubot: alias <factoid> = <factoid>

Forget a factoid

Disables responding to a factoid. The factoid is not deleted from memory, and can be re-enabled by setting a new value (its complete history is retained).

hubot: forget <factoid>

Get URL to factoid data

Serves a page with the raw JSON output of the factoid data

hubot: factoids

Recall a factoid value

Recall the value of the given factoid.

Note: Hubot should not be directly addressed.

!<factoid>

Can be combined with a @mention to direct the message at another user:

!factoid @user

Hubot will respond accordingly:

Hubot> @user: factoid value

Search for a factoid

Find a factoid containing the given string. The string can be matched in either the factoid key or value.

hubot: search foobar

Drop a factoid

Permanently removes a factoid—this action cannot be undone. If hubot-auth script is loaded, "admin" or "factoids-admin" role is required to perform this action. It's recommended you use the forget command instead of drop.

hubot: drop <factoid>

1.2.0

8 years ago

1.1.0

8 years ago

1.0.1

9 years ago

1.0.0

9 years ago

0.2.7

10 years ago

0.2.6

10 years ago

0.2.5

10 years ago

0.2.4

11 years ago

0.2.3

11 years ago

0.2.1

11 years ago

0.2.0

11 years ago

0.1.1

11 years ago

0.1.0

11 years ago