1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-11-14 05:59:26 +01:00
Commit Graph

1659 Commits

Author SHA1 Message Date
Andreas Shimokawa
38e234552d Pebble: only ACK appmessages from pebble to pebblekit android apps after the app actually sent one 2017-01-13 08:16:33 +01:00
Andreas Shimokawa
0218cee0e1 Pebble: fix long standing bug in uuid encoding for ACK messages (did not seem to do any harm) 2017-01-11 23:42:40 +01:00
Andreas Shimokawa
50cb3c9db3 Pebble: remove null termination from cstrings when converting to json for PebbleKit 2017-01-11 22:39:08 +01:00
Andreas Shimokawa
9132736428 Pebble: report current firmware string to PebbleKit (eg. "v3.12.2") not "Gadgetbridge" 2017-01-10 22:43:10 +01:00
Andreas Shimokawa
185605211d Pebble: fix bug in PebbleKit implementation regarding binary data transferred from a watchapp to a 3rd party Android app
(Fixes a bug with TCW)
2017-01-10 22:30:55 +01:00
Carsten Pfeiffer
d646b6773e Merge pull request #491 from jpbarraca/hplus-handle-data
HPlus: Improves device support
2017-01-10 20:40:07 +01:00
Andreas Shimokawa
f2e6ce6380 Pebble: fix incoming calls (recently broken) 2017-01-10 18:23:35 +01:00
João Paulo Barraca
b92b1c08bf HPlus: Fix deprecation warning 2017-01-10 13:44:32 +00:00
João Paulo Barraca
13ec497127 Merge branch 'master' of https://github.com/Freeyourgadget/Gadgetbridge into hplus-handle-data 2017-01-10 13:23:23 +00:00
João Paulo Barraca
4cf872664c HPlus: Improved support for storing and displaying data. 2017-01-10 13:08:45 +00:00
Andreas Shimokawa
fda317671a Ignore summary information for k9 mail
(#373)
2017-01-09 18:34:22 +01:00
Andreas Shimokawa
8c0f5599a1 Do not try to remove notifications from the device in some obvious cases 2017-01-09 16:49:11 +01:00
Andreas Shimokawa
3644d5e7a6 Pebble: remove notifications when dismissed on the phone (#326)
Most of the code is generic, so it could be implemented by other devices.
I dont know what happens if multiple messages arrive in the same notification.
So, this is experimental.
2017-01-09 16:33:00 +01:00
Andreas Shimokawa
c6999713d2 Pebble: use Notifications system app as parent UUID for notifications 2017-01-09 15:11:50 +01:00
Andreas Shimokawa
f05b51fd83 Pebble: Add option to disable call display
Closes #494
2017-01-09 14:41:02 +01:00
cpfeiffer
6c269aa089 Generic characteristic names from field names 2017-01-08 21:37:43 +01:00
Andreas Shimokawa
855a141ec4 Pebble: in AppMessageHandler provide a default implementation of handleMessage which just ACKs 2017-01-08 17:17:29 +01:00
Daniele Gobbetti
1fda1ba1b2 Pebble: try to get rid of the sleep and rely on countdownlatch instead.
Could help with #494
2017-01-08 16:48:50 +01:00
Daniele Gobbetti
c1abaaa4e0 Add support for hiding the icon in the status bar and the notification on the lockscreen.
This adds proper settings to toggle GB behavior and closes #460.
2017-01-08 15:51:56 +01:00
Yar
5c8f02d054 Set notification to minimal priority
Pebble app is not showing in status bar and on lockscreen. This change is for GadgetBridge to have the same behavior.
2017-01-08 15:31:55 +01:00
Daniele Gobbetti
09cc0134db Pebble: add support for weather in some watchfaces by gh/zalewszczak
See https://github.com/zalewszczak/pebble for a list of watchfaces
#482
2017-01-08 15:27:01 +01:00
Daniele Gobbetti
7f50e0d2b7 Pebble: add support for weather in square watchface
So far celsius are forced for temperature #482
2017-01-07 22:41:10 +01:00
Andreas Shimokawa
380e3b3640 Merge pull request #489 from hackoder/master
Show K9 message body in notifications
2017-01-05 17:14:09 +01:00
João Paulo Barraca
970c6960ea HPlus: delay day slot fetch 2017-01-05 14:24:39 +00:00
João Paulo Barraca
ade7161c4d HPlus: Buffer Day Slot data before commit to DB 2017-01-05 14:03:49 +00:00
João Paulo Barraca
d491921b1c HPlus: Rename HPlusHandlerThread method 2017-01-05 10:36:22 +00:00
João Paulo Barraca
93ae57bd60 Refactoring class HPlusDataRecordDaySummary 2017-01-05 10:33:37 +00:00
João Paulo Barraca
051d1e7390 HPlus: fix typo 2017-01-05 00:17:28 +00:00
João Paulo Barraca
ae0718c398 HPlus: Refactoring and added comments to the message decoders members 2017-01-05 00:03:54 +00:00
João Paulo Barraca
510427e30b HPlus: Refactoring. Calendar -> GregorianCalendar 2017-01-04 23:41:35 +00:00
João Paulo Barraca
91b346b23d HPlus: Enabled decoding of additional fields in day summary message 2017-01-04 23:24:17 +00:00
João Paulo Barraca
9d67394720 HPlus: Code cleanup 2017-01-04 01:46:24 +00:00
Andreas Shimokawa
df72a30904 Merge branch 'master' into background-javascript 2017-01-03 20:37:58 +01:00
Andreas Shimokawa
fd51f32765 Add Riot as a recognized chat application (including pebble color and icon) 2017-01-03 20:36:39 +01:00
Daniele Gobbetti
c9cfaa9bd8 Pebble: webview. Implement two way communication with JS.
The support within JS is a bit hacky and sometimes conflicts with the configuration page.
2017-01-03 15:04:51 +01:00
Hasan Ammar
0ba377bb42 Show K9 message body in notifications 2017-01-02 19:03:02 -05:00
Daniele Gobbetti
0efacfbad5 Pebble: webview ensure the webview works no matter which the order of loading the components is. 2017-01-02 12:32:52 +01:00
Daniele Gobbetti
7ab74fb11b Pebble: webview. Use the main thread explicitly again and log XHR requests at least on Lollipop and up 2017-01-02 12:07:57 +01:00
João Paulo Barraca
547736f8f7 HPlus: removed test values 2017-01-02 10:13:34 +00:00
João Paulo Barraca
1fb4ee8a8f HPlus: Basic support for data synchronization 2017-01-02 00:58:37 +00:00
Daniele Gobbetti
4ef0415da2 Pebble: webview. Ensure we are on the main thread for disposing the webview and implement sending messages to the webview. 2017-01-01 21:01:58 +01:00
Daniele Gobbetti
f175701825 Merge branch 'master' into background-javascript 2017-01-01 19:45:27 +01:00
Daniele Gobbetti
d22c78e8f7 Pebble: webview, simplify the code since finals are not required anymore 2017-01-01 18:37:42 +01:00
Daniele Gobbetti
eaaa940637 Pebble: refactor the background webview
Now native controls seem to work (including datepicker), still the webview is not started upon watchapp start, but when long-pressing each app in the app manager. After the webview is started it will live in the background until device disconnect.
2017-01-01 18:33:39 +01:00
Andreas Shimokawa
507e58922f Pebble: fix decoding of byte and short appmessage data (when a native handler is present) 2017-01-01 17:58:34 +01:00
Andreas Shimokawa
6d02a76328 Merge branch 'master' into background-javascript 2017-01-01 17:25:12 +01:00
Andreas Shimokawa
f25605f5a1 Pebble: First shot at TrekVolle support
Also some cleanups
2017-01-01 16:24:46 +01:00
Andreas Shimokawa
8b55110679 Pebble: allow weather to be send to watchfaces on fw < 4.x 2017-01-01 14:19:35 +01:00
Andreas Shimokawa
1722a6dc47 Pebble: minor code cleanup 2017-01-01 13:55:07 +01:00
Andreas Shimokawa
7930b7da75 Pebble: Support Healthify Weather 2016-12-31 20:08:53 +01:00
Andreas Shimokawa
5a83cb1c48 Pebble: fix npe in mario time handler
I shout stop for 2016! :D
2016-12-31 19:29:41 +01:00
Andreas Shimokawa
b811247704 Pebble: Adapt MarioTime logic 2016-12-31 19:27:21 +01:00
Andreas Shimokawa
984e639e97 Pebble: push current weather to TimeStylePebble again when watchface gets started 2016-12-31 19:17:08 +01:00
Andreas Shimokawa
4e543d4b34 Pebble: rename pushMessage() to onAppStart() 2016-12-31 19:04:05 +01:00
Andreas Shimokawa
82c0f35c58 Pebble: add encodeUpadteWeather() to AppMessageHandler for easier watchface support
Now in Timestyle weather is in sync with what we get from weather notification
2016-12-31 18:56:24 +01:00
Andreas Shimokawa
266c6b8817 Pebble: send weather to Pebble when we get notified by weather notification 2016-12-31 15:56:05 +01:00
Andreas Shimokawa
f12e786837 Pebble: fix mario time appmessage handler (weather condition icon hardcoded to sunny for now) 2016-12-31 13:33:50 +01:00
Andreas Shimokawa
95e6d2c740 Pebble: delete WeatherNeat handler, it was only used for testing and the watchface seems outdated 2016-12-31 12:35:40 +01:00
Andreas Shimokawa
4631e5bbaf Pebble: restore find lost device feature abused for testing 2016-12-31 12:15:44 +01:00
Daniele Gobbetti
3280607cc9 Pebble: hide the weather app menu entries on apps that aren't the weather app. 2016-12-31 10:15:08 +01:00
Daniele Gobbetti
e477d22c88 Pebble: support the system weather app.
- enable/disable weather app from the watchapp list
- convert weather data to a format that can be displayed by the system app

TODO: send the weather data periodically
2016-12-30 20:14:13 +01:00
Daniele Gobbetti
0e9ce5d186 Pebble: get min/max temperature also for the forecast 2016-12-30 19:58:56 +01:00
Andreas Shimokawa
240c81ecb4 Pebble: implement weather related protocol encoding
this is not yet connected to anything...
2016-12-30 15:26:44 +01:00
Andreas Shimokawa
b045d5ac26 Merge branch 'master' into feature-weather 2016-12-30 00:10:54 +01:00
cpfeiffer
5d3c45d2c0 Mi2: Remember and use last synced timestamp in preferences
(instead of using the last sample's timestamp in the database.
The database also contains manual hr measurements and live activity
samples, so we would miss activity data before the last manual
measurement.

Closes #478
2016-12-29 23:23:20 +01:00
Daniele Gobbetti
dbf88bab5f Outdated TODO removed 2016-12-29 20:44:04 +01:00
cpfeiffer
df1fe7c5b8 Port to UriHelper 2016-12-29 01:46:00 +01:00
cpfeiffer
aadde7d1ca Port to UriHelper, fix potential resource leak 2016-12-29 01:41:47 +01:00
cpfeiffer
a96a747119 Pebble: fix resource leak on app installation 2016-12-29 01:29:28 +01:00
cpfeiffer
0646eda646 Fix file potential handle leaks 2016-12-29 01:07:26 +01:00
Daniele Gobbetti
53d8f88670 Pebble: first steps towards background JS execution.
Progress so far:
- webview is created upon watchapp launch
- webview is destroyed after disconnect
- ready event is fired in the background
- showConfiguration is fired upon webview display
2016-12-28 20:53:17 +01:00
João Paulo Barraca
a135f51d31 HPlus: Improve initial configuration process and refactor constants 2016-12-28 13:53:17 +00:00
João Paulo Barraca
fed5638782 HPlus: Refactor Sex into Gender and convert value appropriatelly 2016-12-28 13:50:56 +00:00
Andreas Shimokawa
bcb522d2d0 Merge branch 'master' into feature-weather 2016-12-27 13:51:39 +01:00
Daniele Gobbetti
4ce890b5ce Pebble: support opening files from the system share intent 2016-12-27 13:02:02 +01:00
Daniele Gobbetti
353bd4651b Show Gadgetbridge in the "share" system dialog for installing firmwares, apps etc. 2016-12-27 12:20:59 +01:00
Andreas Shimokawa
440a5e071f Try to support "Subsonic" android app (#474) 2016-12-26 23:53:24 +01:00
Andreas Shimokawa
16d9279728 Merge branch 'master' into feature-weather 2016-12-26 23:03:11 +01:00
cpfeiffer
bb8aff8c99 Fix axis label color live activity (dark theme) 2016-12-26 12:51:20 +01:00
cpfeiffer
da494cde7b Handle live activity for Mi2 and Mi1 in the same way #448
Realtime samples now use ActivitySample.NOT_MEASURED for unknown or
invalid values.
2016-12-26 12:51:12 +01:00
cpfeiffer
8719cadc43 Mi Band: fix live activity messing up stepcount #448
live samples now report relative steps, not absolute to the current
day's stepcount.

Also live samples' steps should NOT be added to the database since
they are already counted in the regular stepcount.
2016-12-26 01:38:20 +01:00
cpfeiffer
305bd7600c Fix current realtime steps calculations #450
timestamp is already in seconds instead of milliseconds

Also: port to REALTIME_SAMPLES
2016-12-26 00:23:02 +01:00
cpfeiffer
999d3e3252 Mi1: Attempt at throttling notifications during sync #438 2016-12-25 23:27:56 +01:00
Andreas Shimokawa
e8d4575261 Merge branch 'master' into feature-weather 2016-12-25 23:20:09 +01:00
Andreas Shimokawa
3441192d19 Pebble 2: Fix Pebble Classic FW 3.x app variant being priorized over native Pebble 2 app variant
Fixes #475
2016-12-25 23:11:49 +01:00
Andreas Shimokawa
6c5b51cd6d Merge branch 'master' into feature-weather 2016-12-25 22:53:44 +01:00
Carsten Pfeiffer
a84bc16503 Merge pull request #470 from jpbarraca/hplus
Add preliminary support for HPlus devices: Zeblaze Zeband and others
2016-12-25 21:33:52 +01:00
Andreas Shimokawa
6af95d99be Merge branch 'master' into feature-weather 2016-12-24 23:06:21 +01:00
Andreas Shimokawa
b5225145d4 Fix crash with unknown notification sources on Mi Band (maybe other non-Pebble devices also affected)
Pebble low level code had an own check for notification type being null, no we set it to UNKNOWN early
This regression was introduced in 0.15.0 though "Revamp Notification types Pebble (#453)"

Fixes #468
2016-12-24 22:00:24 +01:00
João Paulo Barraca
649e20ad04 HPlus: Ignore duplicated messages from band 2016-12-24 00:05:51 +00:00
João Paulo Barraca
88f2d2ee4f HPlus: Fixed notification title size 2016-12-23 12:20:06 +00:00
João Paulo Barraca
cd915598b0 HPlus: Improved handling of incomming calls 2016-12-23 11:46:20 +00:00
João Paulo Barraca
9dd5967f4e HPlus: Set date and time on connect 2016-12-23 10:14:03 +00:00
João Paulo Barraca
9a338c9bae HPlus: Fix text notification length 2016-12-23 01:35:18 +00:00
João Paulo Barraca
2b78f2708f Cleanup according to PR Review 2016-12-23 01:21:05 +00:00
João Paulo Barraca
b7cd908fbe Improved device filter by considering the existence of a service UUID 2016-12-23 00:10:38 +00:00
João Paulo Barraca
6c186329df Cleanup HPlusSampleProvider 2016-12-23 00:08:14 +00:00
João Paulo Barraca
ae9ebc1be8 Refactoring some parts. Added support for param synchronisation with band 2016-12-21 23:57:57 +00:00
João Paulo Barraca
5b3ef8999f Add preliminary support for HPlus devices, such as the Zeblaze Zeband (and many others)
Working: Text and call notifications, setting most user data, date and time, heart rate monitoring, sleep monitoring (alfa)
2016-12-21 12:51:25 +00:00
Andreas Shimokawa
2148b431ea Merge branch 'master' into feature-weather 2016-12-19 23:32:53 +01:00
Andreas Shimokawa
bd5dc6bfbc Pebble 2/LE: Add setting to limit the MTU (for debugging broken BLE stacks) 2016-12-19 23:28:06 +01:00
Daniele Gobbetti
846c74aa86 Forward also group summary notifications, if they contain wearable actions. Hopefully helps with #456
Tested with conversations and there is no regression. Also a specific workaround for telegram was removed, hopefully this does not break #395
2016-12-18 18:00:16 +01:00
Daniele Gobbetti
f1965c7b00 Log the flags also when passing the notification to device #456 2016-12-18 11:03:54 +01:00
Daniele Gobbetti
861c655b5d Log the incoming notification flags.
Should help further diagnosing #456
2016-12-18 10:40:30 +01:00
Andreas Shimokawa
8990e7e3da Merge branch 'master' into feature-weather 2016-12-17 00:20:16 +01:00
Andreas Shimokawa
97aed43518 Pebble: fix for previous commit
(potential crashes when installing and receiving notifications)
2016-12-17 00:17:05 +01:00
Andreas Shimokawa
9588535004 Merge branch 'master' into feature-weather 2016-12-17 00:01:37 +01:00
Andreas Shimokawa
2b3592f354 Pebble: allow sending data to the pebble during installation on FW >= 3.0
It seems to be no problem to recieve notifications etc during app installation with non legacy firmwares :)
2016-12-16 23:47:59 +01:00
cpfeiffer
caaa38ed04 Mi2: support for current battery status #449
so far we understand
- last charge date
- current level
- state normal
- state charging

and we are notified on changes.
2016-12-14 00:50:43 +01:00
cpfeiffer
dd48869fa5 Mi2: move Miband2Support into the package it belongs 2016-12-14 00:28:35 +01:00
Andreas Shimokawa
f74bb4e3f3 Merge branch 'master' into feature-weather 2016-12-12 09:05:19 +01:00
cpfeiffer
c69889d177 Simplified + fixed ArrayUtils.equals() + added lots of testcases 2016-12-11 23:30:20 +01:00
cpfeiffer
bcfc8bc110 Mi1/Mi2: fix firmware file probing for the different devices 2016-12-11 23:30:20 +01:00
Daniele Gobbetti
bb5791485c Add log statements when notifications are not sent to gadget
This should help debuggin #456
2016-12-11 22:48:12 +01:00
cpfeiffer
40354f8f5a Some @Override 2016-12-11 21:31:27 +01:00
cpfeiffer
94c0d6af9d Mi2: Fix off-by-one in activity fetching 2016-12-11 21:31:27 +01:00
Andreas Shimokawa
825f2bf2e8 Merge branch 'master' into feature-weather 2016-12-11 20:27:28 +01:00
Andreas Shimokawa
31122f0b09 Pebble: Propagate watch apps launches outside of PebbleProtocol
This does not do anything yet.
2016-12-11 20:25:46 +01:00
cpfeiffer
6dfc895303 Mi2: Initial work on firmware update #427 2016-12-11 02:11:58 +01:00
cpfeiffer
4a19046301 Mi2: Some characteristics and opcodes for fw update 2016-12-11 02:11:58 +01:00
cpfeiffer
fd2c182714 Mi 2: another characteristic rename (0000005) 2016-12-11 02:11:58 +01:00
cpfeiffer
83ad2a9bd9 Mi 2: rename characteristic 00000003 to "CONFIGURATION" 2016-12-11 02:11:58 +01:00
Andreas Shimokawa
f63a7db5f9 Pebble: map owm conditions to TimeStyle icons
This is probably not the way we should do it, just experimenting for personal use :P
2016-12-11 00:08:57 +01:00
Daniele Gobbetti
a6a2c6d6d6 Pebble: timestyle doesn't use Yahoo anymore.
The values do not work anyway, because it's mapping them internally. See https://github.com/freakified/TimeStylePebble/tree/master/src/pkjs for the mappings.
2016-12-10 15:09:22 +01:00
Andreas Shimokawa
779699cd95 Pebble: remove configuration stuff from TimeStylePebble handler, update weather keys
This is not usable now, just playing around
2016-12-09 23:31:32 +01:00
Andreas Shimokawa
a0e21d7c6d Merge branch 'master' into feature-weather 2016-12-09 23:29:54 +01:00
Andreas Shimokawa
0e1287e382 Pebble: also execute AppMessageHandler.pushMessage() if present when connection gets established
This does not have any effect now since pushMessage() is not used in this branch
2016-12-09 23:21:51 +01:00
Andreas Shimokawa
efb1cd389b Merge branch 'master' into feature-weather 2016-12-09 21:52:55 +01:00
Andreas Shimokawa
17b581022b optimize imports 2016-12-09 20:14:17 +01:00
Kevin Richter
34296c021f Revamp Notification types Pebble (#453)
* Remove notification switches for enum & hashmap
* Fix code style
* Fix null reference exception
* Add whatsapp support
* Remove duplicate entry
2016-12-09 17:54:19 +01:00
Andreas Shimokawa
313499abd4 Pebble: also display debug level in app logs output 2016-12-08 23:20:00 +01:00
Daniele Gobbetti
2d0489960e Pebble: boilerplate code to open dictation session #189
This is just boilerplate code, doesn't do anything but will do no harm as it's not called from anywhere
2016-12-08 16:38:31 +01:00
Andreas Shimokawa
ed38e524bf Make some static stuff non-static (potentially fixes instant run problem and leaks) 2016-12-07 23:13:51 +01:00
Daniele Gobbetti
6a09023c24 Liveview: add some sanity checks to the incoming data lenghts 2016-12-07 13:09:15 +01:00
Daniele Gobbetti
4eb56eb9ca Liveview: refactor the BT stream reading functionality
Read the expected number of bytes at each step instead of a single byte.
2016-12-05 17:45:03 +01:00
Daniele Gobbetti
e53b8b6b32 Liveview: ignore the SocketTimeoutException, disconnect in any other case 2016-12-04 21:04:30 +01:00
Daniele Gobbetti
219cc7bff1 Merge branch 'master' into liveview 2016-12-04 20:42:29 +01:00
cpfeiffer
928bdd5d36 Adjust comments to current values
They look plausible compared to 1S activity
2016-12-04 20:25:20 +01:00
Daniele Gobbetti
8c01123a48 Liveview: addressed the first feedback.
- centralized string encoding and byte order
- replaced printStrackTrace with LOG.error
2016-12-04 19:10:58 +01:00
Andreas Shimokawa
013029443b Pebble: Minor cleanups 2016-12-04 17:21:29 +01:00
Andreas Shimokawa
a691cd0ff7 Pebble: add option to enable applogs (debug messags from pebble apps) 2016-12-04 16:55:27 +01:00
Daniele Gobbetti
e0a844b60a Liveview: Initial support for Liveview devices
Working so far: stable connection, setting time and sending notifications.
2016-12-03 16:20:02 +01:00
Andreas Shimokawa
3db009e77d Pebble: do not dump all LE traffic, minor code cleanups 2016-12-02 23:38:54 +01:00
Andreas Shimokawa
ae2c107ed1 Pebble 2/LE: only notify once when first PP packets are incoming 2016-12-02 08:50:02 +01:00
Andreas Shimokawa
bc9041a4c9 Pebble 2/LE: on connect wait 30s max and stop waiting immediately if a real PP connection got establish (ie write request on the gatt server) 2016-12-02 08:07:44 +01:00
Andreas Shimokawa
3eda2d4b81 Pebble 2/LE: honor reconnect tries 2016-12-02 00:38:53 +01:00
cpfeiffer
44f74270df Mi2: Experimental support for activity recognition 2016-12-02 00:22:06 +01:00
cpfeiffer
da297ecd8b Fix + cleanup time setting and calendar sending #441 2016-12-01 22:51:08 +01:00
Uwe Hermann
0746aaa579 app: Random typo and consistency fixes. 2016-12-01 20:22:12 +01:00
Uwe Hermann
6dd74d04ac code/docs: Consistently use the "Gadgetbridge" spelling.
"Gadgetbridge" appears to be the common spelling as per most docs,
code comments, wiki, and so on. Thus avoid using "GadgetBridge".
2016-12-01 17:28:51 +01:00