NOTICE: This project is no longer maintained, as Dark Sky is sunsetting their API, and new keys are not being offered as of 2020-03-31
hubot-forecast
A hubot script to alert for inclement weather.
All credit to @farski for the original version.
See src/forecast.coffee
for full documentation.
Important notice for Slack users: you will need hubot-slack >= 3.3.0 due to the usage of Slack attachments.
Installation
In hubot project repo, run:
$ npm install hubot-forecast --save
Then add hubot-forecast to your external-scripts.json
:
["hubot-forecast"]
Finally, set the necessary EnvVars:
$ heroku config:set \
HUBOT_FORECAST_KEY=... \
HUBOT_FORECAST_ROOM='some_room@conf.hipchat.com' \
HUBOT_LATITUDE=12.345 \
HUBOT_LONGITUDE=67.890
You can find your Dark Sky API key on their developers’ page, and you can use this tool to determine your latitude & longitude from an address.
As for the HUBOT_FORECAST_ROOM
, that depends on your adapter; the example above is for HipChat, for Slack, it would be something like general
.
If you live in the US, and wish to use Fahrenheit, you’ll want to:
$ heroku config:set HUBOT_FORECAST_UNITS=us
Otherwise your bot will report in Celsius, which is the default.
If you’d like to only report based on a particular probability, you can set that like so (i.e., a 75% chance being the default):
HUBOT_FORECAST_PROBABILITY_THRESHOLD=0.75
Some additional EnvVars exist if you want to customize the “working time” for the forecast reporting (default values shown below):
HUBOT_FORECAST_DAYS=mon,tue,wed,thu,fri
HUBOT_FORECAST_TIME=11-23