A Slack bot to interact with a Tempest weather station, bringing local weather data into your favorite Slack channels.

Project maintained by zaskem Hosted on GitHub Pages — Theme by mattgraham

Slack Tempest WeatherBot

The Slack Tempest WeatherBot was developed by @zaskem to do something useful and practical with data from his Tempest weather station via its remote API.

The bot itself requires some form of personal access to a WeatherFlow Tempest station. Per the Tempest Remote Data Access Policy this is to be your own station, or definitely a non-commercial endeavor with a close friend otherwise.

The general idea is to have a Slack slash command (e.g. /weather) which responds with current conditions, a forecast, or other information in real-time. Tempest has web and mobile apps, but for folks who are always/often in Slack it’s simply more convenient and cool. An example response for current conditions (with and without an active alert):

example response for current conditions with alert

example response for current conditions

Bot Data Source and Information Flow

Data is sourced from the Tempest API, and a response crafted based on the Slack command arguments. Users can optionally add the private keyword in their command (e.g. /weather tomorrow private) which will send a private response versus the default behavior of posting to the current channel. Posts to Slack happen with a combination of Slack’s webhooks (private and error/debugging responses) and the Slack Web API.

A bot home tab, if enabled, provides a condensed view of current conditions, a four-hour forecast, and a five-day forecast.

Bot Source Code

The GitHub repo contains the basics for getting started with the bot in your own Slack workspace.

Bot Help & Usage Information

The “online” version of the bot’s help/usage content includes example response images for folks not familiar with Slack.