diff options
| author | Jean-François Milants <jf@codingfield.com> | 2021-03-07 07:44:14 (GMT) |
|---|---|---|
| committer | Jean-François Milants <jf@codingfield.com> | 2021-03-07 07:44:14 (GMT) |
| commit | 9f67e6f6525bd4071609ff9edd6ce132d7ca1464 (patch) | |
| tree | 65b2dc22bb257c6dd4fc8be77762173b564c340c /src/components/ble/AlertNotificationService.h | |
| parent | 740b3d7b58dd92a6a6f99620a090ae4f05c03299 (diff) | |
| parent | ada942535718d48eec37cca4f50d678e7201dc67 (diff) | |
Merge branch 'develop' into recovery-firmware
# Conflicts:
# src/CMakeLists.txt
# src/displayapp/DisplayApp.h
# src/systemtask/SystemTask.cpp
# src/systemtask/SystemTask.h
Diffstat (limited to 'src/components/ble/AlertNotificationService.h')
| -rw-r--r-- | src/components/ble/AlertNotificationService.h | 35 |
1 files changed, 34 insertions, 1 deletions
diff --git a/src/components/ble/AlertNotificationService.h b/src/components/ble/AlertNotificationService.h index 120312d..caad7a2 100644 --- a/src/components/ble/AlertNotificationService.h +++ b/src/components/ble/AlertNotificationService.h @@ -7,6 +7,9 @@ #undef max #undef min +//00020001-78fc-48fe-8e23-433b3a1942d0 +#define NOTIFICATION_EVENT_SERVICE_UUID_BASE {0xd0, 0x42, 0x19, 0x3a, 0x3b, 0x43, 0x23, 0x8e, 0xfe, 0x48, 0xfc, 0x78, 0x01, 0x00, 0x02, 0x00} + namespace Pinetime { namespace System { @@ -24,8 +27,31 @@ namespace Pinetime { int OnAlert(uint16_t conn_handle, uint16_t attr_handle, struct ble_gatt_access_ctxt *ctxt); + void AcceptIncomingCall(); + void RejectIncomingCall(); + void MuteIncomingCall(); + + enum class IncomingCallResponses : uint8_t { + Reject = 0x00, + Answer = 0x01, + Mute = 0x02 + }; private: + enum class Categories : uint8_t { + SimpleAlert = 0x00, + Email = 0x01, + News = 0x02, + Call = 0x03, + MissedCall = 0x04, + MmsSms = 0x05, + VoiceMail = 0x06, + Schedule = 0x07, + HighPrioritizedAlert = 0x08, + InstantMessage = 0x09, + All = 0xff + }; + static constexpr uint16_t ansId {0x1811}; static constexpr uint16_t ansCharId {0x2a46}; @@ -39,11 +65,18 @@ namespace Pinetime { .value = ansCharId }; - struct ble_gatt_chr_def characteristicDefinition[2]; + static constexpr ble_uuid128_t notificationEventUuid { + .u { .type = BLE_UUID_TYPE_128 }, + .value = NOTIFICATION_EVENT_SERVICE_UUID_BASE + }; + + struct ble_gatt_chr_def characteristicDefinition[3]; struct ble_gatt_svc_def serviceDefinition[2]; Pinetime::System::SystemTask &systemTask; NotificationManager ¬ificationManager; + + uint16_t eventHandle; }; } } |
