Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 45 additions & 7 deletions lib/language.js
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,6 @@ function init() {
,bg: 'Активиране на порта'
,hr: 'Slušanje na portu'
,it: 'Porta in ascolto'
,dk: 'Lytter på port'
,fi: 'Kuuntelen porttia'
,nb: 'Lytter på port'
,he: 'מקשיב על פתחה'
Expand Down Expand Up @@ -2041,7 +2040,6 @@ function init() {
,'No API secret hash stored yet. You need to enter API secret.' : {
cs: 'Není uložený žádný hash API hesla. Musíte zadat API heslo.'
,de: 'Keine API-Prüfsumme gespeichert. Bitte API-Prüfsumme eingeben.'
,es: 'No se ha almacenado ningún hash todavía. Debe introducir su API secreto.'
,es: 'No se ha almacenado ningún hash todavía. Debe introducir su secreto API.'
,fr: 'Pas de secret API existant. Vous devez en entrer un.'
,el: 'Δεν υπάρχει αποθηκευμένο συνθηματικό API. Πρέπει να εισάγετε το συνθηματικό API'
Expand Down Expand Up @@ -6603,7 +6601,7 @@ function init() {
,fr: 'Cet outil cherche et efface les valeurs CGM dont la date est dans le futur'
,el: 'Αυτή η ενέργεια αφαιρεί δεδομένα αιθητήρα τα οποία εισήχθησαν με λάθος ημερομηνία και ώρα, από τη βάση δεδομένων'
,de: 'Finde und entferne CGM Daten in der Zukunft, die vom Uploader mit falschem Datum/Uhrzeit erstellt wurden.'
,es: 'Este comando encuentra y elimina datos del sensor futuros creados por actualizaciones con errores en fecha/hora'
,es: 'Este comando encuentra y elimina datos del sensor futuros creados por actualizaciones con errores en fecha/hora'
,dk: 'Denne handling finder og fjerner CGM data i fremtiden forårsaget af indlæsning med forkert dato/tid.'
,bg: 'Тази опция ще намери и премахне данни от сензора в бъдещето, създадени поради грешна дата/време.'
,ro: 'Instrument de căutare și eliminare a datelor din viitor, create de uploader cu ora setată greșit'
Expand Down Expand Up @@ -7654,7 +7652,7 @@ function init() {
,fr: 'mg/dL ou mmol/l par unité d\'insuline. Le rapport représentant la modification de la glycémie résultant de l\'administration d\'une unité d\'insuline.'
,el: 'mg/dl ή mmol/L ανά μονάδα U ινσουλίνης. Το πόσες μονάδες ρίχνει τη γλυκόζη αίματος μία μονάδα U ινσουλίνης'
,de: 'mg/dL oder mmol/L pro Einheit Insulin. Verhältnis von BG-Veränderung je Einheit Korrekturinsulin.'
,es: 'mg/dl o mmol/L por unidad Insulina. La relación de la caída de glucosa y cada unidad de insulina de corrección administrada.'
,es: 'mg/dl o mmol/L por unidad Insulina. La relación de la caída de glucosa y cada unidad de insulina de corrección administrada.'
,sv: 'mg/dl eller mmol per enhet insulin. Hur varje enhet insulin sänker blodsockret'
,nb: 'mg/dl eller mmol/l per enhet insulin. Beskriver hvor mye blodsukkeret senkes per enhet insulin.'
,fi: 'mg/dL tai mmol/L / 1 yksikkö insuliinia. Suhde, joka kertoo montako yksikköä verensokeria yksi yksikkö insuliinia laskee.'
Expand Down Expand Up @@ -8184,7 +8182,7 @@ function init() {
,sk: 'Operácia'
,pl: 'Operacja'
,pt: 'Operação'
,nl: 'Operatie'
,nl: 'Operatie'
,ko: '동작'
,it: 'Operazione'
,zh_cn: '操作'
Expand Down Expand Up @@ -9796,7 +9794,7 @@ function init() {
,ro: 'Ignoră alarma de hiper deoarece este suficientă insulină activă IOB'
,fr: 'Alarme haute ignorée car suffisamment d\'insuline à bord (IOB)'
,bg: 'Изключване на аларма за висока КЗ, тъй като има достатъчно IOB'
,es: 'Ignorar alarma de Hiperglucemia al tener suficiente insulina activa'
,es: 'Ignorar alarma de Hiperglucemia al tener suficiente insulina activa'
,ru: 'Отключение предупреждение о высоком СК ввиду достаточности инсулина в организме'
,sv: 'Snoozar höglarm då aktivt insulin är tillräckligt'
,nb: 'Utsetter høyalarm siden det er nok aktivt insulin'
Expand All @@ -9818,7 +9816,7 @@ function init() {
,nb: 'Sjekk blodsukker, på tide med bolus?'
,fi: 'Tarkista VS, aika bolustaa?'
,pt: 'Meça a glicemia, hora de bolus de correção?'
,es: 'Controle su glucemia, ¿quizás un bolo Insulina?'
,es: 'Controle su glucemia, ¿quizás un bolo Insulina?'
,sk: 'Skontrolovať glykémiu, čas na bolus?'
,it: 'Controllare BG, il tempo del bolo?'
,nl: 'Controleer BG, tijd om te bolussen?'
Expand Down Expand Up @@ -11326,6 +11324,46 @@ function init() {
, sv: 'no'
, zh_cn: 'no'
, zh_tw: 'no'
},
'alexaUploadBattery': {
en: 'Your uploader battery is at %1'
, de: 'Der Akku deines Uploader Handys ist bei %1'
},
'alexaReservoir': {
en: 'You have %1 units remaining'
, de: 'Du hast %1 Einheiten übrig'
},
'alexaPumpBattery': {
en: 'Your pump battery is at %1 %2'
, de: 'Der Batteriestand deiner Pumpe ist bei %1 %2'
},
'alexaLastLoop': {
en: 'The last successful loop was %1'
, de: 'Der letzte erfolgreiche Loop war vor %1'
},
'alexaLoopNotAvailable': {
en: 'Loop plugin does not seem to be enabled'
, de: 'Das Loop Plugin scheint nicht aktiviert zu sein'
},
'alexaLoopForecast': {
en: 'According to the loop forecast you are expected to be %1 over the next %2'
, de: 'Entsprechend der Loop Vorhersage landest du bei %1 während der nächsten %2'
},
'alexaForecastUnavailable': {
en: 'Unable to forecast with the data that is available',
de: 'Mit den verfügbaren Daten ist eine Loop Vorhersage nicht möglich'
},
'alexaRawBG': {
en: 'Your raw bg is %1'
, de: 'Dein Rohblutzucker ist %1'
},
'alexaOpenAPSForecast': {
en: 'The OpenAPS Eventual BG is %1'
, de: 'Der von OpenAPS vorhergesagte Blutzucker ist %1'
},
'alexaCOB': {
en: '%1 %2 carbohydrates on board'
, de: '%1 %2 Gramm Kohlenhydrate wirkend.'
},
'Fat [g]': {
cs: 'Tuk [g]'
Expand Down
15 changes: 11 additions & 4 deletions lib/plugins/openaps.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,12 @@ var levels = require('../levels');

function init(ctx) {
var utils = require('../utils')(ctx);

var openaps = {
name: 'openaps'
, label: 'OpenAPS'
, pluginType: 'pill-status'
};

var translate = ctx.language.translate;
var firstPrefs = true;

openaps.getPrefs = function getPrefs(sbx) {
Expand Down Expand Up @@ -450,14 +449,22 @@ function init(ctx) {

function alexaForecastHandler (next, slots, sbx) {
if (sbx.properties.openaps && sbx.properties.openaps.lastEventualBG) {
var response = 'The OpenAPS Eventual BG is ' + sbx.properties.openaps.lastEventualBG;
var response = translate('alexaOpenAPSForecast', {
params: [
sbx.properties.openaps.lastEventualBG
]}
);
next('Loop Forecast', response);
}
}

function alexaLastLoopHandler (next, slots, sbx) {
console.log(JSON.stringify(sbx.properties.openaps.lastLoopMoment));
var response = 'The last successful loop was ' + moment(sbx.properties.openaps.lastLoopMoment).from(moment(sbx.time));
var response = translate('alexaLastLoop', {
params: [
moment(sbx.properties.openaps.lastLoopMoment).from(moment(sbx.time))
]
});
next('Last loop', response);
}

Expand Down
13 changes: 11 additions & 2 deletions lib/plugins/pump.js
Original file line number Diff line number Diff line change
Expand Up @@ -136,14 +136,23 @@ function init (ctx) {
};

function alexaReservoirHandler (next, slots, sbx) {
var response = 'You have ' + sbx.properties.pump.pump.reservoir + ' units remaining';
var response = translate('alexaReservoir', {
params: [
sbx.properties.pump.pump.reservoir
]
});
next('Remaining insulin', response);
}

function alexaBatteryHandler (next, slots, sbx) {
var battery = _.get(sbx, 'properties.pump.data.battery');
if (battery) {
var response = 'Your battery is at ' + battery.value + ' ' + battery.unit;
var response = translate('alexaPumpBattery', {
params: [
battery.value,
battery.unit
]
});
next('Pump battery', response);
} else {
next();
Expand Down
1 change: 1 addition & 0 deletions tests/cob.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ describe('COB', function ( ) {
var ctx = {};
ctx.settings = {};
ctx.language = require('../lib/language')();
ctx.language.set('en');

var cob = require('../lib/plugins/cob')(ctx);

Expand Down
1 change: 1 addition & 0 deletions tests/loop.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ var moment = require('moment');
var ctx = {
language: require('../lib/language')()
};
ctx.language.set('en');
var env = require('../env')();
var loop = require('../lib/plugins/loop')(ctx);
var sandbox = require('../lib/sandbox')();
Expand Down
1 change: 1 addition & 0 deletions tests/openaps.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ var moment = require('moment');
var ctx = {
language: require('../lib/language')()
};
ctx.language.set('en');
var env = require('../env')();
var openaps = require('../lib/plugins/openaps')(ctx);
var sandbox = require('../lib/sandbox')();
Expand Down
5 changes: 3 additions & 2 deletions tests/pump.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ var moment = require('moment');
var ctx = {
language: require('../lib/language')()
};
ctx.language.set('en');
var env = require('../env')();
var pump = require('../lib/plugins/pump')(ctx);
var sandbox = require('../lib/sandbox')();
Expand Down Expand Up @@ -253,7 +254,7 @@ describe('pump', function ( ) {
, notifications: require('../lib/notifications')(env, ctx)
, language: require('../lib/language')()
};

ctx.language.set('en');
var sbx = sandbox.clientInit(ctx, now.valueOf(), {devicestatus: statuses});
pump.setProperties(sbx);

Expand All @@ -265,7 +266,7 @@ describe('pump', function ( ) {

pump.alexa.intentHandlers[1].intentHandler(function next(title, response) {
title.should.equal('Pump battery');
response.should.equal('Your battery is at 1.52 volts');
response.should.equal('Your pump battery is at 1.52 volts');
done();
}, [], sbx);

Expand Down
11 changes: 7 additions & 4 deletions tests/rawbg.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,13 @@
require('should');

describe('Raw BG', function ( ) {
var rawbg = require('../lib/plugins/rawbg')({
settings: {}
, language: require('../lib/language')()
});
var ctx = {
settings: {}
, language: require('../lib/language')()
};
ctx.language.set('en');

var rawbg = require('../lib/plugins/rawbg')(ctx);

var now = Date.now();
var data = {
Expand Down
21 changes: 15 additions & 6 deletions tests/upbat.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,9 @@ describe('Uploader Battery', function ( ) {
var sandbox = require('../lib/sandbox')();
var ctx = {
settings: {}
, language: require('../lib/language')()
};
ctx.language.set('en');
var sbx = sandbox.clientInit(ctx, Date.now(), data);

sbx.offerProperty = function mockedOfferProperty (name, setter) {
Expand All @@ -22,7 +24,7 @@ describe('Uploader Battery', function ( ) {
done();
};

var upbat = require('../lib/plugins/upbat')();
var upbat = require('../lib/plugins/upbat')(ctx);
upbat.setProperties(sbx);

});
Expand All @@ -38,11 +40,13 @@ describe('Uploader Battery', function ( ) {
done();
}
}
, language: require('../lib/language')()
};
ctx.language.set('en');

var sandbox = require('../lib/sandbox')();
var sbx = sandbox.clientInit(ctx, Date.now(), data);
var upbat = require('../lib/plugins/upbat')();
var upbat = require('../lib/plugins/upbat')(ctx);
upbat.setProperties(sbx);
upbat.updateVisualisation(sbx);

Expand All @@ -57,11 +61,13 @@ describe('Uploader Battery', function ( ) {
done();
}
}
, language: require('../lib/language')()
};
ctx.language.set('en');

var sandbox = require('../lib/sandbox')();
var sbx = sandbox.clientInit(ctx, Date.now(), {});
var upbat = require('../lib/plugins/upbat')();
var upbat = require('../lib/plugins/upbat')(ctx);
upbat.setProperties(sbx);
upbat.updateVisualisation(sbx);
});
Expand All @@ -74,12 +80,13 @@ describe('Uploader Battery', function ( ) {
options.hide.should.equal(true);
done();
}
}
}, language: require('../lib/language')()
};
ctx.language.set('en');

var sandbox = require('../lib/sandbox')();
var sbx = sandbox.clientInit(ctx, Date.now(), {devicestatus: [{uploader: {battery: -1}}]});
var upbat = require('../lib/plugins/upbat')();
var upbat = require('../lib/plugins/upbat')(ctx);
upbat.setProperties(sbx);
upbat.updateVisualisation(sbx);
});
Expand All @@ -88,11 +95,13 @@ describe('Uploader Battery', function ( ) {

var ctx = {
settings: {}
, language: require('../lib/language')()
};
ctx.language.set('en');

var sandbox = require('../lib/sandbox')();
var sbx = sandbox.clientInit(ctx, Date.now(), data);
var upbat = require('../lib/plugins/upbat')();
var upbat = require('../lib/plugins/upbat')(ctx);
upbat.setProperties(sbx);

upbat.alexa.intentHandlers.length.should.equal(1);
Expand Down