Uses the Overpass API for Augmented Diffs, loads data with CORS and exposes a stream.
Without browserify: copy osmstream.js
. That works as an osmStream
global
and with UMD.
With browserify npm install osm-stream
s.once(function(err, data) { }, [bbox])
Get one batch of changes right now.
s.run(function(err, stream), duration, [dir], [bbox], [maxRetries])
duration is how long between runs: default 1 minute
dir is direction: either 1
, the default, or -1
for rewind.
maxRetries: How often to retry fetching the current diff before skipping it.
s.runFn(function(err, stream), duration, [dir], [bbox], [maxRetries])
Same as .run
but instead of returning a stream that pipes objects, calls
the callback once per object.
duration is how long between runs: default 1 minute
dir is direction: either 1
, the default, or -1
for rewind.
maxRetries: How often to retry fetching the current diff before skipping it.
var osmStream = require('osm-stream');
// re-request every 60s
osmStream
.run(function(err, stream) {
stream.on('data', function(d) {
console.log(d);
});
});
// re-request every 60s
// callback-style interface
osmStream
.runFn(function(err, data) {
// ...
});
// one-time request
osmStream
.once(function(err, d) {
console.log(d);
});
The stream returned uses through, so you can end it and that will also stop the run cycle.
- osm-stream-process in Python