diff --git a/lib/sources/librelinkup.js b/lib/sources/librelinkup.js index e7151bd..42b3b3a 100644 --- a/lib/sources/librelinkup.js +++ b/lib/sources/librelinkup.js @@ -155,12 +155,12 @@ function linkUpSource (opts, axios) { } // var last_glucose_at = new Date(last_known.sgvs.mills); var last_glucose_at = last_known.entries; - var missing = ((new Date( )).getTime( ) - last_glucose_at.getTime( )) / (1000 * 60 * 5) + var missing = ((new Date( )).getTime( ) - last_glucose_at.getTime( )) / (1000 * 60 * opts.linkUpInterval) if (missing > 1 && missing < 3) { console.log("READJUSTING SHOULD MAKE A DIFFERENCE MISSING", missing); } - var next_due = last_glucose_at.getTime( ) + (Math.ceil(missing) * 1000 * 60 * 5); + var next_due = last_glucose_at.getTime( ) + (Math.ceil(missing) * 1000 * 60 * opts.linkUpInterval); var buffer_lag = 18000; // 18 second buffer var jitter = Math.floor(Math.random( ) * 1000 * 18); // 18 second random var align_to = next_due + buffer_lag + jitter; @@ -200,7 +200,7 @@ function linkUpSource (opts, axios) { maxRetries: 2 }, // expect new data 5 minutes after last success - expected_data_interval_ms: 5 * 60 * 1000, + expected_data_interval_ms: opts.linkUpInterval * 60 * 1000, backoff: { // wait 2.5 minutes * 2^attempt interval_ms: 2.5 * 60 * 1000 @@ -220,6 +220,7 @@ linkUpSource.validate = function validate_inputs (input) { linkUpUsername: input.linkUpUsername, linkUpPassword: input.linkUpPassword, linkUpPatientId: input.linkUpPatientId, + linkUpInterval: input.linkUpInterval || 5, linkUpVersion: input.linkUpVersion || Defaults.Version, linkUpProduct: input.linkUpProduct || Defaults.Product, baseURL