Giter Site home page Giter Site logo

hubot-barkeep's Introduction

hubot-barkeep

Enables hubot to suggest a beer for your next night on the town.

See src/beer-me.coffee for full documentation.

Build and Static Analysis

Build Status Codacy Badge

Installation

In hubot project repo, run:

npm install hubot-barkeep --save

Then add hubot-barkeep to your external-scripts.json:

[
  "hubot-barkeep"
]

Configuration

The following configuration is required in order to run the yelp script:

HUBOT_UNTAPPD_CLIENT_ID       # The Untappd API client ID
HUBOT_UNTAPPD_CLIENT_SECRET   # The Untappd API client secret

All of these should be configured using the API keys given to you when you signed up for an Untappd Developer API account.

Sample Interaction

The hubot-barkeep package gives your hubot the ability to search for new and exciting beers to try next time you go out. For example, if you're a fan of stout, ask your bot to beer you some stout by typing hubot beer me stout:

<You> hubot beer me stout
<hubot> Give this beer a try:
<hubot> Stone Brewing Co. Coffee Milk Stout
<hubot> Stout - Milk / Sweet
<hubot> URL: http://www.stonebrewing.com/

Mmmmm... Coffee stout.

Let's say that types of beer aren't really your style and you just like beers from certain breweries. The Untappd API allows you to search for beer based on a brewery or a beer type. Try replacing stout with boulevard:

<You> hubot beer me boulevard
<hubot> Give this beer a try:
<hubot> Boulevard Brewing Co. Collaboration No. 5 - Tropical Pale Ale
<hubot> Pale Ale - American
<hubot> URL: http://www.boulevard.com/

Tropical Pale Ale huh? I might have to try that sometime.

Untappd will get upset if you don't provide it a term or if you provide it a term that it doesn't recognize:

<You> hubot beer me asdljfkhsdlkjfh
<hubot> Couldn't find a beer for you. Try again.
<You> hubot beer me
<hubot> Error occurred: 500 error text: You didn't search for anything! Please try again.

Just be sure to provide the script a term it can use to search with and everything will be ok.

Powered by

Untappd

CoffeeScript

Hubot

hubot-barkeep's People

Contributors

jvarness avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Forkers

ryanmcclung

hubot-barkeep's Issues

Descriptions can be soooooooooooooo looooooooooooooooooooong

Like this:

<Kramer> pharmbot beer me ipa
<pharmbot> Give this beer a try:
<pharmbot> Harpoon Brewery Harpoon IPA
<pharmbot> IPA - American
<pharmbot> We started brewing this beer as a summer seasonal in 1993.  There were some great IPAs out in the Pacific Northwest, but no local IPAs on the east coast.  We wanted to have a local IPA, so we brewed one.  People absolutely loved it, and so did we.  So we made it a year-round beer, and it’s now our bestselling beer and our flagship.
<pharmbot> Description: Since its introduction, Harpoon IPA has remained unique in its ability to balance hop bitterness with a strong malt backbone. Dry-hopped with Cascade hops, it has a floral hop aroma and a finish that is bitter (it is an IPA after all!) without being harsh or astringent. Combined with a malty sweetness and the fruity esters of our proprietary yeast, those hops create a beer that is wonderfully hoppy but clean and refreshing enough to
<pharmbot> enjoy a few of - and we hope you do.    
<Jake> I uh...
<Jake> Should probably fix that too...
<Kramer> lol

If only there was a better way....

Make a configuration that will pull beer randomly from a file

When you don't give hubot any input other than beer me, it hates you for it because it doesn't know how to get you a beer selection.

We should have some sort of default configuration that allows hubot to randomly select a beer for you based on criteria in a file.

JS and Unit Tests

Hubot scripts support JavaScript now, which might make unit testing a little easier to do.

Update this hubot package to not use CoffeeScript, and write more tests.

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.