MapReady entregaba el mapa en el useEffect de montaje, cuando el contenedor
puede no tener tamano todavia. En FiresMap eso hacia que getBounds() lanzara;
el catch solo avisaba ("Failed to set map bounds and scale") y mapSize nunca
se seteaba, con lo que la suscripcion de fuegos por viewport NI SE CREABA:
loading eterno y tile-pane vacio (0 capas) pese a haber 7470 fuegos.
Evidencia: en Meteor.connection._subscriptions solo aparecian activefirestotal,
activefiresuniontotal, settings y userData — ninguna por localizacion.
Ahora se entrega via map.whenReady() + invalidateSize(), solo cuando getSize()
no es 0, con reintento en el evento resize y entrega unica (flag delivered).
Toca el componente compartido por todos los mapas: al desplegar hay que
re-verificar /fires, /zones, /subscriptions, home y detalle de fuego.
SIN DESPLEGAR todavia (la imagen viva es la de 01:33, sin este cambio).
|
||
|---|---|---|
| .meteor | ||
| bin | ||
| client | ||
| cucumber | ||
| designs | ||
| docker | ||
| imports | ||
| packages | ||
| private | ||
| public | ||
| scripts | ||
| secrets | ||
| server | ||
| smoke | ||
| test/server | ||
| .dockerignore | ||
| .gitignore | ||
| .meteorignore | ||
| .npmrc | ||
| API.md | ||
| COPYRIGHT.md | ||
| docker-compose.staging.yml | ||
| docker-compose.yml | ||
| Dockerfile | ||
| fonts.json | ||
| History.md | ||
| LICENSE.md | ||
| package-lock.json | ||
| package.json | ||
| PENDIENTE.md | ||
| README.md | ||
| RUNBOOK.md | ||
| settings-development-sample.json | ||
| UPGRADE.md | ||
Tod@s contra el Fuego (All Against Fire)
This is web service that notifies about fires detected in an area of your interest. It helps the early detection of fires and facilitates local mobilization, while the professional extinction services arrive.
Install
Prerrequisites: a running meteor (we share the fuegos database with the telegram bot).
Install meteor and run meteor npm install and npm start
Some other development deps (in debian & ubuntu):
apt-get install libcairo2-dev libjpeg-dev libgif-dev pkg-config
GeoIP
Configure mirror and cron of the geoip database.
Telegram bot
See our bot.
More platforms and services in the future...
Tests
We do tests via:
TEST_PORT=3000 TEST_WATCH=1 TEST_CLIENT=0 MONGO_URL=mongodb://localhost:27017/fuegostest meteor --settings settings-development.json test --driver-package meteortesting:mocha --port 3010
# and
node_modules/.bin/chimp --watch --ddp=http://localhost:3000 --path=cucumber
# and
node_modules/.bin/chimp --ddp=http://localhost:3000 --path=cucumber
FAQ & Troubleshooting
Q - I get something like (...) /node_modules/fibers/future.js:280 (...) Error: Could not locate the bindings file. What can I do?
A - Try meteor npm rebuild
Data source acknowledgements
We acknowledge the use of data and imagery from LANCE FIRMS operated by the NASA/GSFC/Earth Science Data and Information System (ESDIS) with funding provided by NASA/HQ.
License
GNU APLv3. See our LICENSE, for a complete text.
Thanks & other acknowlegments
Thanks indeed to:
- Lupe Bao Reixa for Galician translation