diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/AbstractBTDeviceSupport.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/AbstractBTDeviceSupport.java index 911a29006..6d28ce75f 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/AbstractBTDeviceSupport.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/AbstractBTDeviceSupport.java @@ -63,6 +63,12 @@ public abstract class AbstractBTDeviceSupport extends AbstractDeviceSupport { sendToDevice(bytes); } + @Override + public void onGenericNotification(String title, String details) { + byte[] bytes = gbDeviceProtocol.encodeGenericNotification(title, details); + sendToDevice(bytes); + } + @Override public void onSetTime(long ts) { byte[] bytes = gbDeviceProtocol.encodeSetTime(ts); diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/EventHandler.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/EventHandler.java index 068ebd18b..842ba3e78 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/EventHandler.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/EventHandler.java @@ -5,6 +5,8 @@ public interface EventHandler { void onEmail(String from, String subject, String body); + void onGenericNotification(String title, String details); + void onSetTime(long ts); void onSetCallState(String number, String name, GBCommand command); diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/miband/MiBandSupport.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/miband/MiBandSupport.java index 7a7627720..c559acf09 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/miband/MiBandSupport.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/miband/MiBandSupport.java @@ -126,6 +126,11 @@ public class MiBandSupport extends AbstractBTLEDeviceSupport { performDefaultNotification("email received"); } + @Override + public void onGenericNotification(String title, String details) { + performDefaultNotification("generic notification received"); + } + @Override public void onSetTime(long ts) { try { diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/pebble/PebbleProtocol.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/pebble/PebbleProtocol.java index 9a341aec8..835b0a3ad 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/pebble/PebbleProtocol.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/pebble/PebbleProtocol.java @@ -224,6 +224,11 @@ public class PebbleProtocol extends GBDeviceProtocol { return encodeMessage(ENDPOINT_NOTIFICATION, NOTIFICATION_EMAIL, 0, parts); } + @Override + public byte[] encodeGenericNotification(String title, String details) { + return encodeSMS(title, details); + } + @Override public byte[] encodeSetTime(long ts) { if (ts == -1) { diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/protocol/GBDeviceProtocol.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/protocol/GBDeviceProtocol.java index ff42b60ce..752fb5978 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/protocol/GBDeviceProtocol.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/protocol/GBDeviceProtocol.java @@ -12,6 +12,10 @@ public abstract class GBDeviceProtocol { return null; } + public byte[] encodeGenericNotification(String title, String details) { + return null; + } + public byte[] encodeSetTime(long ts) { return null; }