Garmin Vivomove HR support
- communication protocols
- device support implementation
- download FIT file storage
Features:
- basic connectivity: time sync, battery status, HW/FW version info
- real-time activity tracking
- fitness data sync
- find the device, find the phone
- factory reset
Features implemented but not working:
- notifications: fully implemented, seem to communicate correctly, but not shown on watch
Features implemented partially (not expected to work now):
- weather information (and in future possibly weather alerts)
- music info
- firmware update: only the initial file upload implemented, not used
Things to improve/change:
- Device name hardcoded in `VivomoveHrCoordinator.getSupportedType`, service UUIDs not available
- Download FIT file storage: Should be store (and offer the user to export?) the FIT data forever?
- Obviously, various code improvements, cleanup, etc.
2023-06-15 17:47:42 +02:00
|
|
|
syntax = "proto2";
|
|
|
|
|
|
|
|
package garmin_vivomovehr;
|
|
|
|
|
2023-06-17 15:08:11 +02:00
|
|
|
option java_package = "nodomain.freeyourgadget.gadgetbridge.proto.vivomovehr";
|
Garmin Vivomove HR support
- communication protocols
- device support implementation
- download FIT file storage
Features:
- basic connectivity: time sync, battery status, HW/FW version info
- real-time activity tracking
- fitness data sync
- find the device, find the phone
- factory reset
Features implemented but not working:
- notifications: fully implemented, seem to communicate correctly, but not shown on watch
Features implemented partially (not expected to work now):
- weather information (and in future possibly weather alerts)
- music info
- firmware update: only the initial file upload implemented, not used
Things to improve/change:
- Device name hardcoded in `VivomoveHrCoordinator.getSupportedType`, service UUIDs not available
- Download FIT file storage: Should be store (and offer the user to export?) the FIT data forever?
- Obviously, various code improvements, cleanup, etc.
2023-06-15 17:47:42 +02:00
|
|
|
|
|
|
|
message SmsNotificationService {
|
|
|
|
optional SmsSendMessageRequest sms_send_message_request = 1;
|
|
|
|
optional SmsSendMessageResponse sms_send_message_response = 2;
|
|
|
|
optional SmsCannedListChangedNotification sms_canned_list_changed_notification = 3;
|
|
|
|
optional SmsCannedListRequest sms_canned_list_request = 4;
|
|
|
|
optional SmsCannedListResponse sms_canned_list_response = 5;
|
|
|
|
|
|
|
|
message SmsSendMessageRequest {
|
|
|
|
optional string receiver_number = 1;
|
|
|
|
optional string message = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SmsSendMessageResponse {
|
|
|
|
optional ResponseStatus status = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SmsCannedListChangedNotification {
|
|
|
|
repeated CannedListType changed_type = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SmsCannedListRequest {
|
|
|
|
repeated CannedListType requested_types = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SmsCannedListResponse {
|
|
|
|
optional ResponseStatus status = 1;
|
|
|
|
repeated SmsCannedList lists = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SmsCannedList {
|
|
|
|
optional CannedListType type = 1;
|
|
|
|
repeated string response = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
enum CannedListType {
|
|
|
|
PHONE_CALL_RESPONSE = 0;
|
|
|
|
SMS_MESSAGE_RESPONSE = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
enum ResponseStatus {
|
|
|
|
SUCCESS = 0;
|
|
|
|
GENERIC_ERROR = 1;
|
|
|
|
}
|
|
|
|
}
|