This commit is contained in:
Milos Kozak 2017-05-10 21:37:42 +02:00
commit 15127dc4c6
8 changed files with 88 additions and 39 deletions

View file

@ -131,7 +131,7 @@ public class GlucoseStatus {
status.short_avgdelta = average(short_deltas); status.short_avgdelta = average(short_deltas);
if (prefs.getBoolean("always_use_shortavg", false) || last_deltas.isEmpty()) { if (last_deltas.isEmpty()) {
status.delta = status.short_avgdelta; status.delta = status.short_avgdelta;
} else { } else {
status.delta = average(last_deltas); status.delta = average(last_deltas);

View file

@ -243,7 +243,12 @@ public class DetermineBasalAdapterAMAJS {
mGlucoseStatus = new V8Object(mV8rt); mGlucoseStatus = new V8Object(mV8rt);
mGlucoseStatus.add("glucose", glucoseStatus.glucose); mGlucoseStatus.add("glucose", glucoseStatus.glucose);
if(SP.getBoolean("always_use_shortavg", false)){
mGlucoseStatus.add("delta", glucoseStatus.short_avgdelta);
} else {
mGlucoseStatus.add("delta", glucoseStatus.delta); mGlucoseStatus.add("delta", glucoseStatus.delta);
}
mGlucoseStatus.add("short_avgdelta", glucoseStatus.short_avgdelta); mGlucoseStatus.add("short_avgdelta", glucoseStatus.short_avgdelta);
mGlucoseStatus.add("long_avgdelta", glucoseStatus.long_avgdelta); mGlucoseStatus.add("long_avgdelta", glucoseStatus.long_avgdelta);
mV8rt.add(PARAM_glucoseStatus, mGlucoseStatus); mV8rt.add(PARAM_glucoseStatus, mGlucoseStatus);

View file

@ -19,6 +19,7 @@ import info.nightscout.androidaps.data.MealData;
import info.nightscout.androidaps.interfaces.PumpInterface; import info.nightscout.androidaps.interfaces.PumpInterface;
import info.nightscout.androidaps.plugins.Loop.ScriptReader; import info.nightscout.androidaps.plugins.Loop.ScriptReader;
import info.nightscout.androidaps.plugins.NSClientInternal.data.NSProfile; import info.nightscout.androidaps.plugins.NSClientInternal.data.NSProfile;
import info.nightscout.utils.SP;
public class DetermineBasalAdapterMAJS { public class DetermineBasalAdapterMAJS {
private static Logger log = LoggerFactory.getLogger(DetermineBasalAdapterMAJS.class); private static Logger log = LoggerFactory.getLogger(DetermineBasalAdapterMAJS.class);
@ -251,7 +252,11 @@ public class DetermineBasalAdapterMAJS {
mIobData.add("hightempinsulin", iobData.hightempinsulin); mIobData.add("hightempinsulin", iobData.hightempinsulin);
mGlucoseStatus.add("glucose", glucoseStatus.glucose); mGlucoseStatus.add("glucose", glucoseStatus.glucose);
if(SP.getBoolean("always_use_shortavg", false)){
mGlucoseStatus.add("delta", glucoseStatus.short_avgdelta);
} else {
mGlucoseStatus.add("delta", glucoseStatus.delta); mGlucoseStatus.add("delta", glucoseStatus.delta);
}
mGlucoseStatus.add("avgdelta", glucoseStatus.avgdelta); mGlucoseStatus.add("avgdelta", glucoseStatus.avgdelta);
mMealData.add("carbs", mealData.carbs); mMealData.add("carbs", mealData.carbs);

View file

@ -7,6 +7,7 @@ import android.content.SharedPreferences;
import android.os.BatteryManager; import android.os.BatteryManager;
import android.os.Bundle; import android.os.Bundle;
import android.preference.PreferenceManager; import android.preference.PreferenceManager;
import android.support.annotation.NonNull;
import android.util.Log; import android.util.Log;
import com.google.android.gms.common.ConnectionResult; import com.google.android.gms.common.ConnectionResult;
@ -503,6 +504,21 @@ public class WatchUpdaterService extends WearableListenerService implements
private void sendStatus() { private void sendStatus() {
if (googleApiClient.isConnected()) { if (googleApiClient.isConnected()) {
String status = generateStatusString();
PutDataMapRequest dataMapRequest = PutDataMapRequest.create(NEW_STATUS_PATH);
//unique content
dataMapRequest.getDataMap().putDouble("timestamp", System.currentTimeMillis());
dataMapRequest.getDataMap().putString("externalStatusString", status);
PutDataRequest putDataRequest = dataMapRequest.asPutDataRequest();
Wearable.DataApi.putDataItem(googleApiClient, putDataRequest);
} else {
Log.e("SendStatus", "No connection to wearable available!");
}
}
@NonNull
private String generateStatusString() {
String status = ""; String status = "";
boolean shortString = true; boolean shortString = true;
@ -539,16 +555,16 @@ public class WatchUpdaterService extends WearableListenerService implements
+ DecimalFormatter.to2Decimal(bolusIob.iob) + "|" + DecimalFormatter.to2Decimal(bolusIob.iob) + "|"
+ DecimalFormatter.to2Decimal(basalIob.basaliob) + ")"; + DecimalFormatter.to2Decimal(basalIob.basaliob) + ")";
} }
NSProfile profile = MainApp.getConfigBuilder().getActiveProfile().getProfile();
PutDataMapRequest dataMapRequest = PutDataMapRequest.create(NEW_STATUS_PATH); if (!mPrefs.getBoolean("wear_showbgi", false) ||profile == null || profile.getIsf(NSProfile.secondsFromMidnight()) == null || profile.getIc(NSProfile.secondsFromMidnight()) == null) {
//unique content return status;
dataMapRequest.getDataMap().putDouble("timestamp", System.currentTimeMillis());
dataMapRequest.getDataMap().putString("externalStatusString", status);
PutDataRequest putDataRequest = dataMapRequest.asPutDataRequest();
Wearable.DataApi.putDataItem(googleApiClient, putDataRequest);
} else {
Log.e("SendStatus", "No connection to wearable available!");
} }
double bgi = -(bolusIob.activity + basalIob.activity)*5*profile.getIsf(NSProfile.secondsFromMidnight());
status += " " + ((bgi>=0)?"+":"") + DecimalFormatter.to2Decimal(bgi);
return status;
} }
@Override @Override

View file

@ -21,6 +21,7 @@ import info.nightscout.androidaps.events.EventTreatmentChange;
import info.nightscout.androidaps.interfaces.PluginBase; import info.nightscout.androidaps.interfaces.PluginBase;
import info.nightscout.androidaps.interfaces.PumpInterface; import info.nightscout.androidaps.interfaces.PumpInterface;
import info.nightscout.androidaps.plugins.Loop.LoopPlugin; import info.nightscout.androidaps.plugins.Loop.LoopPlugin;
import info.nightscout.androidaps.plugins.NSClientInternal.data.NSProfile;
import info.nightscout.utils.DecimalFormatter; import info.nightscout.utils.DecimalFormatter;
/** /**
@ -181,6 +182,15 @@ public class StatuslinePlugin implements PluginBase {
+ DecimalFormatter.to2Decimal(bolusIob.iob) + "|" + DecimalFormatter.to2Decimal(bolusIob.iob) + "|"
+ DecimalFormatter.to2Decimal(basalIob.basaliob) + ")"; + DecimalFormatter.to2Decimal(basalIob.basaliob) + ")";
} }
NSProfile profile = MainApp.getConfigBuilder().getActiveProfile().getProfile();
if (!mPrefs.getBoolean("xdripstatus_showbgi", false) ||profile == null || profile.getIsf(NSProfile.secondsFromMidnight()) == null || profile.getIc(NSProfile.secondsFromMidnight()) == null) {
return status;
}
double bgi = -(bolusIob.activity + basalIob.activity)*5*profile.getIsf(NSProfile.secondsFromMidnight());
status += " " + ((bgi>=0)?"+":"") + DecimalFormatter.to2Decimal(bgi);
return status; return status;
} }

View file

@ -603,6 +603,8 @@
<string name="xdripstatus_settings">xDrip Status (watch)</string> <string name="xdripstatus_settings">xDrip Status (watch)</string>
<string name="xdripstatus">xDrip Statusline (watch)</string> <string name="xdripstatus">xDrip Statusline (watch)</string>
<string name="xdripstatus_shortname">xds</string> <string name="xdripstatus_shortname">xds</string>
<string name="wear_showbgi_title">Show BGI</string>
<string name="wear_showbgi_summary">Add BGI to status line</string>
<string name="ns_noupload">No upload to NS</string> <string name="ns_noupload">No upload to NS</string>
<string name="ns_noupload_summary">All data sent to NS are dropped. AAPS is connected to NS but no change in NS is done</string> <string name="ns_noupload_summary">All data sent to NS are dropped. AAPS is connected to NS but no change in NS is done</string>
<string name="key_ns_upload_only" translatable="false">ns_upload_only</string> <string name="key_ns_upload_only" translatable="false">ns_upload_only</string>

View file

@ -9,6 +9,12 @@
android:key="wear_detailediob" android:key="wear_detailediob"
android:title="@string/wear_detailedIOB_title" android:title="@string/wear_detailedIOB_title"
android:summary="@string/wear_detailedIOB_summary"/> android:summary="@string/wear_detailedIOB_summary"/>
<SwitchPreference
android:defaultValue="false"
android:key="wear_showbgi"
android:title="@string/wear_showbgi_title"
android:summary="@string/wear_showbgi_summary"/>
</PreferenceCategory> </PreferenceCategory>
</PreferenceScreen> </PreferenceScreen>

View file

@ -9,6 +9,11 @@
android:key="xdripstatus_detailediob" android:key="xdripstatus_detailediob"
android:title="@string/wear_detailedIOB_title" android:title="@string/wear_detailedIOB_title"
android:summary="@string/wear_detailedIOB_summary"/> android:summary="@string/wear_detailedIOB_summary"/>
<SwitchPreference
android:defaultValue="false"
android:key="xdripstatus_showbgi"
android:title="@string/wear_showbgi_title"
android:summary="@string/wear_showbgi_summary"/>
</PreferenceCategory> </PreferenceCategory>
</PreferenceScreen> </PreferenceScreen>