diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/zetime/ZeTimeConstants.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/zetime/ZeTimeConstants.java
index 3339dd0e4..444a42aec 100644
--- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/zetime/ZeTimeConstants.java
+++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/zetime/ZeTimeConstants.java
@@ -127,6 +127,18 @@ public class ZeTimeConstants {
public static final String PREF_DO_NOT_DISTURB_START = "zetime_do_not_disturb_start";
public static final String PREF_DO_NOT_DISTURB_END = "zetime_do_not_disturb_end";
+ public static final String PREF_INACTIVITY_ENABLE = "zetime_inactivity_warnings";
+ public static final String PREF_INACTIVITY_START = "zetime_inactivity_warnings_start";
+ public static final String PREF_INACTIVITY_END = "zetime_inactivity_warnings_end";
+ public static final String PREF_INACTIVITY_THRESHOLD = "zetime_inactivity_warnings_threshold";
+ public static final String PREF_INACTIVITY_MO = "zetime_prefs_inactivity_repetitions_mo";
+ public static final String PREF_INACTIVITY_TU = "zetime_prefs_inactivity_repetitions_tu";
+ public static final String PREF_INACTIVITY_WE = "zetime_prefs_inactivity_repetitions_we";
+ public static final String PREF_INACTIVITY_TH = "zetime_prefs_inactivity_repetitions_th";
+ public static final String PREF_INACTIVITY_FR = "zetime_prefs_inactivity_repetitions_fr";
+ public static final String PREF_INACTIVITY_SA = "zetime_prefs_inactivity_repetitions_sa";
+ public static final String PREF_INACTIVITY_SU = "zetime_prefs_inactivity_repetitions_su";
+
public static final String PREF_ANALOG_MODE = "zetime_analog_mode";
public static final String PREF_ACTIVITY_TRACKING = "zetime_activity_tracking";
public static final String PREF_HANDMOVE_DISPLAY = "zetime_handmove_display";
diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/zetime/ZeTimeDeviceSupport.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/zetime/ZeTimeDeviceSupport.java
index 46ec21fe5..50787b246 100644
--- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/zetime/ZeTimeDeviceSupport.java
+++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/zetime/ZeTimeDeviceSupport.java
@@ -1614,4 +1614,50 @@ public class ZeTimeDeviceSupport extends AbstractBTLEDeviceSupport {
sendMsgToWatch(builder, dateformat);
}
+
+ private void setInactivityAlert(TransactionBuilder builder)
+ {
+ Prefs prefs = GBApplication.getPrefs();
+ boolean enabled = prefs.getBoolean(ZeTimeConstants.PREF_INACTIVITY_ENABLE, false);
+ int threshold = prefs.getInt(ZeTimeConstants.PREF_INACTIVITY_THRESHOLD, 60);
+
+ if(threshold > 0xff)
+ {
+ threshold = 0xff;
+ GB.toast(getContext(), "Value for inactivity threshold is greater than 255min! ", Toast.LENGTH_LONG, GB.ERROR);
+ }
+
+ byte[] inactivity = {
+ ZeTimeConstants.CMD_PREAMBLE,
+ ZeTimeConstants.CMD_INACTIVITY_ALERT,
+ ZeTimeConstants.CMD_SEND,
+ (byte)0x8,
+ (byte)0x0,
+ (byte)0x0,
+ (byte)threshold,
+ (byte)0x0,
+ (byte)0x0,
+ (byte)0x0,
+ (byte)0x0,
+ (byte)0x64,
+ (byte)0x0,
+ ZeTimeConstants.CMD_END
+ };
+
+ if(enabled)
+ {
+ int reps = (1 << 7); // set inactivity active: set bit 7
+ reps |= prefs.getInt(ZeTimeConstants.PREF_INACTIVITY_MO, 0);
+ reps |= (prefs.getInt(ZeTimeConstants.PREF_INACTIVITY_TU, 0) << 1);
+ reps |= (prefs.getInt(ZeTimeConstants.PREF_INACTIVITY_WE, 0) << 2);
+ reps |= (prefs.getInt(ZeTimeConstants.PREF_INACTIVITY_TH, 0) << 3);
+ reps |= (prefs.getInt(ZeTimeConstants.PREF_INACTIVITY_FR, 0) << 4);
+ reps |= (prefs.getInt(ZeTimeConstants.PREF_INACTIVITY_SA, 0) << 5);
+ reps |= (prefs.getInt(ZeTimeConstants.PREF_INACTIVITY_SU, 0) << 6);
+
+ inactivity[5] = (byte)reps;
+ }
+
+ sendMsgToWatch(builder, inactivity);
+ }
}
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 1d48124c8..e86ca3de9 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -228,6 +228,14 @@
YY/MM/DD
DD/MM/YY
MM/DD/YY
+ Repetitions
+ Monday
+ Tuesday
+ Wednesday
+ Thursday
+ Friday
+ Saturday
+ Sunday
Auto export
diff --git a/app/src/main/res/xml/zetime_preferences.xml b/app/src/main/res/xml/zetime_preferences.xml
index 92af75e18..0b0bcf818 100644
--- a/app/src/main/res/xml/zetime_preferences.xml
+++ b/app/src/main/res/xml/zetime_preferences.xml
@@ -24,6 +24,77 @@
android:title="@string/zetime_activity_tracking"
android:summary="@string/zetime_activity_tracking_summary" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+