New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

homebridge-weather

Package Overview
Dependencies
Maintainers
1
Versions
41
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

homebridge-weather

A homebridge temperature sensor for displaying the weather at your current location.

  • 1.6.3
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
24
decreased by-68%
Maintainers
1
Weekly downloads
 
Created
Source

homebridge-weather

Homebridge plugin for displaying the weather, humidity and min- or max-temperature from openweathermap.org

NPM version Dependency Status PRs Welcome Downloads

Installation

  1. Install Homebridge using: (sudo) npm install -g --unsafe-perm homebridge
  2. Install this plugin using: (sudo) npm install -g homebridge-weather
  3. Get an API-Key from openweathermap.org
  4. Find your city (make sure the query only returns a single result!). Alternatively you can use a different query parameter (see 'Fields')
  5. Update your Homebridge config.json using the sample below (append in the block 'accessories' not 'platforms').

Configuration

Weather

Example for configuration by City

"accessories": [
    {
      "accessory": "Weather",
      "apikey": "YOUR_KEY_HERE",
      "location": "Stuttgart,de",
      "name": "OpenWeatherMap Temperature"
    }
]

By ID

replace location with

"locationById": "2172797",

By Coordinates

replace location with

"locationByCoordinates": "lat=48.70798341&lon=9.17019367",

Forecast

To show daily min/max values, you have to add two additional accessories:

"accessories": [
  {
     "accessory":"Weather",
     "apikey":"YOUR_KEY_HERE",
     "locationByCoordinates":"lat=48.70798341&lon=9.17019367",
     "name":"Today Min",
     "type":"min"
  },
  {
     "accessory":"Weather",
     "apikey":"YOUR_KEY_HERE",
     "locationByCoordinates":"lat=48.70798341&lon=9.17019367",
     "name":"Today Max",
     "type":"max"
  }
]

You can add multiple accessories if you want to display additional information like min/max or the temperature of different locations. Just make sure that the field name is unique

Polling

By default, no polling-interval is specified. That means, the temperature is only updated when the Home-App is opened. There might be scenarios though, where you would want to periodically update the temperature e.g. as source for trigger-rules.

OpenWeatherMap has a generous amount of free calls per API-key: you can poll the temperature up to 60 times a minute. Beware that just because you can doesn't mean you should

I'd also suggest that you add a polling-interval only for the type current, since min and max are forecasts and probably won't change throughout the day.

Temperature profile with Elgato Eve App (FakeGato support)

With the enableHistory flag, the FakeGato-service is used to log temperature and humidity.

Example-Screenshot

Since FakeGato requires to log an entry at least every 10 minutes, this feature only becomes active if you set enableHistory to true AND define an pollingInterval!

This feature is currently experimental

Config file

Take a look at the example config.json

Fields:

  • accessory must be "Weather" (required).
  • apikey API-Key for accessing OpenWeatherMap API (required).
  • location city-name query string (resembles to q-parameter) (required).
  • OR locationById cityid query string (resembles to cityid-parameter) (required).
  • OR locationByCoordinates geo query string (resembles to geo-parameter) (required).
  • OR locationByZip zip query string (resembles to zip-parameter) (required).
  • name is the name of the published accessory (required).
  • showHumidity weather or not show the humidity (optional, only works for current weather not forecast, defaults to true).
  • nameHumidity humidity can have a different name (optional, only works if showHumidity is true, defaults to the same as name).
  • type the type of the displayed value, either "min", "max" or "current" (optional, defaults to "current")
  • pollingInterval the time (in minutes) for periodically updating the temperature (optional, defaults to 0 which means polling only happens when opening the Home-App)
  • enableHistory flag for enabling the FakeGato-service (see above) for temperature and humidity logging (optional, defaults to false, only works when polling is enabled)

Known Issues

Keywords

FAQs

Package last updated on 30 Jan 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc