Usage

Humorbot adds the /frink and /morbo commands to your Slack team, depending on which app(s) are installed. These are used to search Frinkiac and Morbotron respectively.

Frinkiac and Morbotron take your search query and match it against the show's subtitles. This is unlike other image plugins for Slack which generally use tags or titles (along with some weighting for the most relevant result). So, searching Morbotron for "Bender" may not actually get a pic of Bender as the first result, it may be a frame in which Bender's name is spoken by another character.

Humorbot provides a few different ways to generate both still images and animated GIFs:

  1. "I'm feeling lucky" mode
  2. random mode
  3. images mode
  4. gif mode

The /morbo help and /frink help commands will display usage information.

"I'm feeling lucky" mode

Executed with just a search string, the /frink and /morbo commands will return the first result for the search string, and the dialogue will be used as a text overlay. For example:

/frink computer hacking

/morbo crushed pelvises

Sometimes this is exactly what you want, and can yield some pretty hilarious results when it's not.

If you want to provide different a different text overlay, separate the search string and text overlay with |. For example:

/frink computer hacking | all this slack bot dev is making me thirsty

/morbo do the hustle | do the bartman

This applies to all the other command types as well. Anywhere there's a search string, you can provide a search string and text overlay separated by |.

random mode

If random is provided as the first argument in the query, a random frame from the search results will be chosen, and immediately sent to the channel. For example:

/frink random d'oh

/morbo random good news

images mode

If images is provided as the first argument in the query, you will be presented with a selection of matching frames in what Slack calls an "ephemeral" message (which is displayed only to you, and not sent to the channel). Each frame has a Send button which, when pressed, will dismiss the ephemeral message and send the selected frame to channel. At the bottom there is a Cancel button which will dismiss the ephemeral message, and nothing will be sent to channel. For example:

The ephemeral message presented on initially executing /morbo images seymour

The message sent to channel when an image is chosen and the Send button pressed.

gif mode

If gif is provided as the first argument in the query, the first search result will be selected (the same as "I'm feeling lucky" mode) and then a set of context frames (4 seconds either side) will be retrieved. An animated GIF will be built from these frames, and presented in an ephemeral message with Send, Edit and Cancel buttons. For example:

The ephemeral message presented on initially executing /morbo gif do the hustle

The message sent to channel upon pressing Send

Send will dismiss the ephemeral message and send the GIF to channel as is, Cancel will just dismiss the ephemeral message, sending nothing to channel, and Edit will present a new ephemeral message containing an interface with which the user can edit the GIF parameters. This interface looks like this:

The editing interface presented upon pressing the Edit button.

The editing interface after selecting a different start frame.

The Start frame and End frame buttons on each frame allow you to designate the frames at which to start and end the animated GIF. The currently selected frame range will be highlighted with a green stripe down the left hand side of the frame rows in the editing interface. At the bottom, the Send button will dismiss the editing interface and send the edited GIF to channel, the Cancel button will dismiss the editing interface, sending nothing to channel, and the Hide text button will hide the text overlay in the GIF.

Support

If you have feature requests or issues, please open a ticket on GitHub, get at snare on twitter or send an email.