Integración domótica Canada wildfires, gratuita y de código abierto

Unofficial: wildfires near your home in Canada, fire weather index and danger (NRCan).
La documentación de esta integración la escribe su autor y, por ahora, solo está disponible en inglés.
Unofficial connector, not affiliated with Natural Resources Canada. It reads
the public layers of the Canadian Wildland Fire Information System (CWFIS,
cwfis.cfs.nrcan.gc.ca), no account, no key, and gives for each located house
of Gladys:
| Feature | What it is |
|---|---|
| Satellite hotspots (24 h) | number of heat detections of the last 24 hours within the radius |
| Nearest hotspot (km) | its distance; with none within the radius, the radius itself ("none closer"), never 0 |
| Active fire perimeters | estimated perimeters (M3 layer) touched by a hotspot in the last 72 h, within the radius (Canada only) |
| Nearest active perimeter | distance to its outline, 0 when the house is inside; with none, the radius |
| Fire Weather Index (FWI) | the FWI of the nearest fire weather station with a report under 36 h old, 200 km at most, rounded |
| Fire weather station | name, province, distance and time of the report of that station |
| Fire danger | class of the national map at the house: 1 low, 2 moderate, 3 high, 4 very high, 5 extreme (Canada) |
And two scene triggers: hotspot within a distance and fire danger raised.
Hotspots are satellite heat detections, not confirmed fires: a gas flare, a factory, an agricultural burn give some too, and their time lags a few hours behind the satellite pass. The layer covers North America; the perimeters and the danger map cover Canada. This is information, not an alert nor an evacuation system: follow the orders of your province and your municipality.
Never tested with a real device (there is none: it is a public service). The module was tried against the real service on 2026-10-29 (Fredericton, Kamloops, Portland) and its tests replay real answers of that day.
Contains information licensed under the Open Government Licence – Canada (Natural Resources Canada, CWFIS).
Installation
- Install the integration from the Gladys store. It asks for the location of the houses (Settings > Houses): that is what puts the houses on the map.
- Set the location of at least one house in Gladys.
- Optional: change the radius (50 km by default, 5 to 300 km), the read interval (30 minutes by default, 15 to 180) and the language of the device names and directions.
- Open Discovery: each located house is offered (5 at most). Create the device: the reads then start, at the next due time.
What is read, and when
At each read, one request at a time, at least a second between two:
- the date of the newest hotspot of the whole layer, and of the last update of the perimeters: how fresh both layers are;
- the date of the danger map (legend of the map server);
- with no device created, or when the house of a device is gone, nothing is sent: the houses of Gladys are looked at again every minute;
- for each house with its device: the hotspots and perimeters in a box holding the radius, the stations within 200 km, and the danger map within 25 km of the cell of the house (read again with a new map date, or after 6 hours). For a house outside Canada, neither the perimeters nor the danger map are asked.
Your exact location is not sent: every box is built from the 0.1° × 0.1° cell
holding the house only (about 11 km × 7 km), so that crossing them tells
nothing finer than that cell; the distances are computed in Gladys. Near the
date line (the Aleutians), the box goes round the Earth. The server offers neither
ETag nor Last-Modified: the interval is the only brake, and the next read
does not come sooner than the interval, neither after a restart (the time of the
last read is kept in /data), nor through the Test button, Discovery or
the creation of a device.
No invented value
- Hotspot layer empty, or its newest hotspot over 18 h old: the source is silent or stale, the hotspots are not published (not 0 either) and the status says so.
- Perimeters not updated for 7 days (season over): not published.
- The perimeters and the danger map cover Canada only. "In Canada" is decided in Gladys, on a bundled outline of Canada and the United States (Natural Earth 1:10m, public domain, simplified: 217 KB): exact along the 49th parallel, and elsewhere a house within 1 km of the border (the St. Croix, Detroit, St. Clair, Niagara, St. Lawrence, St. Marys and Rainy rivers; Stanstead), or with both countries within 2 km across a strait (Lubec and Campobello), is "cannot tell". Outside Canada or in doubt: neither perimeters nor danger (nothing rather than a false 0), and the status says why. A Canadian shore (within 10 km of the outline) counts as Canada. A small island or a coast drawn coarsely by the simplified outline, more than 10 km off it, counts as "outside Canada": no perimeters nor danger there, the hotspots are still read (about 0.5 % of the fire weather stations of Canada: Brier Island, Cape Sable Island and St. Paul Island in Nova Scotia, Sagona Island in Newfoundland, Île aux Perroquets and Île Rouge in Quebec, Sartine, Herbert and Digby islands (the Prince Rupert airport, not the town) and the Lucy Islands in British Columbia).
- Danger class: that of the area of the map holding the house, else that of the nearest area within 25 km (the map leaves out shores and large cities: Toronto is 1.5 km from the nearest area, Montréal 0.4 km), its distance said in the status. Beyond 25 km (the far North may be uncovered, Iqaluit for instance): no class, and the status says so.
- An unreadable record (a field renamed, a date without zone, a geometry without outline, an unknown danger class) or an answer cut at its page size: for the perimeters and the danger map, the part is not published and the status says why. For the hotspots, up to a tenth of unreadable records, or over 20,000 hotspots in the box: the readable ones within the radius are published as a minimum ("at least N" in the status) when there is one at least; with none readable within the radius, the count is unknown (an unreadable one may be 1 km away) and nothing is published, never 0; the nearest is not published either way. Beyond a tenth, nothing.
- No station with a report under 36 h old and an FWI within 200 km: FWI and station not published (off season, November to March, this is the normal case).
- Danger map dated more than 2 days ago: danger not published. When its date is unreadable, the map is read anyway (an unknown date does not make it stale).
- A part that fails (HTTP error, answer too large, error report of the server) does not keep the others from being read and published.
- Unchanged values are sent again every 3 hours, so that they stay dated.
/dataunreadable at the start, not writable or not answering: the reads go on (a write is waited for 2 seconds at most) and the status says so, since a restart would then keep neither the interval nor the pause.- A configuration saved during a read drops it (nothing of it is published): the next one comes when the interval is due, with the new configuration.
Scene triggers
- Hotspot within a distance (5 to 300 km): a hotspot appears closer than the chosen distance where there was none at the previous read. Once per episode: it re-arms after two reads in a row without any hotspot at that distance (a read with records missing and none readable at that distance does not count, as a failed read: an unreadable hotspot never makes the same fire alert twice). Beyond the radius of the configuration, the radius applies. Variables: distance (km), direction (N, NE...), bearing, count, time of the detection, satellite.
- Fire danger raised: the class reaches the chosen level (moderate, high, very high, extreme) coming from below it; a jump from low to high fires "moderate" and "high". Variables: current level and its name, previous level, FWI of the station, date of the map.
Nothing fires at the first read of a house (no known value before). The memory
of the triggers is kept in /data for 48 hours, so that a restart sees a rise
that happened meanwhile.
Status
The status of the configuration page gives the time of the last read, what was
read for each house, what was not and why (stale layer, off season, outside
Canada, error), and recalls that hotspots are not confirmed fires. A server
asking to wait (HTTP 429 or 5xx) pauses the reads from 1 minute to 6 hours
(doubled each time, or its Retry-After when longer), a pause kept in /data.
Server unreachable: new try at the next interval.
The Test button reads at once when a read is due, else it shows the last one and the time of the next. Without any device created, it makes one small request (the freshness of the hotspots), counted as the read.
Troubleshooting
- "No located house": set the location of a house in Gladys (Settings > Houses), then run Discovery again.
- "The houses of Gladys could not be read": the integration was refused the location; new try every minute, without any request to the CWFIS.
- No FWI in winter: normal, the fire weather stations publish during the fire season only.
Data and licence
Source: Natural Resources Canada, Canadian Wildland Fire Information System
(https://cwfis.cfs.nrcan.gc.ca/), WFS layers hotspots_last24hrs,
m3_polygons_current, firewx_stns_current, fdr_current_shp. Open
Government Licence – Canada
(https://open.canada.ca/en/open-government-licence-canada). The integration
introduces itself to the server under its own name (User-Agent: gladys-feux-canada/0.1.0), never as a browser.
Parámetros de configuración
Estos son los parámetros que Canada wildfires te pide en su pantalla de configuración en Gladys.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| Wildfires around your houses | section | No | Unofficial, not affiliated with Natural Resources Canada. Reads the public CWFIS layers (no account, no key): one device per located house with the satellite hotspots of the last 24 h within the radius, active fire perimeters, the Fire Weather Index (FWI) of the nearest station and the fire danger class (Canada), plus two scene triggers. Hotspots are heat detections, not confirmed fires, a few hours late. Information only, never an evacuation system: follow the orders of your province. Off season (November to March) the layers are stale or empty: the status says so, nothing is published as 0. Your exact location is never sent. Contains information licensed under the Open Government Licence - Canada. Never tested with a real device (a public service), tried against the real service. |
| Radius around the house (km) | number | No | Only the hotspots and perimeters closer than this count. With none, the distance shown is the radius itself ("none closer"). The "hotspot within X km" trigger cannot see beyond it. |
| Read interval (minutes) | number | No | The hotspots are updated several times a day, the danger and the FWI once a day: 30 minutes is plenty. One request at a time, a few per house. |
| Language of the device names and directions | select | No | The names of the devices offered in Discovery, and the direction of the nearest hotspot in the scenes (N, NE, E... English: W for west). |
Cómo instalar Canada wildfires en Gladys
- En Gladys, abre Integraciones: Canada wildfires aparece en el catálogo junto a las integraciones nativas, con una insignia de comunidad.
- Haz clic en Instalar. Gladys descarga la imagen Docker (
ghcr.io/lm1lc3n7/gladys-feux-canada:0.1.1), la ejecuta en un entorno aislado del núcleo y genera la interfaz de la integración (dispositivos, descubrimiento y configuración). - Abre la pantalla de Configuración de la integración, rellena los parámetros y guarda.
- También puedes instalarla directamente desde la URL de su repositorio: https://github.com/LM1LC3N7/gladys-feux-canada.
Canada wildfires requiere Gladys >=5.1.0. El catálogo de Gladys se actualiza cada hora, así que una nueva versión está disponible como máximo una hora después de publicarse.
¿Todavía no usas Gladys? Es gratuito y de código abierto: sigue la guía de instalación para empezar.
Sobre las integraciones externas
Canada wildfires es una integración externa: una integración comunitaria empaquetada como contenedor Docker y publicada en GitHub. Gladys la instala con un clic y la ejecuta en un entorno aislado del núcleo. La publica y mantiene LM1LC3N7, no el equipo principal de Gladys.
- Explorar todas las integraciones, nativas y de la comunidad
- Crear y publicar tu propia integración externa
- Código fuente en GitHub — fuente de esta documentación