Paul Colby edited this page Jan 24, 2016 · 11 revisions

Polar FlowSync

Polar FlowSync uses LGPL Qt libraries for (among other things) network communications. To get access to these communications, Bipolar provides its own replacement Qt5Network.dll which is a drop-in replacement for the one that ships with FlowSync. This drop-in replacement DLL extends the QNetworkAccessManager::post function to record POST data to files.

What Data / Where?

FlowSync POSTs to several URLs - the drop-in replacement DLL only records data for those containing the training-sessions string, so for example, login requests are not logged.

POST data is logged in an export directory, under the writable QStandardPaths::DataLocation location - typically something like C:\Uses\<user>\AppData\Local\Polar\PolarFlowSync\export. Each file is named the same as the POST URL path, but with unsafe characters (such as /) replaced with - instead. So, for example, a POST to a URL like: www.remotepolar.com/v2/users/1234567/training-sessions/23456789/exercises/34567890/autolaps will result in a file like: C:\Uses\<user>\AppData\Local\Polar\PolarFlowSync\export\v2-users-1234567-training-sessions-23456789-exercises-34567890-autolaps.

Each file contains the raw POST data - which in the case of Polar FlowSync, is binary Google Protocol Buffers data (see [Polar API V2](Polar API V2)).

Installation

  1. Locate the Polar FlowSync installation; eg C:\Program Files (x86)\Polar\Polar FlowSync\.
  2. Backup the Qt5Network.dll file in that directory; eg rename it to something like Qt5Network.dll.backup.
  3. Copy the new Qt5Network.dll file into that directory.
  4. Restart Polar FlowSync.

Or see the temporary install.cmd script for inspiration.

Removal

  1. Copy the backed-up DLL (from step #2 of the installation) back to Qt5Network.dll.
  2. Restart Polar FlowSync.

Qt Version(s)

FlowSync OSX Windows Notes
< 2.6.2 Qt 5.1.1 Qt 5.1.1
2.6.2 Qt 5.1.1 Qt 5.5.1 Yes, Polar moved FlowSync for Windows to Qt 5.5.x, but left the OSX version at 5.1.x for the FlowSync 2.6.2 release.
2.6.4 Qt 5.1.1 Unreleased

Polar WebSync

Polar WebSync also uses LGPL Qt libraries for network communications, though it uses Qt 4.6.x instead of Qt 5.1.x. The same hook process as used above will probably work for WebSync, but as WebSync has built-in support for exporting HRM/GPX files, its a lower priority.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.